mailing list of musl libc
 help / color / mirror / code / Atom feed
* [musl] Hexagon DSP support
@ 2020-04-15 13:19 sidneym
  2020-04-15 16:30 ` Rich Felker
  2020-04-15 18:55 ` Fangrui Song
  0 siblings, 2 replies; 43+ messages in thread
From: sidneym @ 2020-04-15 13:19 UTC (permalink / raw)
  To: musl

[-- Attachment #1: Type: text/plain, Size: 1444 bytes --]

Recently work has been done with clang/llvm/lld to extend support for
Qualcomm's Hexagon DSP to a Linux target.  At this point the publicly
available LLVM tools are able to build and run Hexagon programs via QEMU.
I've attached a patch that add the Hexagon bits to musl.  The optimized
routines have been purposely omitted to keep the size and complexity to a
minimum.

The changes are being mirrored here:
https://github.com/quic/musl/tree/hexagon
The QEMU mirror is here: https://github.com/quic/qemu
A description of the assembly language is here:
https://developer.qualcomm.com/download/hexagon/hexagon-v5x-programmers-refe
rence-manual.pdf?referrer=node/6116

The objective is to have enough freely available tools and libraries that
any user could develop code for the DSP.  The C-library is an important part
of that stack and this patch is intended to start a discussion of what would
need to happen in order for Hexagon to be added to the musl sources.

I've tested this using libc-test (git://repo.or.cz/libc-test) and 56 errors
are reported.  The support for Hexagon in QEMU is on-going and while some of
the errors (math) may be attributed to QEMU most also happen on hardware.  A
good chunk fail due to floating point exception status or precision.

Beyond the above testing a large number of packages have been built using
buildroot with our internal llvm tools.  No issues outside of tweaks to
avoid glibc assumptions were seen.

[-- Attachment #2: winmail.dat --]
[-- Type: application/ms-tnef, Size: 50077 bytes --]

^ permalink raw reply	[flat|nested] 43+ messages in thread

* Re: [musl] Hexagon DSP support
  2020-04-15 13:19 [musl] Hexagon DSP support sidneym
@ 2020-04-15 16:30 ` Rich Felker
  2020-04-15 17:50   ` sidneym
  2020-04-15 18:55 ` Fangrui Song
  1 sibling, 1 reply; 43+ messages in thread
From: Rich Felker @ 2020-04-15 16:30 UTC (permalink / raw)
  To: sidneym; +Cc: musl

On Wed, Apr 15, 2020 at 08:19:29AM -0500, sidneym@codeaurora.org wrote:
> Recently work has been done with clang/llvm/lld to extend support for
> Qualcomm's Hexagon DSP to a Linux target.  At this point the publicly
> available LLVM tools are able to build and run Hexagon programs via QEMU.
> I've attached a patch that add the Hexagon bits to musl.  The optimized
> routines have been purposely omitted to keep the size and complexity to a
> minimum.
> 
> The changes are being mirrored here:
> https://github.com/quic/musl/tree/hexagon
> The QEMU mirror is here: https://github.com/quic/qemu
> A description of the assembly language is here:
> https://developer.qualcomm.com/download/hexagon/hexagon-v5x-programmers-refe
> rence-manual.pdf?referrer=node/6116
> 
> The objective is to have enough freely available tools and libraries that
> any user could develop code for the DSP.  The C-library is an important part
> of that stack and this patch is intended to start a discussion of what would
> need to happen in order for Hexagon to be added to the musl sources.

Thanks for reaching out upstream and sharing this. I did a quick
glance over the port (mostly just arch/hexagon dir, not source dirs in
any detail) and what I've read so far looks good.

One question I have: alltypes.h.in defines _REDIR_TIME64. Is this
because there's an existing unofficial ABI in deployments that you
don't want to break? If so that's probably okay, but if not it's not
necessary or wanted for new 32-bit archs to define this; if it's not
defined, the unadorned symbol names will just be 64-bit versions, just
like on 64-bit archs.

> I've tested this using libc-test (git://repo.or.cz/libc-test) and 56 errors
> are reported.  The support for Hexagon in QEMU is on-going and while some of
> the errors (math) may be attributed to QEMU most also happen on hardware.  A
> good chunk fail due to floating point exception status or precision.

Can you send the output report to the list or post it somewhere
publicly accessible? I can probably give you a quick rundown on
whether any of the failures are unexpected (on qemu or real hardware)
and it will suggest which parts of the source I (and others in the
community) should focus on reviewing.

Rich

^ permalink raw reply	[flat|nested] 43+ messages in thread

* RE: [musl] Hexagon DSP support
  2020-04-15 16:30 ` Rich Felker
@ 2020-04-15 17:50   ` sidneym
  2020-04-15 18:06     ` Szabolcs Nagy
  0 siblings, 1 reply; 43+ messages in thread
From: sidneym @ 2020-04-15 17:50 UTC (permalink / raw)
  To: musl



> -----Original Message-----
> From: Rich Felker <dalias@libc.org>
> Sent: Wednesday, April 15, 2020 11:30 AM
> To: sidneym@codeaurora.org
> Cc: musl@lists.openwall.com
> Subject: Re: [musl] Hexagon DSP support
> 
> On Wed, Apr 15, 2020 at 08:19:29AM -0500, sidneym@codeaurora.org wrote:
> > Recently work has been done with clang/llvm/lld to extend support for
> > Qualcomm's Hexagon DSP to a Linux target.  At this point the publicly
> > available LLVM tools are able to build and run Hexagon programs via
QEMU.
> > I've attached a patch that add the Hexagon bits to musl.  The
> > optimized routines have been purposely omitted to keep the size and
> > complexity to a minimum.
> >
> > The changes are being mirrored here:
> > https://github.com/quic/musl/tree/hexagon
> > The QEMU mirror is here: https://github.com/quic/qemu A description of
> > the assembly language is here:
> > https://developer.qualcomm.com/download/hexagon/hexagon-v5x-
> programmer
> > s-refe
> > rence-manual.pdf?referrer=node/6116
> >
> > The objective is to have enough freely available tools and libraries
> > that any user could develop code for the DSP.  The C-library is an
> > important part of that stack and this patch is intended to start a
> > discussion of what would need to happen in order for Hexagon to be
> added to the musl sources.
> 
> Thanks for reaching out upstream and sharing this. I did a quick glance
over
> the port (mostly just arch/hexagon dir, not source dirs in any detail) and
what
> I've read so far looks good.
> 
> One question I have: alltypes.h.in defines _REDIR_TIME64. Is this because
> there's an existing unofficial ABI in deployments that you don't want to
> break? If so that's probably okay, but if not it's not necessary or wanted
for
> new 32-bit archs to define this; if it's not defined, the unadorned symbol
> names will just be 64-bit versions, just like on 64-bit archs.
> 
That was a copy/paste error and was responsible for a few libc-testsuite
failures: 
   ld.lld: error: undefined symbol: __dlsym_time64
I will correct that and update the source.


> > I've tested this using libc-test (git://repo.or.cz/libc-test) and 56
> > errors are reported.  The support for Hexagon in QEMU is on-going and
> > while some of the errors (math) may be attributed to QEMU most also
> > happen on hardware.  A good chunk fail due to floating point exception
> status or precision.
> 
> Can you send the output report to the list or post it somewhere publicly
> accessible? I can probably give you a quick rundown on whether any of the
> failures are unexpected (on qemu or real hardware) and it will suggest
which
> parts of the source I (and others in the
> community) should focus on reviewing.

This is the list, the context associated with some of the failures can be
bulky so I hope the summary is ok.  Let me know which failures are most
critical and I will try to fix those first.  51 failures after removing the
TIME64 define

FAIL src/api/main.exe [status 1]
FAIL src/functional/dlopen.exe [status 1]
FAIL src/functional/ipc_msg-static.exe [status 1]
FAIL src/functional/ipc_msg.exe [status 1]
FAIL src/functional/ipc_sem-static.exe [status 1]
FAIL src/functional/ipc_sem.exe [status 1]
FAIL src/functional/ipc_shm-static.exe [status 1]
FAIL src/functional/ipc_shm.exe [status 1]
FAIL src/functional/pthread_mutex-static.exe [status 1]
FAIL src/functional/pthread_mutex.exe [status 1]
FAIL src/functional/pthread_mutex_pi-static.exe [timed out]
FAIL src/functional/pthread_mutex_pi.exe [signal Segmentation fault]
FAIL src/functional/pthread_robust-static.exe [timed out]
FAIL src/functional/pthread_robust.exe [timed out]
FAIL src/functional/sem_init-static.exe [status 1]
FAIL src/functional/sem_init.exe [status 1]
FAIL src/functional/strptime-static.exe [status 1]
FAIL src/functional/strptime.exe [status 1]
FAIL src/functional/utime-static.exe [status 1]
FAIL src/functional/utime.exe [status 1]
FAIL src/math/acoshl.exe [status 1]
FAIL src/math/asinhl.exe [status 1]
FAIL src/math/erfcl.exe [status 1]
FAIL src/math/exp2l.exe [status 1]
FAIL src/math/fmal.exe [status 1]
FAIL src/math/ilogb.exe [status 1]
FAIL src/math/ilogbf.exe [status 1]
FAIL src/math/ilogbl.exe [status 1]
FAIL src/math/lgammal.exe [status 1]
FAIL src/math/powf.exe [status 1]
FAIL src/math/powl.exe [status 1]
FAIL src/math/sqrt.exe [status 1]
FAIL src/math/sqrtf.exe [status 1]
FAIL src/math/sqrtl.exe [status 1]
FAIL src/math/tgamma.exe [status 1]
FAIL src/math/tgammaf.exe [status 1]
FAIL src/math/tgammal.exe [status 1]
FAIL src/math/y0.exe [status 1]
FAIL src/math/y0f.exe [status 1]
FAIL src/math/y1.exe [status 1]
FAIL src/math/y1f.exe [status 1]
FAIL src/math/yn.exe [status 1]
FAIL src/math/ynf.exe [status 1]
FAIL src/regression/malloc-brk-fail-static.exe [status 1]
FAIL src/regression/malloc-brk-fail.exe [timed out]
FAIL src/regression/pthread-robust-detach-static.exe [status 1]
FAIL src/regression/pthread-robust-detach.exe [status 1]
FAIL src/regression/pthread_cond-smasher-static.exe [status 1]
FAIL src/regression/pthread_cond-smasher.exe [status 1]
FAIL src/regression/pthread_cond_wait-cancel_ignored-static.exe [status 1]
FAIL src/regression/pthread_once-deadlock-static.exe [status 1]


> 
> Rich

^ permalink raw reply	[flat|nested] 43+ messages in thread

* Re: [musl] Hexagon DSP support
  2020-04-15 17:50   ` sidneym
@ 2020-04-15 18:06     ` Szabolcs Nagy
  2020-04-15 18:22       ` sidneym
  2020-04-15 18:26       ` Rich Felker
  0 siblings, 2 replies; 43+ messages in thread
From: Szabolcs Nagy @ 2020-04-15 18:06 UTC (permalink / raw)
  To: sidneym; +Cc: musl

* sidneym@codeaurora.org <sidneym@codeaurora.org> [2020-04-15 12:50:21 -0500]:
> > > Recently work has been done with clang/llvm/lld to extend support for
> > > Qualcomm's Hexagon DSP to a Linux target.  At this point the publicly
> > > available LLVM tools are able to build and run Hexagon programs via
> QEMU.
...
> This is the list, the context associated with some of the failures can be
> bulky so I hope the summary is ok.  Let me know which failures are most
> critical and I will try to fix those first.  51 failures after removing the
> TIME64 define

is this qemu system emulation?

i'd look at the pthread failures first.
sqrt/sqrtf should work too (you may want to
implement them if there is a single instruction)
other math failures are not target specific.
the ipc failures may be relevant, or it
may be a time issue (if timestamps fail).

> 
> FAIL src/api/main.exe [status 1]
> FAIL src/functional/dlopen.exe [status 1]
> FAIL src/functional/ipc_msg-static.exe [status 1]
> FAIL src/functional/ipc_msg.exe [status 1]
> FAIL src/functional/ipc_sem-static.exe [status 1]
> FAIL src/functional/ipc_sem.exe [status 1]
> FAIL src/functional/ipc_shm-static.exe [status 1]
> FAIL src/functional/ipc_shm.exe [status 1]
> FAIL src/functional/pthread_mutex-static.exe [status 1]
> FAIL src/functional/pthread_mutex.exe [status 1]
> FAIL src/functional/pthread_mutex_pi-static.exe [timed out]
> FAIL src/functional/pthread_mutex_pi.exe [signal Segmentation fault]
> FAIL src/functional/pthread_robust-static.exe [timed out]
> FAIL src/functional/pthread_robust.exe [timed out]
> FAIL src/functional/sem_init-static.exe [status 1]
> FAIL src/functional/sem_init.exe [status 1]
> FAIL src/functional/strptime-static.exe [status 1]
> FAIL src/functional/strptime.exe [status 1]
> FAIL src/functional/utime-static.exe [status 1]
> FAIL src/functional/utime.exe [status 1]
> FAIL src/math/acoshl.exe [status 1]
> FAIL src/math/asinhl.exe [status 1]
> FAIL src/math/erfcl.exe [status 1]
> FAIL src/math/exp2l.exe [status 1]
> FAIL src/math/fmal.exe [status 1]
> FAIL src/math/ilogb.exe [status 1]
> FAIL src/math/ilogbf.exe [status 1]
> FAIL src/math/ilogbl.exe [status 1]
> FAIL src/math/lgammal.exe [status 1]
> FAIL src/math/powf.exe [status 1]
> FAIL src/math/powl.exe [status 1]
> FAIL src/math/sqrt.exe [status 1]
> FAIL src/math/sqrtf.exe [status 1]
> FAIL src/math/sqrtl.exe [status 1]
> FAIL src/math/tgamma.exe [status 1]
> FAIL src/math/tgammaf.exe [status 1]
> FAIL src/math/tgammal.exe [status 1]
> FAIL src/math/y0.exe [status 1]
> FAIL src/math/y0f.exe [status 1]
> FAIL src/math/y1.exe [status 1]
> FAIL src/math/y1f.exe [status 1]
> FAIL src/math/yn.exe [status 1]
> FAIL src/math/ynf.exe [status 1]
> FAIL src/regression/malloc-brk-fail-static.exe [status 1]
> FAIL src/regression/malloc-brk-fail.exe [timed out]
> FAIL src/regression/pthread-robust-detach-static.exe [status 1]
> FAIL src/regression/pthread-robust-detach.exe [status 1]
> FAIL src/regression/pthread_cond-smasher-static.exe [status 1]
> FAIL src/regression/pthread_cond-smasher.exe [status 1]
> FAIL src/regression/pthread_cond_wait-cancel_ignored-static.exe [status 1]
> FAIL src/regression/pthread_once-deadlock-static.exe [status 1]
> 
> 
> > 
> > Rich

^ permalink raw reply	[flat|nested] 43+ messages in thread

* RE: [musl] Hexagon DSP support
  2020-04-15 18:06     ` Szabolcs Nagy
@ 2020-04-15 18:22       ` sidneym
  2020-04-16  9:36         ` Szabolcs Nagy
  2020-04-15 18:26       ` Rich Felker
  1 sibling, 1 reply; 43+ messages in thread
From: sidneym @ 2020-04-15 18:22 UTC (permalink / raw)
  To: musl



> -----Original Message-----
> From: Szabolcs Nagy <nsz@port70.net>
> Sent: Wednesday, April 15, 2020 1:06 PM
> To: sidneym@codeaurora.org
> Cc: musl@lists.openwall.com
> Subject: Re: [musl] Hexagon DSP support
> 
> * sidneym@codeaurora.org <sidneym@codeaurora.org> [2020-04-15
> 12:50:21 -0500]:
> > > > Recently work has been done with clang/llvm/lld to extend support
> > > > for Qualcomm's Hexagon DSP to a Linux target.  At this point the
> > > > publicly available LLVM tools are able to build and run Hexagon
> > > > programs via
> > QEMU.
> ...
> > This is the list, the context associated with some of the failures can
> > be bulky so I hope the summary is ok.  Let me know which failures are
> > most critical and I will try to fix those first.  51 failures after
> > removing the
> > TIME64 define
> 
> is this qemu system emulation?
No it isn't however that is being worked on.

> 
> i'd look at the pthread failures first.
> sqrt/sqrtf should work too (you may want to implement them if there is a
> single instruction) other math failures are not target specific.

In fact that does go away if I used the hardware accelerated routine that is
part of compiler-rt.builtins (__hexagon_sqrt)   Creating an explicit
reference to compiler-rt-builtins vs just copying the assembly, which is
preferred?


> the ipc failures may be relevant, or it
> may be a time issue (if timestamps fail).
> 
> >
> > FAIL src/api/main.exe [status 1]
> > FAIL src/functional/dlopen.exe [status 1] FAIL
> > src/functional/ipc_msg-static.exe [status 1] FAIL
> > src/functional/ipc_msg.exe [status 1] FAIL
> > src/functional/ipc_sem-static.exe [status 1] FAIL
> > src/functional/ipc_sem.exe [status 1] FAIL
> > src/functional/ipc_shm-static.exe [status 1] FAIL
> > src/functional/ipc_shm.exe [status 1] FAIL
> > src/functional/pthread_mutex-static.exe [status 1] FAIL
> > src/functional/pthread_mutex.exe [status 1] FAIL
> > src/functional/pthread_mutex_pi-static.exe [timed out] FAIL
> > src/functional/pthread_mutex_pi.exe [signal Segmentation fault] FAIL
> > src/functional/pthread_robust-static.exe [timed out] FAIL
> > src/functional/pthread_robust.exe [timed out] FAIL
> > src/functional/sem_init-static.exe [status 1] FAIL
> > src/functional/sem_init.exe [status 1] FAIL
> > src/functional/strptime-static.exe [status 1] FAIL
> > src/functional/strptime.exe [status 1] FAIL
> > src/functional/utime-static.exe [status 1] FAIL
> > src/functional/utime.exe [status 1] FAIL src/math/acoshl.exe [status
> > 1] FAIL src/math/asinhl.exe [status 1] FAIL src/math/erfcl.exe [status
> > 1] FAIL src/math/exp2l.exe [status 1] FAIL src/math/fmal.exe [status
> > 1] FAIL src/math/ilogb.exe [status 1] FAIL src/math/ilogbf.exe [status
> > 1] FAIL src/math/ilogbl.exe [status 1] FAIL src/math/lgammal.exe
> > [status 1] FAIL src/math/powf.exe [status 1] FAIL src/math/powl.exe
> > [status 1] FAIL src/math/sqrt.exe [status 1] FAIL src/math/sqrtf.exe
> > [status 1] FAIL src/math/sqrtl.exe [status 1] FAIL src/math/tgamma.exe
> > [status 1] FAIL src/math/tgammaf.exe [status 1] FAIL
> > src/math/tgammal.exe [status 1] FAIL src/math/y0.exe [status 1] FAIL
> > src/math/y0f.exe [status 1] FAIL src/math/y1.exe [status 1] FAIL
> > src/math/y1f.exe [status 1] FAIL src/math/yn.exe [status 1] FAIL
> > src/math/ynf.exe [status 1] FAIL
> > src/regression/malloc-brk-fail-static.exe [status 1] FAIL
> > src/regression/malloc-brk-fail.exe [timed out] FAIL
> > src/regression/pthread-robust-detach-static.exe [status 1] FAIL
> > src/regression/pthread-robust-detach.exe [status 1] FAIL
> > src/regression/pthread_cond-smasher-static.exe [status 1] FAIL
> > src/regression/pthread_cond-smasher.exe [status 1] FAIL
> > src/regression/pthread_cond_wait-cancel_ignored-static.exe [status 1]
> > FAIL src/regression/pthread_once-deadlock-static.exe [status 1]
> >
> >
> > >
> > > Rich

^ permalink raw reply	[flat|nested] 43+ messages in thread

* Re: [musl] Hexagon DSP support
  2020-04-15 18:06     ` Szabolcs Nagy
  2020-04-15 18:22       ` sidneym
@ 2020-04-15 18:26       ` Rich Felker
  2020-04-15 19:12         ` sidneym
  1 sibling, 1 reply; 43+ messages in thread
From: Rich Felker @ 2020-04-15 18:26 UTC (permalink / raw)
  To: sidneym, musl

On Wed, Apr 15, 2020 at 08:06:20PM +0200, Szabolcs Nagy wrote:
> * sidneym@codeaurora.org <sidneym@codeaurora.org> [2020-04-15 12:50:21 -0500]:
> > > > Recently work has been done with clang/llvm/lld to extend support for
> > > > Qualcomm's Hexagon DSP to a Linux target.  At this point the publicly
> > > > available LLVM tools are able to build and run Hexagon programs via
> > QEMU.
> ....
> > This is the list, the context associated with some of the failures can be
> > bulky so I hope the summary is ok.  Let me know which failures are most
> > critical and I will try to fix those first.  51 failures after removing the
> > TIME64 define
> 
> is this qemu system emulation?
> 
> i'd look at the pthread failures first.

If qemu-user these would possibly be expected failures. If qemu-system
or native they almost surely indicate bugs in the atomics.

> sqrt/sqrtf should work too (you may want to
> implement them if there is a single instruction)
> other math failures are not target specific.
> the ipc failures may be relevant, or it
> may be a time issue (if timestamps fail).

arch/hexagon/bits is missing sem.h etc. so it's using the arch/generic
definitions, which only work for archs that are 64-bit or where the
only existing kernel interface has 64-bit time_t (i.e. riscv32). For
anything else they must be defined with the proper hi/lo time members,
and bits/ipcstat.h must define IPC_STAT as 0x102 to activate the
translations.

> > FAIL src/api/main.exe [status 1]
> > FAIL src/functional/dlopen.exe [status 1]
> > FAIL src/functional/ipc_msg-static.exe [status 1]
> > FAIL src/functional/ipc_msg.exe [status 1]
> > FAIL src/functional/ipc_sem-static.exe [status 1]
> > FAIL src/functional/ipc_sem.exe [status 1]
> > FAIL src/functional/ipc_shm-static.exe [status 1]
> > FAIL src/functional/ipc_shm.exe [status 1]
> > FAIL src/functional/pthread_mutex-static.exe [status 1]
> > FAIL src/functional/pthread_mutex.exe [status 1]
> > FAIL src/functional/pthread_mutex_pi-static.exe [timed out]
> > FAIL src/functional/pthread_mutex_pi.exe [signal Segmentation fault]
> > FAIL src/functional/pthread_robust-static.exe [timed out]
> > FAIL src/functional/pthread_robust.exe [timed out]
> > FAIL src/functional/sem_init-static.exe [status 1]
> > FAIL src/functional/sem_init.exe [status 1]
> > FAIL src/functional/strptime-static.exe [status 1]
> > FAIL src/functional/strptime.exe [status 1]
> > FAIL src/functional/utime-static.exe [status 1]
> > FAIL src/functional/utime.exe [status 1]
> > FAIL src/math/acoshl.exe [status 1]
> > FAIL src/math/asinhl.exe [status 1]
> > FAIL src/math/erfcl.exe [status 1]
> > FAIL src/math/exp2l.exe [status 1]
> > FAIL src/math/fmal.exe [status 1]
> > FAIL src/math/ilogb.exe [status 1]
> > FAIL src/math/ilogbf.exe [status 1]
> > FAIL src/math/ilogbl.exe [status 1]
> > FAIL src/math/lgammal.exe [status 1]
> > FAIL src/math/powf.exe [status 1]
> > FAIL src/math/powl.exe [status 1]
> > FAIL src/math/sqrt.exe [status 1]
> > FAIL src/math/sqrtf.exe [status 1]
> > FAIL src/math/sqrtl.exe [status 1]
> > FAIL src/math/tgamma.exe [status 1]
> > FAIL src/math/tgammaf.exe [status 1]
> > FAIL src/math/tgammal.exe [status 1]
> > FAIL src/math/y0.exe [status 1]
> > FAIL src/math/y0f.exe [status 1]
> > FAIL src/math/y1.exe [status 1]
> > FAIL src/math/y1f.exe [status 1]
> > FAIL src/math/yn.exe [status 1]
> > FAIL src/math/ynf.exe [status 1]
> > FAIL src/regression/malloc-brk-fail-static.exe [status 1]
> > FAIL src/regression/malloc-brk-fail.exe [timed out]
> > FAIL src/regression/pthread-robust-detach-static.exe [status 1]
> > FAIL src/regression/pthread-robust-detach.exe [status 1]
> > FAIL src/regression/pthread_cond-smasher-static.exe [status 1]
> > FAIL src/regression/pthread_cond-smasher.exe [status 1]
> > FAIL src/regression/pthread_cond_wait-cancel_ignored-static.exe [status 1]
> > FAIL src/regression/pthread_once-deadlock-static.exe [status 1]

Could you send the whole src/REPORT file which contains not just the
FAIL lines but the specific test failures that caused them? And label
whether it's for qemu-user, qemu-system, or real metal.

Rich

^ permalink raw reply	[flat|nested] 43+ messages in thread

* Re: [musl] Hexagon DSP support
  2020-04-15 13:19 [musl] Hexagon DSP support sidneym
  2020-04-15 16:30 ` Rich Felker
@ 2020-04-15 18:55 ` Fangrui Song
  1 sibling, 0 replies; 43+ messages in thread
From: Fangrui Song @ 2020-04-15 18:55 UTC (permalink / raw)
  To: sidneym; +Cc: musl

On 2020-04-15, sidneym@codeaurora.org wrote:
>Recently work has been done with clang/llvm/lld to extend support for
>Qualcomm's Hexagon DSP to a Linux target.  At this point the publicly
>available LLVM tools are able to build and run Hexagon programs via QEMU.
>I've attached a patch that add the Hexagon bits to musl.  The optimized
>routines have been purposely omitted to keep the size and complexity to a
>minimum.
>
>The changes are being mirrored here:
>https://github.com/quic/musl/tree/hexagon
>The QEMU mirror is here: https://github.com/quic/qemu
>A description of the assembly language is here:
>https://developer.qualcomm.com/download/hexagon/hexagon-v5x-programmers-refe
>rence-manual.pdf?referrer=node/6116
>
>The objective is to have enough freely available tools and libraries that
>any user could develop code for the DSP.  The C-library is an important part
>of that stack and this patch is intended to start a discussion of what would
>need to happen in order for Hexagon to be added to the musl sources.
>
>I've tested this using libc-test (git://repo.or.cz/libc-test) and 56 errors
>are reported.  The support for Hexagon in QEMU is on-going and while some of
>the errors (math) may be attributed to QEMU most also happen on hardware.  A
>good chunk fail due to floating point exception status or precision.
>
>Beyond the above testing a large number of packages have been built using
>buildroot with our internal llvm tools.  No issues outside of tweaks to
>avoid glibc assumptions were seen.

WoW

Any chance to move the psABI
(http://lists.llvm.org/pipermail/llvm-dev/attachments/20190916/21516a52/attachment-0001.pdf),
as mentioned by https://reviews.llvm.org/D77021#1950279 to a more discoverable/official place :) ?

^ permalink raw reply	[flat|nested] 43+ messages in thread

* RE: [musl] Hexagon DSP support
  2020-04-15 18:26       ` Rich Felker
@ 2020-04-15 19:12         ` sidneym
  2020-04-15 19:29           ` 'Rich Felker'
  0 siblings, 1 reply; 43+ messages in thread
From: sidneym @ 2020-04-15 19:12 UTC (permalink / raw)
  To: 'Rich Felker', musl

[-- Attachment #1: Type: text/plain, Size: 4548 bytes --]



> -----Original Message-----
> From: Rich Felker <dalias@libc.org>
> Sent: Wednesday, April 15, 2020 1:26 PM
> To: sidneym@codeaurora.org; musl@lists.openwall.com
> Subject: Re: [musl] Hexagon DSP support
> 
> On Wed, Apr 15, 2020 at 08:06:20PM +0200, Szabolcs Nagy wrote:
> > * sidneym@codeaurora.org <sidneym@codeaurora.org> [2020-04-15
> 12:50:21 -0500]:
> > > > > Recently work has been done with clang/llvm/lld to extend
> > > > > support for Qualcomm's Hexagon DSP to a Linux target.  At this
> > > > > point the publicly available LLVM tools are able to build and
> > > > > run Hexagon programs via
> > > QEMU.
> > ....
> > > This is the list, the context associated with some of the failures
> > > can be bulky so I hope the summary is ok.  Let me know which
> > > failures are most critical and I will try to fix those first.  51
> > > failures after removing the
> > > TIME64 define
> >
> > is this qemu system emulation?
> >
> > i'd look at the pthread failures first.
> 
> If qemu-user these would possibly be expected failures. If qemu-system or
> native they almost surely indicate bugs in the atomics.
> 
> > sqrt/sqrtf should work too (you may want to implement them if there is
> > a single instruction) other math failures are not target specific.
> > the ipc failures may be relevant, or it may be a time issue (if
> > timestamps fail).
> 
> arch/hexagon/bits is missing sem.h etc. so it's using the arch/generic
> definitions, which only work for archs that are 64-bit or where the only
> existing kernel interface has 64-bit time_t (i.e. riscv32). For anything
else
> they must be defined with the proper hi/lo time members, and
bits/ipcstat.h
> must define IPC_STAT as 0x102 to activate the translations.

Thanks I will take a look at these headers and the test issues.

> 
> > > FAIL src/api/main.exe [status 1]
> > > FAIL src/functional/dlopen.exe [status 1] FAIL
> > > src/functional/ipc_msg-static.exe [status 1] FAIL
> > > src/functional/ipc_msg.exe [status 1] FAIL
> > > src/functional/ipc_sem-static.exe [status 1] FAIL
> > > src/functional/ipc_sem.exe [status 1] FAIL
> > > src/functional/ipc_shm-static.exe [status 1] FAIL
> > > src/functional/ipc_shm.exe [status 1] FAIL
> > > src/functional/pthread_mutex-static.exe [status 1] FAIL
> > > src/functional/pthread_mutex.exe [status 1] FAIL
> > > src/functional/pthread_mutex_pi-static.exe [timed out] FAIL
> > > src/functional/pthread_mutex_pi.exe [signal Segmentation fault] FAIL
> > > src/functional/pthread_robust-static.exe [timed out] FAIL
> > > src/functional/pthread_robust.exe [timed out] FAIL
> > > src/functional/sem_init-static.exe [status 1] FAIL
> > > src/functional/sem_init.exe [status 1] FAIL
> > > src/functional/strptime-static.exe [status 1] FAIL
> > > src/functional/strptime.exe [status 1] FAIL
> > > src/functional/utime-static.exe [status 1] FAIL
> > > src/functional/utime.exe [status 1] FAIL src/math/acoshl.exe [status
> > > 1] FAIL src/math/asinhl.exe [status 1] FAIL src/math/erfcl.exe
> > > [status 1] FAIL src/math/exp2l.exe [status 1] FAIL src/math/fmal.exe
> > > [status 1] FAIL src/math/ilogb.exe [status 1] FAIL
> > > src/math/ilogbf.exe [status 1] FAIL src/math/ilogbl.exe [status 1]
> > > FAIL src/math/lgammal.exe [status 1] FAIL src/math/powf.exe [status
> > > 1] FAIL src/math/powl.exe [status 1] FAIL src/math/sqrt.exe [status
> > > 1] FAIL src/math/sqrtf.exe [status 1] FAIL src/math/sqrtl.exe
> > > [status 1] FAIL src/math/tgamma.exe [status 1] FAIL
> > > src/math/tgammaf.exe [status 1] FAIL src/math/tgammal.exe [status 1]
> > > FAIL src/math/y0.exe [status 1] FAIL src/math/y0f.exe [status 1]
> > > FAIL src/math/y1.exe [status 1] FAIL src/math/y1f.exe [status 1]
> > > FAIL src/math/yn.exe [status 1] FAIL src/math/ynf.exe [status 1]
> > > FAIL src/regression/malloc-brk-fail-static.exe [status 1] FAIL
> > > src/regression/malloc-brk-fail.exe [timed out] FAIL
> > > src/regression/pthread-robust-detach-static.exe [status 1] FAIL
> > > src/regression/pthread-robust-detach.exe [status 1] FAIL
> > > src/regression/pthread_cond-smasher-static.exe [status 1] FAIL
> > > src/regression/pthread_cond-smasher.exe [status 1] FAIL
> > > src/regression/pthread_cond_wait-cancel_ignored-static.exe [status
> > > 1] FAIL src/regression/pthread_once-deadlock-static.exe [status 1]
> 
> Could you send the whole src/REPORT file which contains not just the FAIL
> lines but the specific test failures that caused them? And label whether
it's
> for qemu-user, qemu-system, or real metal.

OK I attached the full report.


> 
> Rich

[-- Attachment #2: REPORT-qemu-user --]
[-- Type: application/octet-stream, Size: 256176 bytes --]

src/api/ftw.c:44:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISBLK(0))
^~~~~~~~~~~~~
src/api/ftw.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/ftw.c:45:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISCHR(0))
^~~~~~~~~~~~~
src/api/ftw.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/ftw.c:46:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISDIR(0))
^~~~~~~~~~~~~
src/api/ftw.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/ftw.c:47:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISFIFO(0))
^~~~~~~~~~~~~~
src/api/ftw.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/ftw.c:48:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISREG(0))
^~~~~~~~~~~~~
src/api/ftw.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/ftw.c:49:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISLNK(0))
^~~~~~~~~~~~~
src/api/ftw.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/ftw.c:50:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISSOCK(0))
^~~~~~~~~~~~~~
src/api/ftw.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
7 errors generated.
src/api/iso646.c:8:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(0 not_eq 1)
^~~~~~~~~~~~~
src/api/iso646.c:2:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/iso646.c:9:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(0 and 1)
^~~~~~~~~~
src/api/iso646.c:2:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/iso646.c:10:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(0 or 1)
^~~~~~~~~
src/api/iso646.c:2:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/iso646.c:14:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(not 0)
^~~~~~~~
src/api/iso646.c:2:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
4 errors generated.
FAIL src/api/main.exe [status 1]
clang-11: error: no such file or directory: 'src/api/ftw.o'
clang-11: error: no such file or directory: 'src/api/iso646.o'
clang-11: error: no such file or directory: 'src/api/stdlib.o'
clang-11: error: no such file or directory: 'src/api/sys_stat.o'
clang-11: error: no such file or directory: 'src/api/sys_wait.o'
clang-11: error: no such file or directory: 'src/api/unistd.o'
src/api/stdlib.c:20:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(WIFEXITED(0))
^~~~~~~~~~~~~~~
src/api/stdlib.c:4:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/stdlib.c:21:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(WIFSIGNALED(0))
^~~~~~~~~~~~~~~~~
src/api/stdlib.c:4:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/stdlib.c:22:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(WIFSTOPPED(0))
^~~~~~~~~~~~~~~~
src/api/stdlib.c:4:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
3 errors generated.
src/api/sys_stat.c:68:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISBLK(0))
^~~~~~~~~~~~~
src/api/sys_stat.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_stat.c:69:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISCHR(0))
^~~~~~~~~~~~~
src/api/sys_stat.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_stat.c:70:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISDIR(0))
^~~~~~~~~~~~~
src/api/sys_stat.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_stat.c:71:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISFIFO(0))
^~~~~~~~~~~~~~
src/api/sys_stat.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_stat.c:72:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISREG(0))
^~~~~~~~~~~~~
src/api/sys_stat.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_stat.c:73:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISLNK(0))
^~~~~~~~~~~~~
src/api/sys_stat.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_stat.c:74:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISSOCK(0))
^~~~~~~~~~~~~~
src/api/sys_stat.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
7 errors generated.
src/api/sys_wait.c:11:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(WIFEXITED(0))
^~~~~~~~~~~~~~~
src/api/sys_wait.c:4:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_wait.c:12:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(WIFSIGNALED(0))
^~~~~~~~~~~~~~~~~
src/api/sys_wait.c:4:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_wait.c:13:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(WIFSTOPPED(0))
^~~~~~~~~~~~~~~~
src/api/sys_wait.c:4:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_wait.c:20:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(WIFCONTINUED(0))
^~~~~~~~~~~~~~~~~~
src/api/sys_wait.c:4:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
4 errors generated.
src/api/unistd.c:87:3: error: use of undeclared identifier '_CS_POSIX_V7_THREADS_CFLAGS'
C(_CS_POSIX_V7_THREADS_CFLAGS)
  ^
src/api/unistd.c:88:3: error: use of undeclared identifier '_CS_POSIX_V7_THREADS_LDFLAGS'
C(_CS_POSIX_V7_THREADS_LDFLAGS)
  ^
src/api/unistd.c:117:3: error: use of undeclared identifier '_PC_TIMESTAMP_RESOLUTION'
C(_PC_TIMESTAMP_RESOLUTION)
  ^
src/api/unistd.c:238:3: error: use of undeclared identifier '_SC_XOPEN_UUCP'
C(_SC_XOPEN_UUCP)
  ^
src/api/unistd.c:87:3: error: use of undeclared identifier '_CS_POSIX_V7_THREADS_CFLAGS'
C(_CS_POSIX_V7_THREADS_CFLAGS)
  ^
src/api/unistd.c:88:3: error: use of undeclared identifier '_CS_POSIX_V7_THREADS_LDFLAGS'
C(_CS_POSIX_V7_THREADS_LDFLAGS)
  ^
src/api/unistd.c:117:3: error: use of undeclared identifier '_PC_TIMESTAMP_RESOLUTION'
C(_PC_TIMESTAMP_RESOLUTION)
  ^
src/api/unistd.c:238:3: error: use of undeclared identifier '_SC_XOPEN_UUCP'
C(_SC_XOPEN_UUCP)
  ^
8 errors generated.
src/functional/dlopen.c:39: dlsym main failed: Symbol not found: main
FAIL src/functional/dlopen.exe [status 1]
clang-11: warning: argument unused during compilation: '-rdynamic' [-Wunused-command-line-argument]
src/functional/ipc_msg.c:62: qid_ds.msg_lspid == 0 failed: got 100, want 0
src/functional/ipc_msg.c:64: (long long)qid_ds.msg_stime == 0 failed: got 6815993655711498240, want 0
src/functional/ipc_msg.c:67: qid_ds.msg_ctime >= t failed: got 70368744177664, want >= 154502684032321054
src/functional/ipc_msg.c:71: qid_ds.msg_qbytes > 0 failed: got 0, want > 0
src/functional/ipc_msg.c:76: qid_ds.msg_qnum == 1 failed: got 0, want 1
src/functional/ipc_msg.c:77: qid_ds.msg_lspid == getpid() failed: got 100, want 185819
src/functional/ipc_msg.c:81: msg_stime is 6815993655711498240 want <= 154502684032321059
src/functional/ipc_msg.c:128: child exit status: 256
FAIL src/functional/ipc_msg-static.exe [status 1]
src/functional/ipc_msg.c:62: qid_ds.msg_lspid == 0 failed: got -2286360, want 0
src/functional/ipc_msg.c:64: (long long)qid_ds.msg_stime == 0 failed: got 6815993651416530944, want 0
src/functional/ipc_msg.c:67: qid_ds.msg_ctime >= t failed: got 70368744177664, want >= 3838565913592284701
src/functional/ipc_msg.c:76: qid_ds.msg_qnum == 1 failed: got 0, want 1
src/functional/ipc_msg.c:77: qid_ds.msg_lspid == getpid() failed: got -2286360, want 185787
src/functional/ipc_msg.c:81: msg_stime is 6815993651416530944 want <= 3838565913592284706
src/functional/ipc_msg.c:128: child exit status: 256
FAIL src/functional/ipc_msg.exe [status 1]
src/functional/ipc_sem.c:64: semid_ds.sem_nsems == 1 failed: got 4177, want 1
src/functional/ipc_sem.c:65: (long long)semid_ds.sem_otime == 0 failed: got 4294967296, want 0
src/functional/ipc_sem.c:67: semid_ds.sem_ctime >= t failed: got 299415055106048, want >= 1585293604729341470
src/functional/ipc_sem.c:121: child exit status: 256
FAIL src/functional/ipc_sem-static.exe [status 1]
src/functional/ipc_sem.c:64: semid_ds.sem_nsems == 1 failed: got 0, want 1
src/functional/ipc_sem.c:65: (long long)semid_ds.sem_otime == 0 failed: got 4294967296, want 0
src/functional/ipc_sem.c:67: semid_ds.sem_ctime >= t failed: got 0, want >= 1019482133642036766
src/functional/ipc_sem.c:121: child exit status: 256
FAIL src/functional/ipc_sem.exe [status 1]
src/functional/ipc_shm.c:58: shmid_ds.shm_segsz == 100 failed: got 0, want 100
src/functional/ipc_shm.c:59: shmid_ds.shm_lpid == 0 failed: got 100, want 0
src/functional/ipc_shm.c:60: shmid_ds.shm_cpid == getpid() failed: got 0, want 185953
src/functional/ipc_shm.c:62: (long long)shmid_ds.shm_atime == 0 failed: got 798663640565278, want 0
src/functional/ipc_shm.c:65: shmid_ds.shm_ctime >= t failed: got 200, want >= 3137520447933335070
src/functional/ipc_shm.c:73: (int)shmid_ds.shm_nattch == 1 failed: got 0, want 1
src/functional/ipc_shm.c:74: shmid_ds.shm_lpid == getpid() failed: got 100, want 185953
src/functional/ipc_shm.c:76: shm_atime is 798663640565278 want >= 3137520447933335070
src/functional/ipc_shm.c:118: child exit status: 256
FAIL src/functional/ipc_shm-static.exe [status 1]
src/functional/ipc_shm.c:58: shmid_ds.shm_segsz == 100 failed: got 0, want 100
src/functional/ipc_shm.c:59: shmid_ds.shm_lpid == 0 failed: got -2286360, want 0
src/functional/ipc_shm.c:60: shmid_ds.shm_cpid == getpid() failed: got 7, want 185921
src/functional/ipc_shm.c:62: (long long)shmid_ds.shm_atime == 0 failed: got 798526201611806, want 0
src/functional/ipc_shm.c:65: shmid_ds.shm_ctime >= t failed: got 0, want >= 2524255231812257310
src/functional/ipc_shm.c:73: (int)shmid_ds.shm_nattch == 1 failed: got 0, want 1
src/functional/ipc_shm.c:74: shmid_ds.shm_lpid == getpid() failed: got -2286360, want 185921
src/functional/ipc_shm.c:76: shm_atime is 798526201611806 want >= 2524255231812257310
src/functional/ipc_shm.c:118: child exit status: 256
FAIL src/functional/ipc_shm.exe [status 1]
src/functional/pthread_mutex.c:145: PTHREAD_MUTEX_ERRORCHECK relock did not return EDEADLK, got deadlock
src/functional/pthread_mutex.c:148: PTHREAD_MUTEX_RECURSIVE relock did not succed, got deadlock
FAIL src/functional/pthread_mutex-static.exe [status 1]
src/functional/pthread_mutex.c:145: PTHREAD_MUTEX_ERRORCHECK relock did not return EDEADLK, got 
src/functional/pthread_mutex.c:148: PTHREAD_MUTEX_RECURSIVE relock did not succed, got deadlock
FAIL src/functional/pthread_mutex.exe [status 1]
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:148: PTHREAD_MUTEX_ERRORCHECK relock did not return EDEADLK, got deadlock
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
FAIL src/functional/pthread_mutex_pi-static.exe [timed out]
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:148: PTHREAD_MUTEX_ERRORCHECK relock did not return EDEADLK, got deadlock
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:151: PTHREAD_MUTEX_RECURSIVE relock did not succed, got deadlock
src/functional/pthread_mutex_pi.c:87: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:24: pthread_mutex_unlock(a[0]) failed: Operation not permitted
FAIL src/functional/pthread_mutex_pi.exe [signal Segmentation fault]
src/functional/pthread_robust.c:39: pthread_mutexattr_setrobust(&mtx_a, PTHREAD_MUTEX_ROBUST) failed: (pshared==0, pi==0) Function not implemented (setting robust attribute)
FAIL src/functional/pthread_robust-static.exe [timed out]
src/functional/pthread_robust.c:39: pthread_mutexattr_setrobust(&mtx_a, PTHREAD_MUTEX_ROBUST) failed: (pshared==0, pi==0) Function not implemented (setting robust attribute)
FAIL src/functional/pthread_robust.exe [timed out]
src/functional/sem_init.c:19: sem_timedwait(s+1, &ts) failed: Operation timed out
src/functional/sem_init.c:19: sem_timedwait(s+1, &ts) failed: Operation timed out
src/functional/sem_init.c:19: sem_timedwait(s+1, &ts) failed: Operation timed out
src/functional/sem_init.c:49: sem value should be 0, got 3
FAIL src/functional/sem_init-static.exe [status 1]
src/functional/sem_init.c:19: sem_timedwait(s+1, &ts) failed: Operation timed out
src/functional/sem_init.c:19: sem_timedwait(s+1, &ts) failed: Operation timed out
src/functional/sem_init.c:19: sem_timedwait(s+1, &ts) failed: Operation timed out
src/functional/sem_init.c:49: sem value should be 0, got 3
FAIL src/functional/sem_init.exe [status 1]
src/functional/sscanf.c:73:9: warning: magnitude of floating-point constant too large for type 'double'; maximum is 1.7976931348623157E+308 [-Wliteral-range]
        TEST_F(1.234e1234);
               ^
src/functional/sscanf.c:73:9: warning: magnitude of floating-point constant too large for type 'double'; maximum is 1.7976931348623157E+308 [-Wliteral-range]
src/functional/sscanf.c:74:9: warning: magnitude of floating-point constant too small for type 'double'; minimum is 4.9406564584124654E-324 [-Wliteral-range]
        TEST_F(1.234e-1234);
               ^
src/functional/sscanf.c:74:9: warning: magnitude of floating-point constant too small for type 'double'; minimum is 4.9406564584124654E-324 [-Wliteral-range]
src/functional/sscanf.c:75:9: warning: magnitude of floating-point constant too large for type 'double'; maximum is 1.7976931348623157E+308 [-Wliteral-range]
        TEST_F(1.234e56789);
               ^
src/functional/sscanf.c:75:9: warning: magnitude of floating-point constant too large for type 'double'; maximum is 1.7976931348623157E+308 [-Wliteral-range]
src/functional/sscanf.c:76:9: warning: magnitude of floating-point constant too small for type 'double'; minimum is 4.9406564584124654E-324 [-Wliteral-range]
        TEST_F(1.234e-56789);
               ^
src/functional/sscanf.c:76:9: warning: magnitude of floating-point constant too small for type 'double'; minimum is 4.9406564584124654E-324 [-Wliteral-range]
8 warnings generated.
src/functional/strptime.c:23: "%F": failed to parse "1856-07-10"
src/functional/strptime.c:23: "%s": failed to parse "683078400"
src/functional/strptime.c:47: "%z": failed to parse "+0200"
src/functional/strptime.c:47: "%z": failed to parse "-0530"
src/functional/strptime.c:47: "%z": failed to parse "-06"
FAIL src/functional/strptime-static.exe [status 1]
src/functional/strptime.c:23: "%F": failed to parse "1856-07-10"
src/functional/strptime.c:23: "%s": failed to parse "683078400"
src/functional/strptime.c:47: "%z": failed to parse "+0200"
src/functional/strptime.c:47: "%z": failed to parse "-0530"
src/functional/strptime.c:47: "%z": failed to parse "-06"
FAIL src/functional/strptime.exe [status 1]
src/functional/utime.c:38: st.st_atim.tv_sec == 0 failed: 1
src/functional/utime.c:40: st.st_mtim.tv_sec == 0 failed: 1073741822
src/functional/utime.c:47: st.st_atim.tv_sec >= t failed: 0
src/functional/utime.c:48: st.st_mtim.tv_sec == 0 failed: 1073741823
src/functional/utime.c:55: st.st_mtim.tv_sec >= t failed: 1073741822
src/functional/utime.c:59: st.st_atim.tv_sec >= t failed: 0
src/functional/utime.c:60: st.st_mtim.tv_sec >= t failed: 1073741823
src/functional/utime.c:65: st.st_atim.tv_sec == 1LL<<32 failed: 0
src/functional/utime.c:66: st.st_mtim.tv_sec == 1LL<<32 failed: 0
FAIL src/functional/utime-static.exe [status 1]
src/functional/utime.c:38: st.st_atim.tv_sec == 0 failed: 1
src/functional/utime.c:40: st.st_mtim.tv_sec == 0 failed: 1073741822
src/functional/utime.c:47: st.st_atim.tv_sec >= t failed: 0
src/functional/utime.c:48: st.st_mtim.tv_sec == 0 failed: 1073741823
src/functional/utime.c:55: st.st_mtim.tv_sec >= t failed: 1073741822
src/functional/utime.c:59: st.st_atim.tv_sec >= t failed: 0
src/functional/utime.c:60: st.st_mtim.tv_sec >= t failed: 1073741823
src/functional/utime.c:65: st.st_atim.tv_sec == 1LL<<32 failed: 0
src/functional/utime.c:66: st.st_mtim.tv_sec == 1LL<<32 failed: 0
FAIL src/functional/utime.exe [status 1]
X src/math/special/acosh.h:9: RN acosh(0x1.001f1c62cf304p+0) want 0x1.f8d125ff71ccp-6 got 0x1.f8d125ff71cc2p-6 ulperr 1.853 = 0x1p+1 + -0x1.2d785ap-3
X src/math/special/acosh.h:10: RN acosh(0x1.00788c223616fp+0) want 0x1.f0cb8ee812621p-5 got 0x1.f0cb8ee812623p-5 ulperr 1.724 = 0x1p+1 + -0x1.1b0c1ap-2
X src/math/special/acosh.h:11: RN acosh(0x1.007b7a37c7606p+0) want 0x1.f6cb68859ae3p-5 got 0x1.f6cb68859ae2ep-5 ulperr -1.855 = -0x1p+1 + 0x1.280488p-3
X src/math/special/acosh.h:12: RN acosh(0x1.01d173033243cp+0) want 0x1.e7e1b18d99376p-4 got 0x1.e7e1b18d99378p-4 ulperr 1.930 = 0x1p+1 + -0x1.1f3d3ep-4
X src/math/special/acosh.h:13: RN acosh(0x1.01d8f20e90409p+0) want 0x1.ebca3eea5cda5p-4 got 0x1.ebca3eea5cda3p-4 ulperr -1.652 = -0x1p+1 + 0x1.648602p-2
X src/math/special/acosh.h:14: RN acosh(0x1.01ef6122e68bep+0) want 0x1.f74df150afc94p-4 got 0x1.f74df150afc92p-4 ulperr -1.762 = -0x1p+1 + 0x1.e79556p-3
X src/math/special/acosh.h:15: RN acosh(0x1.06822faf07879p+0) want 0x1.ccd73cbc4af78p-3 got 0x1.ccd73cbc4af7ap-3 ulperr 1.674 = 0x1p+1 + -0x1.4df79ep-2
X src/math/special/acosh.h:17: RN acosh(0x1.069d65411ec51p+0) want 0x1.d0928b08facbap-3 got 0x1.d0928b08facbcp-3 ulperr 1.785 = 0x1p+1 + -0x1.b83338p-3
X src/math/special/acosh.h:18: RN acosh(0x1.071d6b2713d08p+0) want 0x1.e1bc6a6c345fdp-3 got 0x1.e1bc6a6c345ffp-3 ulperr 1.818 = 0x1p+1 + -0x1.74a04ep-3
X src/math/special/acosh.h:19: RN acosh(0x1.0728405f5140cp+0) want 0x1.e328ebe92b32cp-3 got 0x1.e328ebe92b32ep-3 ulperr 1.790 = 0x1p+1 + -0x1.ae89ap-3
X src/math/special/acosh.h:20: RN acosh(0x1.07bd2c5c01bcbp+0) want 0x1.f6513c44c131p-3 got 0x1.f6513c44c1312p-3 ulperr 1.719 = 0x1p+1 + -0x1.203932p-2
X src/math/special/acosh.h:21: RN acosh(0x1.1aae7c452c859p+0) want 0x1.cf8d69288e386p-2 got 0x1.cf8d69288e384p-2 ulperr -1.723 = -0x1p+1 + 0x1.1b325ap-2
X src/math/special/acosh.h:23: RN acosh(0x1.1b50764626f1ep+0) want 0x1.d4ec67c71794p-2 got 0x1.d4ec67c717942p-2 ulperr 1.738 = 0x1p+1 + -0x1.0c09dap-2
src/math/special/acosh.h:9: RN acoshl(0x1.001f1c62cf304p+0) want 0x1.f8d125ff71ccp-6 got 0x1.f8d125ff71cc2p-6 ulperr 1.853 = 0x1p+1 + -0x1.2d785ap-3
src/math/special/acosh.h:10: RN acoshl(0x1.00788c223616fp+0) want 0x1.f0cb8ee812621p-5 got 0x1.f0cb8ee812623p-5 ulperr 1.724 = 0x1p+1 + -0x1.1b0c1ap-2
src/math/special/acosh.h:11: RN acoshl(0x1.007b7a37c7606p+0) want 0x1.f6cb68859ae3p-5 got 0x1.f6cb68859ae2ep-5 ulperr -1.855 = -0x1p+1 + 0x1.280488p-3
src/math/special/acosh.h:12: RN acoshl(0x1.01d173033243cp+0) want 0x1.e7e1b18d99376p-4 got 0x1.e7e1b18d99378p-4 ulperr 1.930 = 0x1p+1 + -0x1.1f3d3ep-4
src/math/special/acosh.h:13: RN acoshl(0x1.01d8f20e90409p+0) want 0x1.ebca3eea5cda5p-4 got 0x1.ebca3eea5cda3p-4 ulperr -1.652 = -0x1p+1 + 0x1.648602p-2
src/math/special/acosh.h:14: RN acoshl(0x1.01ef6122e68bep+0) want 0x1.f74df150afc94p-4 got 0x1.f74df150afc92p-4 ulperr -1.762 = -0x1p+1 + 0x1.e79556p-3
src/math/special/acosh.h:15: RN acoshl(0x1.06822faf07879p+0) want 0x1.ccd73cbc4af78p-3 got 0x1.ccd73cbc4af7ap-3 ulperr 1.674 = 0x1p+1 + -0x1.4df79ep-2
src/math/special/acosh.h:17: RN acoshl(0x1.069d65411ec51p+0) want 0x1.d0928b08facbap-3 got 0x1.d0928b08facbcp-3 ulperr 1.785 = 0x1p+1 + -0x1.b83338p-3
src/math/special/acosh.h:18: RN acoshl(0x1.071d6b2713d08p+0) want 0x1.e1bc6a6c345fdp-3 got 0x1.e1bc6a6c345ffp-3 ulperr 1.818 = 0x1p+1 + -0x1.74a04ep-3
src/math/special/acosh.h:19: RN acoshl(0x1.0728405f5140cp+0) want 0x1.e328ebe92b32cp-3 got 0x1.e328ebe92b32ep-3 ulperr 1.790 = 0x1p+1 + -0x1.ae89ap-3
src/math/special/acosh.h:20: RN acoshl(0x1.07bd2c5c01bcbp+0) want 0x1.f6513c44c131p-3 got 0x1.f6513c44c1312p-3 ulperr 1.719 = 0x1p+1 + -0x1.203932p-2
src/math/special/acosh.h:21: RN acoshl(0x1.1aae7c452c859p+0) want 0x1.cf8d69288e386p-2 got 0x1.cf8d69288e384p-2 ulperr -1.723 = -0x1p+1 + 0x1.1b325ap-2
src/math/special/acosh.h:23: RN acoshl(0x1.1b50764626f1ep+0) want 0x1.d4ec67c71794p-2 got 0x1.d4ec67c717942p-2 ulperr 1.738 = 0x1p+1 + -0x1.0c09dap-2
FAIL src/math/acoshl.exe [status 1]
X src/math/special/asinh.h:7: RN asinh(0x1.fbdd0eedf8143p-3) want 0x1.f6cc20d7a594ap-3 got 0x1.f6cc20d7a594cp-3 ulperr 1.513 = 0x1p+1 + -0x1.f327a8p-2
X src/math/special/asinh.h:8: RN asinh(0x1.df2723491f88fp-3) want 0x1.dae2c8444900cp-3 got 0x1.dae2c8444900ap-3 ulperr -1.551 = -0x1p+1 + 0x1.cb8b86p-2
X src/math/special/asinh.h:9: RN asinh(0x1.ef675c6541305p-3) want 0x1.eab20432c9598p-3 got 0x1.eab20432c959ap-3 ulperr 1.568 = 0x1p+1 + -0x1.ba9e34p-2
X src/math/special/asinh.h:10: RN asinh(0x1.f19df3a1722a9p-3) want 0x1.ecd8a7f621554p-3 got 0x1.ecd8a7f621552p-3 ulperr -1.535 = -0x1p+1 + 0x1.dbc1a8p-2
X src/math/special/asinh.h:11: RN asinh(0x1.f1af09dcfa7d6p-3) want 0x1.ece942815ceccp-3 got 0x1.ece942815cecap-3 ulperr -1.526 = -0x1p+1 + 0x1.e5bb5p-2
X src/math/special/asinh.h:12: RN asinh(0x1.f339ebbeac5bap-3) want 0x1.ee68f10a49c42p-3 got 0x1.ee68f10a49c44p-3 ulperr 1.529 = 0x1p+1 + -0x1.e28cbp-2
X src/math/special/asinh.h:13: RN asinh(0x1.f424275dc8787p-3) want 0x1.ef4c7fcb51c56p-3 got 0x1.ef4c7fcb51c54p-3 ulperr -1.642 = -0x1p+1 + 0x1.6e4e9p-2
X src/math/special/asinh.h:14: RN asinh(0x1.f60d54a133665p-3) want 0x1.f127a8dec0c2p-3 got 0x1.f127a8dec0c1ep-3 ulperr -1.512 = -0x1p+1 + 0x1.f3c9eap-2
X src/math/special/asinh.h:15: RN asinh(0x1.fdccdaf285ffdp-3) want 0x1.f8ad4bed7af4cp-3 got 0x1.f8ad4bed7af4ap-3 ulperr -1.576 = -0x1p+1 + 0x1.b1f1f8p-2
X src/math/special/asinh.h:16: RN asinh(0x1.ff5bec94924c7p-3) want 0x1.fa30836c3949ap-3 got 0x1.fa30836c39498p-3 ulperr -1.533 = -0x1p+1 + 0x1.de989p-2
X src/math/special/asinh.h:17: RN asinh(0x1.028e8fd61c8a5p-2) want 0x1.ffc55bd02e9dep-3 got 0x1.ffc55bd02e9ep-3 ulperr 1.670 = 0x1p+1 + -0x1.523c08p-2
X src/math/special/asinh.h:18: RN asinh(0x1.dc71794e1f137p-2) want 0x1.ccbd41a7d058ap-2 got 0x1.ccbd41a7d0588p-2 ulperr -1.585 = -0x1p+1 + 0x1.a944b8p-2
X src/math/special/asinh.h:19: RN asinh(0x1.df308e177c3cbp-2) want 0x1.cf3a638145d7ap-2 got 0x1.cf3a638145d78p-2 ulperr -1.505 = -0x1p+1 + 0x1.fb3684p-2
X src/math/special/asinh.h:20: RN asinh(0x1.ea94e1e267746p-2) want 0x1.d9862533f65f6p-2 got 0x1.d9862533f65f4p-2 ulperr -1.579 = -0x1p+1 + 0x1.af51ecp-2
X src/math/special/asinh.h:21: RN asinh(0x1.ecd4f07608dc7p-2) want 0x1.db8d6fdcc6d74p-2 got 0x1.db8d6fdcc6d76p-2 ulperr 1.517 = 0x1p+1 + -0x1.eeb48p-2
X src/math/special/asinh.h:22: RN asinh(0x1.f30656c78ee7ep-2) want 0x1.e1204e364a186p-2 got 0x1.e1204e364a188p-2 ulperr 1.576 = 0x1p+1 + -0x1.b23ffp-2
X src/math/special/asinh.h:23: RN asinh(0x1.f5c0c6e41b969p-2) want 0x1.e393d3dc3b70ap-2 got 0x1.e393d3dc3b70cp-2 ulperr 1.562 = 0x1p+1 + -0x1.c06dbep-2
X src/math/special/asinh.h:24: RN asinh(0x1.09c58725300e7p-1) want 0x1.fe2c7f25fb172p-2 got 0x1.fe2c7f25fb174p-2 ulperr 1.579 = 0x1p+1 + -0x1.ae9df6p-2
src/math/special/asinh.h:7: RN asinhl(0x1.fbdd0eedf8143p-3) want 0x1.f6cc20d7a594ap-3 got 0x1.f6cc20d7a594cp-3 ulperr 1.513 = 0x1p+1 + -0x1.f327a8p-2
src/math/special/asinh.h:8: RN asinhl(0x1.df2723491f88fp-3) want 0x1.dae2c8444900cp-3 got 0x1.dae2c8444900ap-3 ulperr -1.551 = -0x1p+1 + 0x1.cb8b86p-2
src/math/special/asinh.h:9: RN asinhl(0x1.ef675c6541305p-3) want 0x1.eab20432c9598p-3 got 0x1.eab20432c959ap-3 ulperr 1.568 = 0x1p+1 + -0x1.ba9e34p-2
src/math/special/asinh.h:10: RN asinhl(0x1.f19df3a1722a9p-3) want 0x1.ecd8a7f621554p-3 got 0x1.ecd8a7f621552p-3 ulperr -1.535 = -0x1p+1 + 0x1.dbc1a8p-2
src/math/special/asinh.h:11: RN asinhl(0x1.f1af09dcfa7d6p-3) want 0x1.ece942815ceccp-3 got 0x1.ece942815cecap-3 ulperr -1.526 = -0x1p+1 + 0x1.e5bb5p-2
src/math/special/asinh.h:12: RN asinhl(0x1.f339ebbeac5bap-3) want 0x1.ee68f10a49c42p-3 got 0x1.ee68f10a49c44p-3 ulperr 1.529 = 0x1p+1 + -0x1.e28cbp-2
src/math/special/asinh.h:13: RN asinhl(0x1.f424275dc8787p-3) want 0x1.ef4c7fcb51c56p-3 got 0x1.ef4c7fcb51c54p-3 ulperr -1.642 = -0x1p+1 + 0x1.6e4e9p-2
src/math/special/asinh.h:14: RN asinhl(0x1.f60d54a133665p-3) want 0x1.f127a8dec0c2p-3 got 0x1.f127a8dec0c1ep-3 ulperr -1.512 = -0x1p+1 + 0x1.f3c9eap-2
src/math/special/asinh.h:15: RN asinhl(0x1.fdccdaf285ffdp-3) want 0x1.f8ad4bed7af4cp-3 got 0x1.f8ad4bed7af4ap-3 ulperr -1.576 = -0x1p+1 + 0x1.b1f1f8p-2
src/math/special/asinh.h:16: RN asinhl(0x1.ff5bec94924c7p-3) want 0x1.fa30836c3949ap-3 got 0x1.fa30836c39498p-3 ulperr -1.533 = -0x1p+1 + 0x1.de989p-2
src/math/special/asinh.h:17: RN asinhl(0x1.028e8fd61c8a5p-2) want 0x1.ffc55bd02e9dep-3 got 0x1.ffc55bd02e9ep-3 ulperr 1.670 = 0x1p+1 + -0x1.523c08p-2
src/math/special/asinh.h:18: RN asinhl(0x1.dc71794e1f137p-2) want 0x1.ccbd41a7d058ap-2 got 0x1.ccbd41a7d0588p-2 ulperr -1.585 = -0x1p+1 + 0x1.a944b8p-2
src/math/special/asinh.h:19: RN asinhl(0x1.df308e177c3cbp-2) want 0x1.cf3a638145d7ap-2 got 0x1.cf3a638145d78p-2 ulperr -1.505 = -0x1p+1 + 0x1.fb3684p-2
src/math/special/asinh.h:20: RN asinhl(0x1.ea94e1e267746p-2) want 0x1.d9862533f65f6p-2 got 0x1.d9862533f65f4p-2 ulperr -1.579 = -0x1p+1 + 0x1.af51ecp-2
src/math/special/asinh.h:21: RN asinhl(0x1.ecd4f07608dc7p-2) want 0x1.db8d6fdcc6d74p-2 got 0x1.db8d6fdcc6d76p-2 ulperr 1.517 = 0x1p+1 + -0x1.eeb48p-2
src/math/special/asinh.h:22: RN asinhl(0x1.f30656c78ee7ep-2) want 0x1.e1204e364a186p-2 got 0x1.e1204e364a188p-2 ulperr 1.576 = 0x1p+1 + -0x1.b23ffp-2
src/math/special/asinh.h:23: RN asinhl(0x1.f5c0c6e41b969p-2) want 0x1.e393d3dc3b70ap-2 got 0x1.e393d3dc3b70cp-2 ulperr 1.562 = 0x1p+1 + -0x1.c06dbep-2
src/math/special/asinh.h:24: RN asinhl(0x1.09c58725300e7p-1) want 0x1.fe2c7f25fb172p-2 got 0x1.fe2c7f25fb174p-2 ulperr 1.579 = 0x1p+1 + -0x1.ae9df6p-2
FAIL src/math/asinhl.exe [status 1]
X src/math/special/erfc.h:6: RN erfc(0x1.5db559fe5c0bap+0) want 0x1.b53cf571d328fp-5 got 0x1.b53cf571d328cp-5 ulperr -2.609 = -0x1.8p+1 + 0x1.900982p-2
src/math/special/erfc.h:6: RN erfcl(0x1.5db559fe5c0bap+0) want 0x1.b53cf571d328fp-5 got 0x1.b53cf571d328cp-5 ulperr -2.609 = -0x1.8p+1 + 0x1.900982p-2
FAIL src/math/erfcl.exe [status 1]
X src/math/special/exp2.h:12: bad fp exception: RN exp2(-0x1.ff8p+9)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/special/exp2.h:18: bad fp exception: RN exp2(-0x1.ff8p+9)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/special/exp2.h:20: bad fp exception: RN exp2(-0x1p+10)=0x1p-1024, want 0 got INEXACT|UNDERFLOW
X src/math/special/exp2.h:21: bad fp exception: RN exp2(-0x1.004p+10)=0x1p-1025, want 0 got INEXACT|UNDERFLOW
X src/math/special/exp2.h:22: bad fp exception: RN exp2(-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:12: bad fp exception: RN exp2l(-0x1.ff8p+9)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:18: bad fp exception: RN exp2l(-0x1.ff8p+9)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:20: bad fp exception: RN exp2l(-0x1p+10)=0x1p-1024, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:21: bad fp exception: RN exp2l(-0x1.004p+10)=0x1p-1025, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:22: bad fp exception: RN exp2l(-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
FAIL src/math/exp2l.exe [status 1]
src/math/sanity/fma.h:1: RN fmal(-0x1.02239f3c6a8f1p+3,0x1.22484b9ef31fp+2,0x1.52fb12ef638a1p-1) want -0x1.1f69545c32effp+5 got -0x1.9ee52705ep+4 ulperr 1406739496828928.000 = 0x1.3fdb04p+50 + -0x1.759846p-3
src/math/sanity/fma.h:2: RN fmal(0x1.161868e18bc67p+2,-0x1.1c6a6cdce75e8p+3,0x1.ab3ff8575b21dp-5) want -0x1.348be0b9d32d3p+5 got -0x1.c8a99f416p+3 ulperr 3419582362550272.000 = 0x1.84c2f2p+51 + 0x1.b43916p-3
src/math/sanity/fma.h:3: RN fmal(-0x1.0c34b3e01e6e7p+3,-0x1.61bde29e83f6dp+1,0x1.eb4a2e7ce0693p+2) want 0x1.ed6e27fca81b7p+4 got 0x1.487be8a56cp+2 ulperr -7235829650948096.000 = -0x1.9b4f2ep+52 + -0x1.f11488p-2
src/math/sanity/fma.h:4: RN fmal(-0x1.a206f0a19dcc4p+2,0x1.24527f7b576acp+2,-0x1.95882b433fad3p-1) want -0x1.ea02e2365f336p+4 got 0x1.2e3092a8ap+3 ulperr 11278458491502592.000 = 0x1.408d96p+53 + 0x1.41da3ap-2
src/math/sanity/fma.h:5: RN fmal(0x1.288bbb0d6a1e6p+3,0x1.33edd910a3c01p+2,-0x1.1e159e36313eep-1) want 0x1.603abfa620e23p+5 got -0x1.7341dbb0dp+2 ulperr -7012890246643712.000 = -0x1.8ea2fcp+52 + -0x1.7be8ccp-3
src/math/special/fma.h:42: RN fmal(0x1p+0,0x1p+0,-0x1p-1074) want 0x1p+0 got -0x1.fffffp-43 ulperr -4503599627370496.000 = -0x1p+52 + 0x0p+0
src/math/special/fma.h:43: bad fp exception: RN fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022)=0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:43: RN fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.fffffffffffffp-1022 got 0x1p-1074 ulperr -9007199254740992.000 = -0x1p+53 + 0x0p+0
src/math/special/fma.h:44: bad fp exception: RN fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022)=0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:44: RN fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.fffffffffffffp-1022 got -0x0p+0 ulperr -9007199254740992.000 = -0x1p+53 + 0x0p+0
src/math/special/fma.h:45: bad fp exception: RN fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:45: RN fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.fffffffffffffp-1022 got -0x1p-1074 ulperr 9007199254740992.000 = 0x1p+53 + 0x0p+0
src/math/special/fma.h:46: bad fp exception: RN fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:46: RN fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.fffffffffffffp-1022 got 0x0p+0 ulperr 9007199254740992.000 = 0x1p+53 + 0x0p+0
src/math/special/fma.h:47: RN fmal(0x1p-1074,-0x1p-1074,0x1p-1074) want 0x1p-1074 got -0x0p+0 ulperr -1.000 = -0x1p+0 + 0x0p+0
src/math/special/fma.h:48: RN fmal(0x1p-1074,-0x1p-1074,-0x1p-1074) want -0x1p-1074 got -0x0p+0 ulperr 1.000 = 0x1p+0 + 0x0p+0
src/math/special/fma.h:49: RN fmal(0x1.0000000000001p+0,0x1p+0,0x1p+53) want 0x1.0000000000001p+53 got 0x1.000008p+12 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:50: RN fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p+53) want 0x1.0000000000001p+53 got 0x1.ffc02p+10 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:51: RN fmal(0x1p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp+53) want 0x1.fffffffffffffp+53 got -0x1.ffffep+10 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:52: RN fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep+53) want 0x1.fffffffffffffp+53 got 0x1.ffc02p+10 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:53: RN fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p-52) want 0x1.0000000000001p+0 got -0x1.fffffp-42 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:54: RN fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp-53) want 0x1.0000000000001p+0 got -0x1.fffff8p-41 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:55: RN fmal(0x1.0000000000005p+0,0x1.ffffffffffffbp-1,0x1p-52) want 0x1.0000000000003p+0 got -0x1.8fffff8p-37 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:56: RN fmal(0x1.0000000000006p+0,0x1.ffffffffffffdp-1,0x1p-52) want 0x1.0000000000005p+0 got -0x1.1fffff8p-37 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:75: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff5p+0 got 0x1.6800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:76: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1p+0) want 0x1.ffffffffffff9p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:77: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffff7p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:78: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffff5p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:79: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffff7p+0 got 0x1.f800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:80: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffff5p+0 got 0x1.f800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:81: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffff7p+0 got 0x1.2000004p-36 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:82: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffff5p+0 got 0x1.2000004p-36 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:83: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.fffffffffffffp-1) want 0x1.ffffffffffff7p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:84: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffff5p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:85: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff3p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:86: RN fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep-1) want 0x1.fffffffffffffp+0 got -0x1.fffffp-42 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:87: RN fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffp-42 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:88: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.fffffffffffffp-1) want 0x1.fffffffffffffp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:89: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:90: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:91: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1p+0) want 0x1.fffffffffffffp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:92: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:93: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:94: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:95: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:96: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffffdp+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:97: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffbp+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:98: RN fmal(0x1.5872449b765b9p+0,0x1.c9acf91f8de2bp+0,0x1.9265607e4d168p+0) want 0x1.fd190c77c2a67p+1 got -0x1.b3fc37bedp-4 ulperr -9195829923414016.000 = -0x1.055c78p+53 + -0x1.fffc98p-2
src/math/special/fma.h:99: RN fmal(0x1.81d010b146d0ep+0,0x1.2d3c680dc9071p+0,0x1.a80b69538754cp+0) want 0x1.b7040b44973a7p+1 got 0x1.4d0cb20197p+1 ulperr -1864177270390784.000 = -0x1.a7dd66p+50 + 0x1.ffacbcp-2
src/math/special/fma.h:100: RN fmal(0x1.6a44f2252b6a2p+0,0x1.da452a378b832p+0,0x1.1fe2ce329104p+0) want 0x1.df842b6f48b13p+1 got 0x1.12e95c1ba4p+0 ulperr -6017592242208768.000 = -0x1.560f7ep+52 + 0x1.ffdda2p-2
src/math/special/fma.h:101: RN fmal(0x1.096b1d26463eep+0,0x1.d846d3e34333p+0,0x1.721e3480922b8p+0) want 0x1.ade2909c0269fp+1 got -0x1.a139d9b2cp-1 ulperr -9397596749561856.000 = -0x1.0b1884p+53 + -0x1.ffe5ecp-2
src/math/special/fma.h:102: RN fmal(0x1.99bd3434c454bp+0,0x1.03cb8e4115bdep+0,0x1.109f107188b08p+0) want 0x1.5837a47d37fafp+1 got 0x1.cfdec0c00ap+0 ulperr -1975290892910592.000 = -0x1.c1211p+50 + 0x1.ffc604p-2
src/math/special/fma.h:103: RN fmal(0x1.ba930a0a78ed2p+0,0x1.8c24e8d67f636p+0,0x1.ac49dbfbf8affp+0) want 0x1.164947ae6a5d9p+2 got -0x1.33e3b04edp-2 ulperr -5234191281160192.000 = -0x1.298782p+52 + -0x1.fffb3p-2
src/math/special/fma.h:104: RN fmal(0x1.be224ad773191p+0,0x1.d96b77169731fp+0,0x1.662cfb75d8edep+0) want 0x1.27cd67e720f79p+2 got 0x1.e4711611c78p+1 ulperr -942615600037888.000 = -0x1.aca6e6p+49 + 0x1.ffc372p-2
src/math/special/fma.h:105: RN fmal(0x1.59e7a1b0bdb3cp+0,0x1.2decba4d46421p+0,0x1.88f4062e96df5p+0) want 0x1.90749e4794f79p+1 got -0x1.b3c84a9a88p-1 ulperr -8961479327875072.000 = -0x1.fd66bp+52 + -0x1.ffe4c4p-2
src/math/special/fma.h:106: RN fmal(0x1.22edf4b4da9a7p+0,0x1.dfa8d65f506cdp+0,0x1.2799208da2fbap+0) want 0x1.a45a1e99ed7a9p+1 got 0x1.a0bdfb8976p-1 ulperr -5562059957731328.000 = -0x1.3c2aap+52 + 0x1.ffe5f4p-2
src/math/special/fma.h:107: RN fmal(0x1.ad5b991a2a279p+0,0x1.f02fd26706024p+0,0x1.831cdd5c8797cp+0) want 0x1.30d3a2ac90a61p+2 got 0x1.c7c15e1c82p+1 ulperr -1353701616779264.000 = -0x1.33cbcep+50 + 0x1.ffc708p-2
src/math/special/fma.h:108: RN fmal(0x1.531f9620e764ap+0,0x1.cad61b54d4425p+0,0x1.df817cae8a9afp+0) want 0x1.0fd4e7f8671ddp+2 got 0x1.8e74e26059p+1 ulperr -1277252138434560.000 = -0x1.2269dcp+50 + 0x1.ffce32p-2
src/math/special/fma.h:109: RN fmal(0x1.629a5ad79494fp+0,0x1.049e58693f4c4p+0,0x1.45b0109e4d00cp+0) want 0x1.5758154e14965p+1 got -0x1.01173c9c2p-3 ulperr -6322847379095552.000 = -0x1.67698ap+52 + -0x1.fffbfcp-2
src/math/special/fma.h:110: RN fmal(0x1.2f52b53f9240ap+0,0x1.1d5c686dbb0dap+0,0x1.6da3e392a4fd4p+0) want 0x1.5fe03a6795913p+1 got 0x1.5bdb7d9084p+0 ulperr -3130480329228288.000 = -0x1.63e4f8p+51 + 0x1.ffd484p-2
src/math/special/fma.h:111: RN fmal(0x1.058667552b49ep+0,0x1.23307bacc1c42p+0,0x1.5b059b47cd8f5p+0) want 0x1.423f752486d13p+1 got -0x1.4bfb042744p+0 ulperr -8589176530272256.000 = -0x1.e83cf8p+52 + -0x1.ffd68p-2
src/math/special/fma.h:112: RN fmal(0x1.a717d95337ed8p+0,0x1.2b1c37846aaadp+0,0x1.be65672f885b1p+0) want 0x1.d65e72303c075p+1 got -0x1.7e0573ec04p+1 ulperr -14995408015065088.000 = -0x1.aa31f4p+53 + -0x1.ffa07ep-2
src/math/special/fma.h:113: RN fmal(0x1.deb79287b3d32p+0,0x1.62776b829babap+0,0x1.67daf18bd2eb1p+0) want 0x1.ff5a0d45c69d7p+1 got 0x1.ad881652ap-3 ulperr -8523520438960128.000 = -0x1.e4818cp+52 + 0x1.fff94ap-2
src/math/special/fma.h:114: RN fmal(0x1.fbf12d3a6de91p+0,0x1.879fe6124f11p+0,0x1.9f3f1247a8641p+0) want 0x1.2a126c6980019p+2 got 0x1.45e3d61a84p+2 ulperr 489379780886528.000 = 0x1.bd169cp+48 + 0x1.ffae88p-2
src/math/special/fma.h:115: RN fmal(0x1.c589628460e01p+0,0x1.e1bec1c797533p+0,0x1.349f30cdb84bbp+0) want 0x1.2286118b6f6e5p+2 got -0x1.8e9d95e0668p+1 ulperr -8617206560587776.000 = -0x1.e9d4dcp+52 + -0x1.ffce2cp-2
src/math/special/fma.h:116: RN fmal(0x1.46fd6c2c924ebp+0,0x1.65e2f02e730a1p+0,0x1.37739d2751098p+0) want 0x1.804a71c1f1273p+1 got 0x1.855d7947cbp+0 ulperr -3335623268106240.000 = -0x1.7b376ap+51 + 0x1.ffcf54p-2
src/math/special/fma.h:117: RN fmal(0x1.f99e595ae11fdp+0,0x1.bd33d9a1d81bp+0,0x1.932a2a2e244c1p+0) want 0x1.409e34f8f2f89p+2 got -0x1.7a49668944p+2 ulperr -12295261934059520.000 = -0x1.5d73cep+53 + -0x1.ffa16ep-2
src/math/special/fma.h:118: RN fmal(0x1.59ea1e56bfe55p+0,0x1.6f46b7d412a44p+0,0x1.80f2bc9a32cc3p+0) want 0x1.b89c7640e32ffp+1 got -0x1.ca180bfb6p-3 ulperr -8254993714905088.000 = -0x1.d53df8p+52 + -0x1.fff8d8p-2
src/math/special/fma.h:119: RN fmal(0x1.61490fcb44129p+0,0x1.0038ec4fc35c2p+0,0x1.df7436ed7a7b7p+0) want 0x1.a085ea68d05cfp+1 got -0x1.5ed2c690f7p+1 ulperr -13499301254660096.000 = -0x1.7fac58p+53 + -0x1.ffa84cp-2
src/math/special/fma.h:120: RN fmal(0x1.d41b98788502bp+0,0x1.1a7b77843aca6p+0,0x1.05be891837d36p+0) want 0x1.8523596ceced9p+1 got -0x1.48c8fc403cp-1 ulperr -8291801584631808.000 = -0x1.d75598p+52 + -0x1.ffeb74p-2
src/math/special/fma.h:121: RN fmal(0x1.3153cf6f69af9p+0,0x1.aaa947e38e57ap+0,0x1.8519f9b590645p+0) want 0x1.c0fcab7b46369p+1 got 0x1.25f4f4bd5p-3 ulperr -7575453653008384.000 = -0x1.ae9d5cp+52 + 0x1.fffb68p-2
src/math/special/fma.h:122: RN fmal(0x1.c25a1f73581aap+0,0x1.0a51ffca372ap+0,0x1.0c77e3ebac5f3p+0) want 0x1.707ce48c7d72dp+1 got -0x1.3261c9a0ep+1 ulperr -11872436362412032.000 = -0x1.516f58p+53 + -0x1.ffb368p-2
src/math/special/fma.h:123: RN fmal(0x1.829c2cde44b7p+0,0x1.f692e86d8cb36p+0,0x1.455e72d264bfp+0) want 0x1.0f16a3b8b3f97p+2 got -0x1.684386466p+0 ulperr -6353495191977984.000 = -0x1.692786p+52 + -0x1.ffe97cp-2
src/math/special/fma.h:124: RN fmal(0x1.94729588dcc69p+0,0x1.c3bb794c6edf8p+0,0x1.9da4e94d262d2p+0) want 0x1.19d4bd84d9fd3p+2 got 0x1.e1b9a2757p-1 ulperr -3898698849320960.000 = -0x1.bb3b12p+51 + 0x1.fff0f2p-2
src/math/special/fma.h:125: RN fmal(0x1.e6a5e7e39c3d5p+0,0x1.1b69af2bdd978p+0,0x1.e7ef1eafa119cp+0) want 0x1.00ac5b44c9f31p+2 got -0x1.6777d5d394p+1 ulperr -7677358731427840.000 = -0x1.b46846p+52 + -0x1.ffd312p-2
src/math/special/fma.h:126: RN fmal(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022) want 0x1.b594d0e4368efp-1022 got -0x1.9dedc9561p-1023 ulperr -11338968138252288.000 = -0x1.4245dap+53 + -0x1.ffcc42p-2
src/math/special/fma.h:127: RN fmal(0x1.022db53c98d14p-1022,0x1.21157eef74848p-2,0x1.2f880432b1bc1p-1022) want 0x1.786ad60a02b3dp-1022 got -0x1.150255ac98p-1022 ulperr -11495199721127936.000 = -0x1.46b696p+53 + -0x1.ffbacp-2
src/math/special/fma.h:128: RN fmal(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022) want 0x1.cbb085199a3f5p-1022 got -0x1.6ed115da2f8p-1023 ulperr -11313497908445184.000 = -0x1.418c88p+53 + -0x1.ffd226p-2
src/math/special/fma.h:129: RN fmal(0x1.adbc3a9d816dep-1022,0x1.e039d4431e3cdp-2,0x1.93ceef6fe18a2p-1022) want 0x1.2eabb7dc0e2f1p-1021 got 0x1.ef7b6794e3p-1023 ulperr -3145487481831424.000 = -0x1.6599bcp+51 + 0x1.ffe108p-2
src/math/special/fma.h:130: RN fmal(0x1.645aa5c2df3afp-1022,0x1.649edfcad854fp-2,0x1.8b43e0bbaeb01p-1022) want 0x1.03af571d2b505p-1021 got 0x1.0ce86163c02p-1021 ulperr 162249436037120.000 = 0x1.272148p+47 + 0x1.ffbcc6p-2
src/math/special/fma.h:131: RN fmal(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022) want 0x1.ad9ce7fcefa3fp-1022 got -0x1.12bc4931e6p-1025 ulperr -8161980292530176.000 = -0x1.cff472p+52 + -0x1.fff76ap-2
src/math/special/fma.h:132: RN fmal(0x1.8ee3feb00c3e7p-1022,0x1.53bd9353313bcp-2,0x1.5501b57dc3b6fp-1022) want 0x1.d9598906f0bb3p-1022 got -0x1.4660b83f57p-1022 ulperr -14068955652030464.000 = -0x1.8fdd2p+53 + -0x1.ffae68p-2
src/math/special/fma.h:133: RN fmal(0x1.161225cfa61e2p-1022,0x1.b6dd69a0af5bp-2,0x1.924ffc3ead5c3p-1022) want 0x1.04be6fc25367bp-1021 got -0x1.f3ab56daa8p-1022 ulperr -8982192881401856.000 = -0x1.fe941cp+52 + -0x1.ffc18ap-2
src/math/special/fma.h:134: RN fmal(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022) want 0x1.70b6c3169f043p-1022 got -0x1.a779baefbe8p-1023 ulperr -10211413595258880.000 = -0x1.2239dp+53 + -0x1.ffcb1p-2
src/math/special/fma.h:135: RN fmal(0x1.ce0e2ea55040ep-1022,0x1.ce5a55fa3828dp-2,0x1.f2f444d50ce59p-1022) want 0x1.61ca36f5a8a79p-1021 got -0x1.173f0cea128p-1022 ulperr -8680214267691008.000 = -0x1.ed69bep+52 + -0x1.ffdd18p-2
src/math/special/fma.h:136: RN fmal(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022) want 0x1.1440cf1c105ebp-1021 got -0x1.f88fda6p-1030 ulperr -4877233864835072.000 = -0x1.153d18p+52 + -0x1.ffffcp-2
src/math/special/fma.h:137: RN fmal(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022) want 0x1.1186e1f77012dp-1021 got -0x1.2ffba526fcp-1025 ulperr -5146168610783232.000 = -0x1.24869cp+52 + -0x1.fffb4p-2
src/math/special/fma.h:138: RN fmal(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022) want 0x1.8d86310bad175p-1022 got -0x1.1b755c367f8p-1023 ulperr -9486646453993472.000 = -0x1.0da07p+53 + -0x1.ffdc92p-2
src/math/special/fma.h:139: RN fmal(0x1.fb3391a4b1d23p-1022,0x1.4d8705b057caep-2,0x1.d026cb6dae73bp-1022) want 0x1.3aad18b424c67p-1021 got -0x1.0a1784c7c6cp-1021 ulperr -10216978799132672.000 = -0x1.22624ep+53 + -0x1.ffbd7ap-2
src/math/special/fma.h:140: RN fmal(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022) want 0x1.c0048fd33a417p-1022 got -0x1.d026e457f1p-1024 ulperr -9922974329077760.000 = -0x1.1a0724p+53 + -0x1.ffe2fep-2
src/math/special/fma.h:141: RN fmal(0x1.aa9eff070281cp-1022,0x1.fab05661b48ebp-2,0x1.cbe2af6c69c6ep-1022) want 0x1.4f7ddbe122765p-1021 got 0x1.9e529858dap-1023 ulperr -4079821109854208.000 = -0x1.cfd26cp+51 + 0x1.ffe61ap-2
src/math/special/fma.h:142: RN fmal(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022) want 0x1.e0e762ee2e7c5p-1022 got -0x1.e2fe0f96ecp-1023 ulperr -12708596701724672.000 = -0x1.693336p+53 + -0x1.ffc3ap-2
src/math/special/fma.h:143: RN fmal(0x1.4dab43918a9a8p-1022,0x1.ed667442b4751p-2,0x1.3f25f82e02e3ep-1022) want 0x1.dfec0ee732dcbp-1022 got 0x1.6a41c4d18ap-1022 ulperr -2069987942465536.000 = -0x1.d6a928p+50 + 0x1.ffa57p-2
src/math/special/fma.h:144: RN fmal(0x1.7943735951931p-1022,0x1.fa6a357c5c9ddp-2,0x1.0bed44b0b71b4p-1022) want 0x1.c6803a6059abfp-1022 got 0x1.0e970cce134p-1022 ulperr -3235394032238592.000 = -0x1.6fd25cp+51 + 0x1.ffbc5ap-2
src/math/special/fma.h:145: RN fmal(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022) want 0x1.8640492c45959p-1022 got -0x1.3271a1b38p-1027 ulperr -7033839486500864.000 = -0x1.8fd3d6p+52 + -0x1.fffd9cp-2
src/math/special/fma.h:146: RN fmal(0x1.f52172c56bdf5p-1022,0x1.672b2de422734p-2,0x1.7bc5d708e5a34p-1022) want 0x1.15c5b95145cc7p-1021 got 0x1.3cf4f71d188p-1021 ulperr 689341647028224.000 = 0x1.3979eep+49 + 0x1.ffb0c2p-2
src/math/special/fma.h:147: RN fmal(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022) want 0x1.e7fa0dd76fbefp-1022 got -0x1.60a5d541bp-1024 ulperr -10135539776749568.000 = -0x1.2011c2p+53 + -0x1.ffe9f6p-2
src/math/special/fma.h:148: RN fmal(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022) want 0x1.b63a7f56fce1fp-1022 got -0x1.497a9bc52p-1024 ulperr -9158461560455168.000 = -0x1.044c94p+53 + -0x1.ffeb68p-2
src/math/special/fma.h:149: RN fmal(0x1.f73d5f4e81fd8p-1022,0x1.7ccff2642124ap-2,0x1.e7d836a0c8308p-1022) want 0x1.517f1763126d3p-1021 got -0x1.06939f3372p-1021 ulperr -10556597969354752.000 = -0x1.2c095cp+53 + -0x1.ffbe5cp-2
src/math/special/fma.h:150: RN fmal(0x1.b4328925969fbp-1022,0x1.8fa02832a22d5p-2,0x1.2084598e2f8c6p-1022) want 0x1.cabf43838dc51p-1022 got -0x1.7c61d65f0a4p-1022 ulperr -14762118276448256.000 = -0x1.a3908cp+53 + -0x1.ffa0e8p-2
src/math/special/fma.h:151: RN fmal(0x1.66ee60a92676fp-1022,0x1.eddd2e7681ce4p-2,0x1.b81d57daeb3a7p-1022) want 0x1.329c918ffb683p-1021 got 0x1.cd379885b8p-1025 ulperr -4886854591578112.000 = -0x1.15c918p+52 + 0x1.fff8ccp-2
src/math/special/fma.h:152: RN fmal(0x1.ff2737585895dp-1022,0x1.fb4bf3828ae4ap-2,0x1.4a866847740fp-1022) want 0x1.23e07e4dbbeabp-1021 got 0x1.46c53f7571p-1023 ulperr -3697601232764928.000 = -0x1.a45e5cp+51 + 0x1.ffeb94p-2
src/math/special/fma.h:153: RN fmal(0x1.5e2008d269a86p-1022,0x1.507bbbe4d78eep-2,0x1.6220c6f83f636p-1022) want 0x1.d52d9874f1c75p-1022 got 0x1.eda0503c4ap-1023 ulperr -3911886277967872.000 = -0x1.bcbaep+51 + 0x1.ffc24cp-2
src/math/special/fma.h:154: RN fmal(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022) want 0x1.9864925e2fb0fp-1022 got -0x1.53ae580e8cp-1025 ulperr -7931489798848512.000 = -0x1.c2da5ep+52 + -0x1.fff562p-2
src/math/special/fma.h:155: RN fmal(0x1.7b353b81e793dp-1022,0x1.82b426f874c6dp-2,0x1.d92b19d21fd5cp-1022) want 0x1.342fb0c544a79p-1021 got 0x1.2af4c8aebe4p-1022 ulperr -2792024021401600.000 = -0x1.3d6a98p+51 + 0x1.ffdaa2p-2
src/math/special/fma.h:156: RN fmal(0x1.5be667823370ap-1022,0x1.a8a99b163869bp-2,0x1.95456b68dc3bcp-1022) want 0x1.12c638de03c71p-1021 got 0x1.49af7fc787p-1023 ulperr -3383908364189696.000 = -0x1.80b4b2p+51 + 0x1.ffeb66p-2
src/math/special/fma.h:157: RN fmal(0x1.17b0fc6c850e5p-1022,0x1.d1d0a4853c315p-2,0x1.36b79f7c0c24p-1022) want 0x1.b5f2baff5635dp-1022 got 0x1.6a19304724p-1026 ulperr -7306334223466496.000 = -0x1.9f5128p+52 + 0x1.fffa58p-2
src/math/special/fma.h:158: RN fmal(0x1.bd97819bacfd8p-1022,0x1.2c25f267ba4eep-2,0x1.804b5204a3f3ap-1022) want 0x1.01739c190fd97p-1021 got 0x1.b9e166e6b4p-1022 ulperr -642314707927040.000 = -0x1.241746p+49 + 0x1.ffc8c4p-2
src/math/special/fma.h:159: RN fmal(0x1.596577053873dp-1022,0x1.3562ab2d29949p-2,0x1.b3f1ee75db6e7p-1022) want 0x1.0e268a498009bp-1021 got 0x1.e8136bc1594p-1022 ulperr -459377991483392.000 = -0x1.a1cd46p+48 + 0x1.ffc2fep-2
src/math/special/fma.h:160: RN fmal(0x1.3c7a68cf0f7b3p-1022,0x1.9a55c15b167bdp-2,0x1.7635b7b163c07p-1022) want 0x1.f5073b93b7b81p-1022 got 0x1.75f9a972138p-1023 ulperr -5524660993130496.000 = -0x1.3a0a66p+52 + 0x1.ffd14p-2
src/math/special/fma.h:161: RN fmal(0x1.5825164bc4068p-1022,0x1.dcbb6e5ff3245p-2,0x1.52fc3be0e84dap-1022) want 0x1.f334771c2dcfbp-1022 got 0x1.2b86ba6b02p-1022 ulperr -3512784226615296.000 = -0x1.8f5b7ap+51 + 0x1.ffb51ep-2
src/math/special/fma.h:162: RN fmal(0x1.139ea77b760ecp+1022,0x1.9b25f2fd017eap+2,-0x1.bc16788922b6fp+1023) want 0x1.b93aac527380fp+1023 got 0x1.c3ec4f2eep+1022 ulperr -3787028625883136.000 = -0x1.ae890ap+51 + 0x1.ffc782p-2
src/math/special/fma.h:163: RN fmal(0x1.0e6f9c1657d7cp+1022,0x1.4d5c6b55ab5f1p+2,-0x1.e027dd5742e2cp+1023) want 0x1.c0538372b4bbfp+1022 got 0x1.54dede6dep+1021 ulperr -4888708943708160.000 = -0x1.15e414p+52 + 0x1.ffd564p-2
src/math/special/fma.h:164: RN fmal(0x1.1182524fa411cp+1022,0x1.a3dba56842d19p+2,-0x1.c1ad59474d71fp+1023) want 0x1.bf78969300a77p+1023 got 0x1.8651491efp+1022 ulperr -4438724683235328.000 = -0x1.f89fe4p+51 + 0x1.ffcf36p-2
src/math/special/fma.h:165: RN fmal(0x1.1cbf4fb8ec82p+1022,0x1.5e32019a84fbbp+2,-0x1.985af08f32edep+1023) want 0x1.72af6bbad4a29p+1023 got 0x1.a68c1c1ecp+1023 ulperr 912367152005120.000 = 0x1.9ee584p+49 + 0x1.ff965cp-2
src/math/special/fma.h:166: RN fmal(0x1.311e25c6db346p+1022,0x1.4e30db6c4b51dp+2,-0x1.7681f7a9786a7p+1023) want 0x1.a61d29434fc13p+1023 got -0x1.791d1989p+1017 ulperr -7529566759288832.000 = -0x1.ac019ep+52 + -0x1.fffe86p-2
src/math/special/fma.h:167: RN fmal(0x1.1201cf577052fp+1022,0x1.59730b2db7a16p+2,-0x1.56f1a64a078d5p+1023) want 0x1.8c8d801df34d9p+1023 got -0x1.3048609fd8p+1022 ulperr -inf = -inf + -0x1.ffd9f6p-2
src/math/special/fma.h:168: RN fmal(0x1.3e52335b76e81p+1022,0x1.4dbd56f857479p+2,-0x1.509340c11bd2ep+1023) want 0x1.ed6576837f653p+1023 got -0x1.e498d5441cp+1022 ulperr -inf = -inf + -0x1.ffc36cp-2
src/math/special/fma.h:169: RN fmal(0x1.18566b4f843cbp+1022,0x1.444fba10eaf29p+2,-0x1.f927beae57f0ap+1023) want 0x1.9a433b9796559p+1022 got 0x1.a048d2820cp+1022 ulperr 105937222238208.000 = 0x1.8165bap+46 + -0x1.ff6812p-2
src/math/special/fma.h:170: RN fmal(0x1.3fbe544fe1be8p+1022,0x1.2d2a5fda03639p+2,-0x1.007407dbfd03cp+1023) want 0x1.efdb644b613e5p+1023 got -0x1.e14223656p+1022 ulperr -inf = -inf + -0x1.ffc3d8p-2
src/math/special/fma.h:171: RN fmal(0x1.263a0d3bc2e4p+1022,0x1.4cc198adbc651p+2,-0x1.734b1c1f7fdb8p+1023) want 0x1.899878afc0fa3p+1023 got 0x1.a13620448p+1023 ulperr 415454233362432.000 = 0x1.79da7ap+48 + 0x1.ff97b2p-2
src/math/special/fma.h:172: RN fmal(0x1.5bf4aec8efc8ep+1022,0x1.555f0341516c9p+2,-0x1.c706408acd14cp+1023) want 0x1.d8f5e18b868bdp+1023 got 0x1.3e5679fdf8p+1022 ulperr -5520279589617664.000 = -0x1.39caa4p+52 + 0x1.ffd836p-2
src/math/special/fma.h:173: RN fmal(0x1.1e57f1af78279p+1022,0x1.34bc0c7f082b3p+2,-0x1.497b92c1365edp+1023) want 0x1.692cb7ec68a93p+1023 got -0x1.c0a1f29b28p+1021 ulperr -8326959113175040.000 = -0x1.d95534p+52 + -0x1.ffe3f6p-2
src/math/special/fma.h:174: RN fmal(0x1.1d9824cd73511p+1022,0x1.1d557ddfe47ffp+2,-0x1.556cdb1d20a72p+1023) want 0x1.2736a6b6e35f3p+1023 got 0x1.bc6f9c9778p+1021 ulperr -3238800478175232.000 = -0x1.70358p+51 + 0x1.ffe43ap-2
src/math/special/fma.h:175: RN fmal(0x1.1ff85a24aff31p+1022,0x1.39ab374b2680dp+2,-0x1.35e6b07b651b8p+1023) want 0x1.8bc7ce2087081p+1023 got 0x1.84b319bafap+1023 ulperr -124568119279616.000 = -0x1.c52d1ap+46 + 0x1.ff9ed4p-2
src/math/special/fma.h:176: RN fmal(0x1.0449b3965227ep+1022,0x1.4430d4441f9f2p+2,-0x1.a6966c96307ep+1023) want 0x1.d94eda8c81771p+1022 got -0x1.992ed6b72p+1021 ulperr -11925733685329920.000 = -0x1.52f322p+53 + -0x1.ffccdap-2
src/math/special/fma.h:177: RN fmal(0x1.3c91fa00fd0c7p+1022,0x1.1b6661c0b0303p+2,-0x1.f1f2846b64483p+1023) want 0x1.95eae0d2644d3p+1022 got 0x1.9985d8eaap+1019 ulperr -6240425882943488.000 = -0x1.62ba26p+52 + -0x1.ff0cccp-2
src/math/special/fma.h:178: RN fmal(0x1.0979b36d46534p+1022,0x1.12fa205f41f7fp+2,-0x1.a83ecf4544a63p+1023) want 0x1.2420f34e2aa3dp+1022 got -0x1.335a0fe68p+1019 ulperr -5815056616914944.000 = -0x1.4a8c36p+52 + 0x1.ff099ap-2
src/math/special/fma.h:179: RN fmal(0x1.4c89df582a599p+1022,0x1.55f3dc473ea8fp+2,-0x1.e35037292ddfp+1023) want 0x1.95109fdbc3771p+1023 got -0x1.afa3b29624p+1022 ulperr -inf = -inf + -0x1.ffca0cp-2
src/math/special/fma.h:180: RN fmal(0x1.35ee0a669c4fbp+1022,0x1.2263cb63f386ap+2,-0x1.449218ae35ac7p+1023) want 0x1.7a8ed977d817bp+1023 got 0x1.47da9ddfb8p+1022 ulperr -3775828961787904.000 = -0x1.ad4316p+51 + 0x1.ffd704p-2
src/math/special/fma.h:181: RN fmal(0x1.117cc860f61bcp+1022,0x1.440985b25d994p+2,-0x1.d7a7d82000449p+1023) want 0x1.b960b7088e74fp+1022 got 0x1.ddfba372cp+1022 ulperr 643964982001664.000 = 0x1.24d764p+49 + -0x1.ff777ep-2
src/math/special/fma.h:182: RN fmal(0x1.1e78a37be320fp+1022,0x1.0db0fce62287bp+2,-0x1.376337da5eb53p+1023) want 0x1.24326b9956dfbp+1023 got -0x1.d2881b3596p+1023 ulperr -inf = -inf + -0x1.ff8b5ep-2
src/math/special/fma.h:183: RN fmal(0x1.0c79b5c8331c2p+1022,0x1.0aba6ea746b5p+2,-0x1.c86f1fcaf0741p+1023) want 0x1.9c135bb2cff85p+1021 got -0x1.cc298bacp+1019 ulperr -9273126449840128.000 = -0x1.078eep+53 + 0x1.fe1cc2p-2
src/math/special/fma.h:184: RN fmal(0x1.556c4c072f272p+1022,0x1.347758d7d4eb5p+2,-0x1.c6fe4f24b248dp+1023) want 0x1.6fcc9f756df6dp+1023 got -0x1.f6f4c76598p+1022 ulperr -inf = -inf + -0x1.ffc122p-2
src/math/special/fma.h:185: RN fmal(-0x1.e8349b891b2fp-1,0x1.4a6dec9b72578p-1,0x1.3b6151ce809ddp-1) want 0x1.3a62fe330b355p-11 got -0x1.d97121p-11 ulperr -13859627535958016.000 = -0x1.89ea1p+53 + -0x1.ff89a4p-2
src/math/special/fma.h:186: RN fmal(0x1.2996632ac7d74p-1,-0x1.bb3c58b654d94p-1,0x1.01a6660e64a31p-1) want 0x1.ed045bb956a8ep-15 got -0x1.070d62p-15 ulperr -13300911346548736.000 = -0x1.7a08dep+53 + -0x1.eabe3cp-2
src/math/special/fma.h:187: RN fmal(-0x1.c602e894c1df8p-1,0x1.a1c980e7d3f94p-1,0x1.7271244b43386p-1) want -0x1.ba251fe026e5bp-15 got -0x1.af2b6cp-15 ulperr 193081294979072.000 = 0x1.5f367cp+47 + 0x1.fa6bcap-2
src/math/special/fma.h:188: RN fmal(-0x1.c84baf47e85cp-1,0x1.770b5149ef2ep-1,0x1.4d80f139320bap-1) want -0x1.79277433b9e23p-10 got 0x1.d4b6fp-11 ulperr 10757822555881472.000 = 0x1.31c176p+53 + 0x1.ffc56ap-2
src/math/special/fma.h:189: RN fmal(-0x1.36e667dcf9c6p-1,0x1.2591f82556b88p-1,0x1.2452a0f795f95p-1) want 0x1.c83c8e63c159fp-3 got -0x1.221cccp-12 ulperr -8036166204915712.000 = -0x1.c8cd9cp+52 + -0x1.ffffdcp-2
src/math/special/fma.h:190: RN fmal(0x1.88b2cede61e4cp-1,-0x1.71dcab5ad9e9p-3,0x1.32b27fea2ae97p-3) want 0x1.70461909b25e2p-7 got -0x1.affe57fffffffp-17 ulperr -6486162973655040.000 = -0x1.70b218p+52 + -0x1.ffffe6p-2
src/math/special/fma.h:191: RN fmal(0x1.8d1e44002c98p-3,-0x1.af9fdfb347834p-1,0x1.e280942fb4146p-4) want -0x1.761ac23896dfdp-5 got 0x1.0bec48p-14 ulperr 6590522089013248.000 = 0x1.76a0b8p+52 + 0x1.ffffdep-2
src/math/special/fma.h:192: RN fmal(0x1.236e8cb9492c8p-1,-0x1.d37443a57f1c4p-1,0x1.ca10df801aabcp-4) want -0x1.a1a2cdf0138f9p-2 got 0x1.f090cab7p-5 ulperr 8439088898113536.000 = 0x1.dfb4e8p+52 + 0x1.fff07cp-2
src/math/special/fma.h:193: RN fmal(-0x1.6ad943e610fb8p-1,-0x1.cef92a7bb18bcp-1,0x1.f28587d8fb0ep-4) want 0x1.866b5204b9aecp-1 got -0x1.8c9eb9a7p-5 ulperr -7304415983697920.000 = -0x1.9f353ep+52 + -0x1.fff9cep-2
src/math/special/fma.h:194: RN fmal(-0x1.60a8569a5d894p-1,-0x1.ca07e29dd171cp-1,0x1.b6c475ace09ecp-4) want 0x1.72549291e2f7ap-1 got -0x1.b6fd181e8p-5 ulperr -6997593720619008.000 = -0x1.8dc464p+52 + -0x1.fff924p-2
src/math/special/fma.h:195: RN fmal(0x1.d1962720d678cp-1,-0x1.4548ee45c4084p-1,0x1.f416ab193d75cp-4) want -0x1.d2929879dc853p-2 got 0x1.fc38e6f4p-8 ulperr 8347731722502144.000 = 0x1.da837cp+52 + 0x1.fffe04p-2
src/math/special/fma.h:196: RN fmal(-0x1.9ddcb295a7d64p-1,0x1.67fb3a2068a78p-1,0x1.da9cd4597fe0ap-4) want -0x1.cf4f6eb4fc5d8p-2 got 0x1.59da5512p-6 ulperr 8530909930192896.000 = 0x1.e4ed14p+52 + 0x1.fffa98p-2
src/math/special/fma.h:197: RN fmal(0x1.c00d16ed45b88p+0,0x1.c787eddda3664p+0,0x1.1e3e6f0cc1802p-5) want 0x1.931b8f379dcc3p+1 got -0x1.63fb63b8p-6 ulperr -7140470639558656.000 = -0x1.95e386p+52 + -0x1.ffff4ep-2
src/math/special/fma.h:198: RN fmal(0x1.19c2a2372c184p+0,-0x1.cb506961c19fp+0,0x1.db1abf3f7ba3ap-6) want -0x1.f21c0eab0bc18p+0 got 0x1.a29607ffffff8p-13 ulperr 8763735812341760.000 = 0x1.f22924p+52 + 0x1.fffffcp-2
src/math/special/fma.h:199: RN fmal(-0x1.3a263218ccd1cp+0,-0x1.e818d390df27cp+0,0x1.2a81ed71785f5p-5) want 0x1.3025ab0f63925p+1 got -0x1.bfdf0b9cp-6 ulperr -5412168283455488.000 = -0x1.33a56ap+52 + -0x1.ffff2p-2
src/math/special/fma.h:200: RN fmal(0x1.b0b041fbaca58p+0,-0x1.9d5f76d178e6p+0,0x1.0215c7bb84cf9p-6) want -0x1.5b52aec7ef4p+1 got 0x1.6be7a78p-7 ulperr 6135177709355008.000 = 0x1.5cbe96p+52 + 0x1.ffffa6p-2
src/math/special/fma.h:201: RN fmal(-0x1.377549d9a87f4p+0,-0x1.a13d4a03dd6d8p+0,0x1.f190388bc5cc6p-7) want 0x1.ff83bebbd6fe4p+0 got -0x1.e5a6a44p-9 ulperr -9015347881443328.000 = -0x1.003b4ap+53 + -0x1.ffffc4p-2
src/math/special/fma.h:202: RN fmal(0x1.6a726c0762ac8p-1,-0x1.d32f2d30e483cp+0,0x1.f953eb70fbde6p-7) want -0x1.46c61b3070332p+0 got 0x1.e556e47fffffep-11 ulperr 5752835425697792.000 = 0x1.4702c6p+52 + 0x1.fffffp-2
src/math/special/fma.h:203: RN fmal(0x1.94cf2509d40cp-1,0x1.721976af6dfbp+0,0x1.f51a456921c3ep-7) want 0x1.28880842acc6p+0 got -0x1.effe1ep-8 ulperr -5250719389057024.000 = -0x1.2a7806p+52 + -0x1.ffff84p-2
src/math/special/fma.h:204: RN fmal(0x1.b128eb0ad8728p-1,0x1.7682566a54268p+0,0x1.bd4122a074cafp-8) want 0x1.3e9469530e762p+0 got -0x1.6fe0c7cp-9 ulperr -5617154187591680.000 = -0x1.3f4c5ap+52 + -0x1.ffffd2p-2
src/math/special/fma.h:205: RN fmal(0x1.c4ae75976e35cp+0,-0x1.11c329dd1160cp+0,0x1.9993f5e13c9bdp-8) want -0x1.e27d925b07cf1p+0 got 0x1.198edf6p-9 ulperr 8497737213411328.000 = 0x1.e30a5ap+52 + 0x1.ffffdcp-2
src/math/special/fma.h:206: RN fmal(-0x1.85f81f88fa3c4p+0,-0x1.17648a494fa18p-1,0x1.37d305113b48p-10) want 0x1.aa367b7490e57p-1 got -0x1.7a59ecffffffep-12 ulperr -7501265072291840.000 = -0x1.aa65c6p+52 + -0x1.fffff4p-2
src/math/special/fma.h:207: RN fmal(-0x1.311f2b4319efcp+0,0x1.abbb5272e3d18p-1,0x1.35841b7bdbcfep-10) want -0x1.fd337f24b39ep-1 got 0x1.4cbc317ffffffp-11 ulperr 8963677814259712.000 = 0x1.fd86aep+52 + 0x1.ffffecp-2
src/math/special/fma.h:208: RN fmal(0x1.ab94369a9a0dp-1,0x1.9d1e0e0aa3bacp+0,0x1.0a63ca87cfa78p-11) want 0x1.592173ee296b6p+0 got -0x1.fd8043ffffff8p-13 ulperr -6072697209487360.000 = -0x1.59316p+52 + -0x1.fffffcp-2
src/math/special/fma.h:250: RZ fmal(0x1p+0,0x1p+0,-0x1p-1074) want 0x1.fffffffffffffp-1 got -0x1.fffffp-43 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p+0
src/math/special/fma.h:251: bad fp exception: RZ fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022)=0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:251: RZ fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.fffffffffffffp-1022 got 0x0p+0 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x0p+0
src/math/special/fma.h:252: bad fp exception: RZ fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022)=0x1.ffffffffffffep-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:252: RZ fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.ffffffffffffep-1022 got -0x0p+0 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p+0
src/math/special/fma.h:253: bad fp exception: RZ fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:253: RZ fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.fffffffffffffp-1022 got -0x0p+0 ulperr 9007198717870080.000 = 0x1.fffffep+52 + 0x0p+0
src/math/special/fma.h:254: bad fp exception: RZ fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.ffffffffffffep-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:254: RZ fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.ffffffffffffep-1022 got 0x0p+0 ulperr 9007198717870080.000 = 0x1.fffffcp+52 + 0x1p+0
src/math/special/fma.h:255: RZ fmal(0x1p-1074,-0x1p-1074,0x1p-1074) want 0x0p+0 got -0x0p+0 ulperr inf = inf + -0x1p+0
src/math/special/fma.h:256: RZ fmal(0x1p-1074,-0x1p-1074,-0x1p-1074) want -0x1p-1074 got -0x0p+0 ulperr 1.000 = 0x1p+0 + 0x0p+0
src/math/special/fma.h:257: RZ fmal(0x1.0000000000001p+0,0x1p+0,0x1p+53) want 0x1p+53 got 0x1.000008p+12 ulperr -4503599358935040.000 = -0x1.fffffcp+51 + -0x1p-1
src/math/special/fma.h:258: RZ fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p+53) want 0x1p+53 got 0x1.ffc02p+10 ulperr -4503599358935040.000 = -0x1.fffffcp+51 + -0x1p-1
src/math/special/fma.h:259: RZ fmal(0x1p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp+53) want 0x1.fffffffffffffp+53 got -0x1.ffffep+10 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:260: RZ fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep+53) want 0x1.ffffffffffffep+53 got 0x1.ffc02p+10 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:261: RZ fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p-52) want 0x1.0000000000001p+0 got -0x1.fffffp-42 ulperr -4503599627370496.000 = -0x1.fffffep+51 + -0x1p-1
src/math/special/fma.h:262: RZ fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp-53) want 0x1.0000000000001p+0 got -0x1.fffff8p-41 ulperr -4503599627370496.000 = -0x1.fffffep+51 + -0x1p-1
src/math/special/fma.h:263: RZ fmal(0x1.0000000000005p+0,0x1.ffffffffffffbp-1,0x1p-52) want 0x1.0000000000003p+0 got -0x1.8fffff8p-37 ulperr -4503599627370496.000 = -0x1.fffffep+51 + -0x1p-1
src/math/special/fma.h:264: RZ fmal(0x1.0000000000006p+0,0x1.ffffffffffffdp-1,0x1p-52) want 0x1.0000000000005p+0 got -0x1.1fffff8p-37 ulperr -4503599627370496.000 = -0x1.fffffep+51 + -0x1p-1
src/math/special/fma.h:283: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff4p+0 got 0x1.6800008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:284: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1p+0) want 0x1.ffffffffffff8p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:285: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffff6p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:286: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffff4p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:287: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffff6p+0 got 0x1.f800008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:288: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffff4p+0 got 0x1.f800008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:289: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffff6p+0 got 0x1.2000004p-36 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:290: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffff4p+0 got 0x1.2000004p-36 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:291: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.fffffffffffffp-1) want 0x1.ffffffffffff6p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:292: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffff4p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:293: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff2p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:294: RZ fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep-1) want 0x1.fffffffffffffp+0 got -0x1.fffffp-42 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:295: RZ fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffp-42 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:296: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.fffffffffffffp-1) want 0x1.fffffffffffffp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:297: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:298: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:299: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1p+0) want 0x1.fffffffffffffp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:300: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:301: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:302: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:303: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:304: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffffdp+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:305: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffbp+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:306: RZ fmal(0x1.5872449b765b9p+0,0x1.c9acf91f8de2bp+0,0x1.9265607e4d168p+0) want 0x1.fd190c77c2a67p+1 got -0x1.b3fc37becffffp-4 ulperr -9195828849672192.000 = -0x1.055c74p+53 + -0x1.fffc98p-2
src/math/special/fma.h:307: RZ fmal(0x1.81d010b146d0ep+0,0x1.2d3c680dc9071p+0,0x1.a80b69538754cp+0) want 0x1.b7040b44973a6p+1 got 0x1.4d0cb20197p+1 ulperr -1864177136173056.000 = -0x1.a7dd62p+50 + -0x1.0029a2p-1
src/math/special/fma.h:308: RZ fmal(0x1.6a44f2252b6a2p+0,0x1.da452a378b832p+0,0x1.1fe2ce329104p+0) want 0x1.df842b6f48b12p+1 got 0x1.12e95c1ba4p+0 ulperr -6017591705337856.000 = -0x1.560f7ap+52 + -0x1.00112ep-1
src/math/special/fma.h:309: RZ fmal(0x1.096b1d26463eep+0,0x1.d846d3e34333p+0,0x1.721e3480922b8p+0) want 0x1.ade2909c0269fp+1 got -0x1.a139d9b2bffffp-1 ulperr -9397595675820032.000 = -0x1.0b188p+53 + -0x1.ffe5ecp-2
src/math/special/fma.h:310: RZ fmal(0x1.99bd3434c454bp+0,0x1.03cb8e4115bdep+0,0x1.109f107188b08p+0) want 0x1.5837a47d37faep+1 got 0x1.cfdec0c00ap+0 ulperr -1975290892910592.000 = -0x1.c1210ep+50 + -0x1.001cfep-1
src/math/special/fma.h:311: RZ fmal(0x1.ba930a0a78ed2p+0,0x1.8c24e8d67f636p+0,0x1.ac49dbfbf8affp+0) want 0x1.164947ae6a5d9p+2 got -0x1.33e3b04ecffffp-2 ulperr -5234191281160192.000 = -0x1.29878p+52 + -0x1.fffb3p-2
src/math/special/fma.h:312: RZ fmal(0x1.be224ad773191p+0,0x1.d96b77169731fp+0,0x1.662cfb75d8edep+0) want 0x1.27cd67e720f78p+2 got 0x1.e4711611c78p+1 ulperr -942615600037888.000 = -0x1.aca6e4p+49 + -0x1.001e48p-1
src/math/special/fma.h:313: RZ fmal(0x1.59e7a1b0bdb3cp+0,0x1.2decba4d46421p+0,0x1.88f4062e96df5p+0) want 0x1.90749e4794f79p+1 got -0x1.b3c84a9a87fffp-1 ulperr -8961479327875072.000 = -0x1.fd66aep+52 + -0x1.ffe4c4p-2
src/math/special/fma.h:314: RZ fmal(0x1.22edf4b4da9a7p+0,0x1.dfa8d65f506cdp+0,0x1.2799208da2fbap+0) want 0x1.a45a1e99ed7a8p+1 got 0x1.a0bdfb8976p-1 ulperr -5562059420860416.000 = -0x1.3c2a9cp+52 + -0x1.000d06p-1
src/math/special/fma.h:315: RZ fmal(0x1.ad5b991a2a279p+0,0x1.f02fd26706024p+0,0x1.831cdd5c8797cp+0) want 0x1.30d3a2ac90a6p+2 got 0x1.c7c15e1c82p+1 ulperr -1353701616779264.000 = -0x1.33cbccp+50 + -0x1.001c7cp-1
src/math/special/fma.h:316: RZ fmal(0x1.531f9620e764ap+0,0x1.cad61b54d4425p+0,0x1.df817cae8a9afp+0) want 0x1.0fd4e7f8671dcp+2 got 0x1.8e74e26059p+1 ulperr -1277252004216832.000 = -0x1.2269d8p+50 + -0x1.0018e8p-1
src/math/special/fma.h:317: RZ fmal(0x1.629a5ad79494fp+0,0x1.049e58693f4c4p+0,0x1.45b0109e4d00cp+0) want 0x1.5758154e14965p+1 got -0x1.01173c9c1ffffp-3 ulperr -6322846842224640.000 = -0x1.676986p+52 + -0x1.fffbfcp-2
src/math/special/fma.h:318: RZ fmal(0x1.2f52b53f9240ap+0,0x1.1d5c686dbb0dap+0,0x1.6da3e392a4fd4p+0) want 0x1.5fe03a6795912p+1 got 0x1.5bdb7d9084p+0 ulperr -3130480060792832.000 = -0x1.63e4f4p+51 + -0x1.0015bep-1
src/math/special/fma.h:319: RZ fmal(0x1.058667552b49ep+0,0x1.23307bacc1c42p+0,0x1.5b059b47cd8f5p+0) want 0x1.423f752486d13p+1 got -0x1.4bfb042743fffp+0 ulperr -8589175993401344.000 = -0x1.e83cf4p+52 + -0x1.ffd68p-2
src/math/special/fma.h:320: RZ fmal(0x1.a717d95337ed8p+0,0x1.2b1c37846aaadp+0,0x1.be65672f885b1p+0) want 0x1.d65e72303c075p+1 got -0x1.7e0573ec03fffp+1 ulperr -14995406941323264.000 = -0x1.aa31fp+53 + -0x1.ffa07ep-2
src/math/special/fma.h:321: RZ fmal(0x1.deb79287b3d32p+0,0x1.62776b829babap+0,0x1.67daf18bd2eb1p+0) want 0x1.ff5a0d45c69d6p+1 got 0x1.ad881652ap-3 ulperr -8523519902089216.000 = -0x1.e48188p+52 + -0x1.00035cp-1
src/math/special/fma.h:322: RZ fmal(0x1.fbf12d3a6de91p+0,0x1.879fe6124f11p+0,0x1.9f3f1247a8641p+0) want 0x1.2a126c6980018p+2 got 0x1.45e3d61a84p+2 ulperr 489379747332096.000 = 0x1.bd169ap+48 + -0x1.0028bcp-1
src/math/special/fma.h:323: RZ fmal(0x1.c589628460e01p+0,0x1.e1bec1c797533p+0,0x1.349f30cdb84bbp+0) want 0x1.2286118b6f6e5p+2 got -0x1.8e9d95e0667ffp+1 ulperr -8617206560587776.000 = -0x1.e9d4dap+52 + -0x1.ffce2cp-2
src/math/special/fma.h:324: RZ fmal(0x1.46fd6c2c924ebp+0,0x1.65e2f02e730a1p+0,0x1.37739d2751098p+0) want 0x1.804a71c1f1272p+1 got 0x1.855d7947cbp+0 ulperr -3335623268106240.000 = -0x1.7b3768p+51 + -0x1.001856p-1
src/math/special/fma.h:325: RZ fmal(0x1.f99e595ae11fdp+0,0x1.bd33d9a1d81bp+0,0x1.932a2a2e244c1p+0) want 0x1.409e34f8f2f89p+2 got -0x1.7a49668943fffp+2 ulperr -12295260860317696.000 = -0x1.5d73cap+53 + -0x1.ffa16ep-2
src/math/special/fma.h:326: RZ fmal(0x1.59ea1e56bfe55p+0,0x1.6f46b7d412a44p+0,0x1.80f2bc9a32cc3p+0) want 0x1.b89c7640e32ffp+1 got -0x1.ca180bfb5ffffp-3 ulperr -8254993178034176.000 = -0x1.d53df4p+52 + -0x1.fff8d8p-2
src/math/special/fma.h:327: RZ fmal(0x1.61490fcb44129p+0,0x1.0038ec4fc35c2p+0,0x1.df7436ed7a7b7p+0) want 0x1.a085ea68d05cfp+1 got -0x1.5ed2c690f6fffp+1 ulperr -13499301254660096.000 = -0x1.7fac56p+53 + -0x1.ffa84cp-2
src/math/special/fma.h:328: RZ fmal(0x1.d41b98788502bp+0,0x1.1a7b77843aca6p+0,0x1.05be891837d36p+0) want 0x1.8523596ceced9p+1 got -0x1.48c8fc403bfffp-1 ulperr -8291801584631808.000 = -0x1.d75596p+52 + -0x1.ffeb74p-2
src/math/special/fma.h:329: RZ fmal(0x1.3153cf6f69af9p+0,0x1.aaa947e38e57ap+0,0x1.8519f9b590645p+0) want 0x1.c0fcab7b46368p+1 got 0x1.25f4f4bd5p-3 ulperr -7575453653008384.000 = -0x1.ae9d5ap+52 + -0x1.00024cp-1
src/math/special/fma.h:330: RZ fmal(0x1.c25a1f73581aap+0,0x1.0a51ffca372ap+0,0x1.0c77e3ebac5f3p+0) want 0x1.707ce48c7d72dp+1 got -0x1.3261c9a0dffffp+1 ulperr -11872435288670208.000 = -0x1.516f54p+53 + -0x1.ffb368p-2
src/math/special/fma.h:331: RZ fmal(0x1.829c2cde44b7p+0,0x1.f692e86d8cb36p+0,0x1.455e72d264bfp+0) want 0x1.0f16a3b8b3f97p+2 got -0x1.684386465ffffp+0 ulperr -6353494655107072.000 = -0x1.692782p+52 + -0x1.ffe97cp-2
src/math/special/fma.h:332: RZ fmal(0x1.94729588dcc69p+0,0x1.c3bb794c6edf8p+0,0x1.9da4e94d262d2p+0) want 0x1.19d4bd84d9fd2p+2 got 0x1.e1b9a2757p-1 ulperr -3898698849320960.000 = -0x1.bb3b1p+51 + -0x1.000786p-1
src/math/special/fma.h:333: RZ fmal(0x1.e6a5e7e39c3d5p+0,0x1.1b69af2bdd978p+0,0x1.e7ef1eafa119cp+0) want 0x1.00ac5b44c9f31p+2 got -0x1.6777d5d393fffp+1 ulperr -7677358731427840.000 = -0x1.b46844p+52 + -0x1.ffd312p-2
src/math/special/fma.h:334: bad fp exception: RZ fmal(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022)=0x1.b594d0e4368efp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:334: RZ fmal(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022) want 0x1.b594d0e4368efp-1022 got -0x1.9dedc9560fffep-1023 ulperr -11338968138252288.000 = -0x1.4245d8p+53 + -0x1.ffcc42p-2
src/math/special/fma.h:335: RZ fmal(0x1.022db53c98d14p-1022,0x1.21157eef74848p-2,0x1.2f880432b1bc1p-1022) want 0x1.786ad60a02b3dp-1022 got -0x1.150255ac97fffp-1022 ulperr -11495198647386112.000 = -0x1.46b692p+53 + -0x1.ffbacp-2
src/math/special/fma.h:336: bad fp exception: RZ fmal(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022)=0x1.cbb085199a3f5p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:336: RZ fmal(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022) want 0x1.cbb085199a3f5p-1022 got -0x1.6ed115da2f7fep-1023 ulperr -11313497908445184.000 = -0x1.418c86p+53 + -0x1.ffd226p-2
src/math/special/fma.h:337: RZ fmal(0x1.adbc3a9d816dep-1022,0x1.e039d4431e3cdp-2,0x1.93ceef6fe18a2p-1022) want 0x1.2eabb7dc0e2fp-1021 got 0x1.ef7b6794e3p-1023 ulperr -3145487213395968.000 = -0x1.6599b8p+51 + -0x1.000f7cp-1
src/math/special/fma.h:338: RZ fmal(0x1.645aa5c2df3afp-1022,0x1.649edfcad854fp-2,0x1.8b43e0bbaeb01p-1022) want 0x1.03af571d2b504p-1021 got 0x1.0ce86163c02p-1021 ulperr 162249436037120.000 = 0x1.272148p+47 + -0x1.00219ep-1
src/math/special/fma.h:339: bad fp exception: RZ fmal(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022)=0x1.ad9ce7fcefa3fp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:339: RZ fmal(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022) want 0x1.ad9ce7fcefa3fp-1022 got -0x1.12bc4931e5ff8p-1025 ulperr -8161979755659264.000 = -0x1.cff46ep+52 + -0x1.fff76ap-2
src/math/special/fma.h:340: RZ fmal(0x1.8ee3feb00c3e7p-1022,0x1.53bd9353313bcp-2,0x1.5501b57dc3b6fp-1022) want 0x1.d9598906f0bb3p-1022 got -0x1.4660b83f56fffp-1022 ulperr -14068955652030464.000 = -0x1.8fdd1ep+53 + -0x1.ffae68p-2
src/math/special/fma.h:341: RZ fmal(0x1.161225cfa61e2p-1022,0x1.b6dd69a0af5bp-2,0x1.924ffc3ead5c3p-1022) want 0x1.04be6fc25367bp-1021 got -0x1.f3ab56daa7fffp-1022 ulperr -8982192344530944.000 = -0x1.fe9418p+52 + -0x1.ffc18ap-2
src/math/special/fma.h:342: bad fp exception: RZ fmal(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022)=0x1.70b6c3169f043p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:342: RZ fmal(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022) want 0x1.70b6c3169f043p-1022 got -0x1.a779baefbe7fep-1023 ulperr -10211413595258880.000 = -0x1.2239cep+53 + -0x1.ffcb1p-2
src/math/special/fma.h:343: RZ fmal(0x1.ce0e2ea55040ep-1022,0x1.ce5a55fa3828dp-2,0x1.f2f444d50ce59p-1022) want 0x1.61ca36f5a8a79p-1021 got -0x1.173f0cea127ffp-1022 ulperr -8680213730820096.000 = -0x1.ed69bap+52 + -0x1.ffdd18p-2
src/math/special/fma.h:344: bad fp exception: RZ fmal(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022)=0x1.1440cf1c105ebp-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:344: RZ fmal(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022) want 0x1.1440cf1c105ebp-1021 got -0x1.f88fda5ffffp-1030 ulperr -4877233327964160.000 = -0x1.153d14p+52 + -0x1.ffffcp-2
src/math/special/fma.h:345: bad fp exception: RZ fmal(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022)=0x1.1186e1f77012dp-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:345: RZ fmal(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022) want 0x1.1186e1f77012dp-1021 got -0x1.2ffba526fbff8p-1025 ulperr -5146168610783232.000 = -0x1.24869ap+52 + -0x1.fffb4p-2
src/math/special/fma.h:346: bad fp exception: RZ fmal(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022)=0x1.8d86310bad175p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:346: RZ fmal(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022) want 0x1.8d86310bad175p-1022 got -0x1.1b755c367f7fep-1023 ulperr -9486645380251648.000 = -0x1.0da06cp+53 + -0x1.ffdc92p-2
src/math/special/fma.h:347: RZ fmal(0x1.fb3391a4b1d23p-1022,0x1.4d8705b057caep-2,0x1.d026cb6dae73bp-1022) want 0x1.3aad18b424c67p-1021 got -0x1.0a1784c7c6bffp-1021 ulperr -10216978799132672.000 = -0x1.22624cp+53 + -0x1.ffbd7ap-2
src/math/special/fma.h:348: bad fp exception: RZ fmal(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022)=0x1.c0048fd33a417p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:348: RZ fmal(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022) want 0x1.c0048fd33a417p-1022 got -0x1.d026e457f0ffcp-1024 ulperr -9922974329077760.000 = -0x1.1a0722p+53 + -0x1.ffe2fep-2
src/math/special/fma.h:349: RZ fmal(0x1.aa9eff070281cp-1022,0x1.fab05661b48ebp-2,0x1.cbe2af6c69c6ep-1022) want 0x1.4f7ddbe122764p-1021 got 0x1.9e529858dap-1023 ulperr -4079820841418752.000 = -0x1.cfd268p+51 + -0x1.000cf2p-1
src/math/special/fma.h:350: bad fp exception: RZ fmal(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022)=0x1.e0e762ee2e7c5p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:350: RZ fmal(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022) want 0x1.e0e762ee2e7c5p-1022 got -0x1.e2fe0f96ebffep-1023 ulperr -12708595627982848.000 = -0x1.693332p+53 + -0x1.ffc3ap-2
src/math/special/fma.h:351: RZ fmal(0x1.4dab43918a9a8p-1022,0x1.ed667442b4751p-2,0x1.3f25f82e02e3ep-1022) want 0x1.dfec0ee732dcap-1022 got 0x1.6a41c4d18ap-1022 ulperr -2069987942465536.000 = -0x1.d6a926p+50 + -0x1.002d48p-1
src/math/special/fma.h:352: RZ fmal(0x1.7943735951931p-1022,0x1.fa6a357c5c9ddp-2,0x1.0bed44b0b71b4p-1022) want 0x1.c6803a6059abep-1022 got 0x1.0e970cce134p-1022 ulperr -3235393763803136.000 = -0x1.6fd258p+51 + -0x1.0021d2p-1
src/math/special/fma.h:353: bad fp exception: RZ fmal(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022)=0x1.8640492c45959p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:353: RZ fmal(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022) want 0x1.8640492c45959p-1022 got -0x1.3271a1b37ffep-1027 ulperr -7033839486500864.000 = -0x1.8fd3d4p+52 + -0x1.fffd9cp-2
src/math/special/fma.h:354: RZ fmal(0x1.f52172c56bdf5p-1022,0x1.672b2de422734p-2,0x1.7bc5d708e5a34p-1022) want 0x1.15c5b95145cc6p-1021 got 0x1.3cf4f71d188p-1021 ulperr 689341647028224.000 = 0x1.3979eep+49 + -0x1.00279ep-1
src/math/special/fma.h:355: bad fp exception: RZ fmal(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022)=0x1.e7fa0dd76fbefp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:355: RZ fmal(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022) want 0x1.e7fa0dd76fbefp-1022 got -0x1.60a5d541afffcp-1024 ulperr -10135538703007744.000 = -0x1.2011bep+53 + -0x1.ffe9f6p-2
src/math/special/fma.h:356: bad fp exception: RZ fmal(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022)=0x1.b63a7f56fce1fp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:356: RZ fmal(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022) want 0x1.b63a7f56fce1fp-1022 got -0x1.497a9bc51fffcp-1024 ulperr -9158460486713344.000 = -0x1.044c9p+53 + -0x1.ffeb68p-2
src/math/special/fma.h:357: RZ fmal(0x1.f73d5f4e81fd8p-1022,0x1.7ccff2642124ap-2,0x1.e7d836a0c8308p-1022) want 0x1.517f1763126d3p-1021 got -0x1.06939f3371fffp-1021 ulperr -10556596895612928.000 = -0x1.2c0958p+53 + -0x1.ffbe5cp-2
src/math/special/fma.h:358: RZ fmal(0x1.b4328925969fbp-1022,0x1.8fa02832a22d5p-2,0x1.2084598e2f8c6p-1022) want 0x1.cabf43838dc51p-1022 got -0x1.7c61d65f0a3ffp-1022 ulperr -14762118276448256.000 = -0x1.a3908ap+53 + -0x1.ffa0e8p-2
src/math/special/fma.h:359: RZ fmal(0x1.66ee60a92676fp-1022,0x1.eddd2e7681ce4p-2,0x1.b81d57daeb3a7p-1022) want 0x1.329c918ffb682p-1021 got 0x1.cd379885b8p-1025 ulperr -4886854591578112.000 = -0x1.15c916p+52 + -0x1.00039ap-1
src/math/special/fma.h:360: RZ fmal(0x1.ff2737585895dp-1022,0x1.fb4bf3828ae4ap-2,0x1.4a866847740fp-1022) want 0x1.23e07e4dbbeaap-1021 got 0x1.46c53f7571p-1023 ulperr -3697601232764928.000 = -0x1.a45e5ap+51 + -0x1.000a36p-1
src/math/special/fma.h:361: RZ fmal(0x1.5e2008d269a86p-1022,0x1.507bbbe4d78eep-2,0x1.6220c6f83f636p-1022) want 0x1.d52d9874f1c74p-1022 got 0x1.eda0503c4ap-1023 ulperr -3911886277967872.000 = -0x1.bcbadep+51 + -0x1.001edap-1
src/math/special/fma.h:362: bad fp exception: RZ fmal(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022)=0x1.9864925e2fb0fp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:362: RZ fmal(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022) want 0x1.9864925e2fb0fp-1022 got -0x1.53ae580e8bff8p-1025 ulperr -7931489261977600.000 = -0x1.c2da5ap+52 + -0x1.fff562p-2
src/math/special/fma.h:363: RZ fmal(0x1.7b353b81e793dp-1022,0x1.82b426f874c6dp-2,0x1.d92b19d21fd5cp-1022) want 0x1.342fb0c544a78p-1021 got 0x1.2af4c8aebe4p-1022 ulperr -2792024021401600.000 = -0x1.3d6a96p+51 + -0x1.0012bp-1
src/math/special/fma.h:364: RZ fmal(0x1.5be667823370ap-1022,0x1.a8a99b163869bp-2,0x1.95456b68dc3bcp-1022) want 0x1.12c638de03c7p-1021 got 0x1.49af7fc787p-1023 ulperr -3383908095754240.000 = -0x1.80b4aep+51 + -0x1.000a4ep-1
src/math/special/fma.h:365: RZ fmal(0x1.17b0fc6c850e5p-1022,0x1.d1d0a4853c315p-2,0x1.36b79f7c0c24p-1022) want 0x1.b5f2baff5635cp-1022 got 0x1.6a19304724p-1026 ulperr -7306333686595584.000 = -0x1.9f5124p+52 + -0x1.0002d4p-1
src/math/special/fma.h:366: RZ fmal(0x1.bd97819bacfd8p-1022,0x1.2c25f267ba4eep-2,0x1.804b5204a3f3ap-1022) want 0x1.01739c190fd96p-1021 got 0x1.b9e166e6b4p-1022 ulperr -642314640818176.000 = -0x1.241742p+49 + -0x1.001b9ep-1
src/math/special/fma.h:367: RZ fmal(0x1.596577053873dp-1022,0x1.3562ab2d29949p-2,0x1.b3f1ee75db6e7p-1022) want 0x1.0e268a498009ap-1021 got 0x1.e8136bc1594p-1022 ulperr -459377991483392.000 = -0x1.a1cd44p+48 + -0x1.001e82p-1
src/math/special/fma.h:368: RZ fmal(0x1.3c7a68cf0f7b3p-1022,0x1.9a55c15b167bdp-2,0x1.7635b7b163c07p-1022) want 0x1.f5073b93b7b8p-1022 got 0x1.75f9a972138p-1023 ulperr -5524660993130496.000 = -0x1.3a0a64p+52 + -0x1.00176p-1
src/math/special/fma.h:369: RZ fmal(0x1.5825164bc4068p-1022,0x1.dcbb6e5ff3245p-2,0x1.52fc3be0e84dap-1022) want 0x1.f334771c2dcfap-1022 got 0x1.2b86ba6b02p-1022 ulperr -3512783958179840.000 = -0x1.8f5b76p+51 + -0x1.00257p-1
src/math/special/fma.h:370: RZ fmal(0x1.139ea77b760ecp+1022,0x1.9b25f2fd017eap+2,-0x1.bc16788922b6fp+1023) want 0x1.b93aac527380ep+1023 got 0x1.c3ec4f2eep+1022 ulperr -3787028357447680.000 = -0x1.ae8906p+51 + -0x1.001c3ep-1
src/math/special/fma.h:371: RZ fmal(0x1.0e6f9c1657d7cp+1022,0x1.4d5c6b55ab5f1p+2,-0x1.e027dd5742e2cp+1023) want 0x1.c0538372b4bbep+1022 got 0x1.54dede6dep+1021 ulperr -4888708943708160.000 = -0x1.15e412p+52 + -0x1.00154ep-1
src/math/special/fma.h:372: RZ fmal(0x1.1182524fa411cp+1022,0x1.a3dba56842d19p+2,-0x1.c1ad59474d71fp+1023) want 0x1.bf78969300a76p+1023 got 0x1.8651491efp+1022 ulperr -4438724683235328.000 = -0x1.f89fe2p+51 + -0x1.001866p-1
src/math/special/fma.h:373: RZ fmal(0x1.1cbf4fb8ec82p+1022,0x1.5e32019a84fbbp+2,-0x1.985af08f32edep+1023) want 0x1.72af6bbad4a28p+1023 got 0x1.a68c1c1ecp+1023 ulperr 912367084896256.000 = 0x1.9ee582p+49 + -0x1.0034d2p-1
src/math/special/fma.h:374: RZ fmal(0x1.311e25c6db346p+1022,0x1.4e30db6c4b51dp+2,-0x1.7681f7a9786a7p+1023) want 0x1.a61d29434fc13p+1023 got -0x1.791d1988fffffp+1017 ulperr -7529566222417920.000 = -0x1.ac019ap+52 + -0x1.fffe86p-2
src/math/special/fma.h:375: RZ fmal(0x1.1201cf577052fp+1022,0x1.59730b2db7a16p+2,-0x1.56f1a64a078d5p+1023) want 0x1.8c8d801df34d9p+1023 got -0x1.3048609fd7fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ffd9f6p-2
src/math/special/fma.h:376: RZ fmal(0x1.3e52335b76e81p+1022,0x1.4dbd56f857479p+2,-0x1.509340c11bd2ep+1023) want 0x1.ed6576837f653p+1023 got -0x1.e498d5441bfffp+1022 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ffc36cp-2
src/math/special/fma.h:377: RZ fmal(0x1.18566b4f843cbp+1022,0x1.444fba10eaf29p+2,-0x1.f927beae57f0ap+1023) want 0x1.9a433b9796559p+1022 got 0x1.a048d2820cp+1022 ulperr 105937222238208.000 = 0x1.8165bap+46 + -0x1.ff6812p-2
src/math/special/fma.h:378: RZ fmal(0x1.3fbe544fe1be8p+1022,0x1.2d2a5fda03639p+2,-0x1.007407dbfd03cp+1023) want 0x1.efdb644b613e5p+1023 got -0x1.e14223655ffffp+1022 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ffc3d8p-2
src/math/special/fma.h:379: RZ fmal(0x1.263a0d3bc2e4p+1022,0x1.4cc198adbc651p+2,-0x1.734b1c1f7fdb8p+1023) want 0x1.899878afc0fa2p+1023 got 0x1.a13620448p+1023 ulperr 415454199808000.000 = 0x1.79da78p+48 + -0x1.003426p-1
src/math/special/fma.h:380: RZ fmal(0x1.5bf4aec8efc8ep+1022,0x1.555f0341516c9p+2,-0x1.c706408acd14cp+1023) want 0x1.d8f5e18b868bcp+1023 got 0x1.3e5679fdf8p+1022 ulperr -5520279589617664.000 = -0x1.39caa2p+52 + -0x1.0013e6p-1
src/math/special/fma.h:381: RZ fmal(0x1.1e57f1af78279p+1022,0x1.34bc0c7f082b3p+2,-0x1.497b92c1365edp+1023) want 0x1.692cb7ec68a93p+1023 got -0x1.c0a1f29b27fffp+1021 ulperr -8326959113175040.000 = -0x1.d95532p+52 + -0x1.ffe3f6p-2
src/math/special/fma.h:382: RZ fmal(0x1.1d9824cd73511p+1022,0x1.1d557ddfe47ffp+2,-0x1.556cdb1d20a72p+1023) want 0x1.2736a6b6e35f2p+1023 got 0x1.bc6f9c9778p+1021 ulperr -3238800209739776.000 = -0x1.70357cp+51 + -0x1.000de4p-1
src/math/special/fma.h:383: RZ fmal(0x1.1ff85a24aff31p+1022,0x1.39ab374b2680dp+2,-0x1.35e6b07b651b8p+1023) want 0x1.8bc7ce208708p+1023 got 0x1.84b319bafap+1023 ulperr -124568110891008.000 = -0x1.c52d16p+46 + -0x1.003096p-1
src/math/special/fma.h:384: RZ fmal(0x1.0449b3965227ep+1022,0x1.4430d4441f9f2p+2,-0x1.a6966c96307ep+1023) want 0x1.d94eda8c81771p+1022 got -0x1.992ed6b71ffffp+1021 ulperr -11925733685329920.000 = -0x1.52f32p+53 + -0x1.ffccdap-2
src/math/special/fma.h:385: RZ fmal(0x1.3c91fa00fd0c7p+1022,0x1.1b6661c0b0303p+2,-0x1.f1f2846b64483p+1023) want 0x1.95eae0d2644d3p+1022 got 0x1.9985d8eaap+1019 ulperr -6240425346072576.000 = -0x1.62ba22p+52 + -0x1.ff0cccp-2
src/math/special/fma.h:386: RZ fmal(0x1.0979b36d46534p+1022,0x1.12fa205f41f7fp+2,-0x1.a83ecf4544a63p+1023) want 0x1.2420f34e2aa3cp+1022 got -0x1.335a0fe67ffffp+1019 ulperr -5815056080044032.000 = -0x1.4a8c32p+52 + -0x1.007b32p-1
src/math/special/fma.h:387: RZ fmal(0x1.4c89df582a599p+1022,0x1.55f3dc473ea8fp+2,-0x1.e35037292ddfp+1023) want 0x1.95109fdbc3771p+1023 got -0x1.afa3b29623fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ffca0cp-2
src/math/special/fma.h:388: RZ fmal(0x1.35ee0a669c4fbp+1022,0x1.2263cb63f386ap+2,-0x1.449218ae35ac7p+1023) want 0x1.7a8ed977d817ap+1023 got 0x1.47da9ddfb8p+1022 ulperr -3775828693352448.000 = -0x1.ad4312p+51 + -0x1.00147ep-1
src/math/special/fma.h:389: RZ fmal(0x1.117cc860f61bcp+1022,0x1.440985b25d994p+2,-0x1.d7a7d82000449p+1023) want 0x1.b960b7088e74fp+1022 got 0x1.ddfba372cp+1022 ulperr 643964914892800.000 = 0x1.24d762p+49 + -0x1.ff777ep-2
src/math/special/fma.h:390: RZ fmal(0x1.1e78a37be320fp+1022,0x1.0db0fce62287bp+2,-0x1.376337da5eb53p+1023) want 0x1.24326b9956dfbp+1023 got -0x1.d2881b3595fffp+1023 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ff8b5ep-2
src/math/special/fma.h:391: RZ fmal(0x1.0c79b5c8331c2p+1022,0x1.0aba6ea746b5p+2,-0x1.c86f1fcaf0741p+1023) want 0x1.9c135bb2cff84p+1021 got -0x1.cc298babfffffp+1019 ulperr -9273125376098304.000 = -0x1.078edcp+53 + -0x1.00f19ep-1
src/math/special/fma.h:392: RZ fmal(0x1.556c4c072f272p+1022,0x1.347758d7d4eb5p+2,-0x1.c6fe4f24b248dp+1023) want 0x1.6fcc9f756df6dp+1023 got -0x1.f6f4c76597fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ffc122p-2
src/math/special/fma.h:393: RZ fmal(-0x1.e8349b891b2fp-1,0x1.4a6dec9b72578p-1,0x1.3b6151ce809ddp-1) want 0x1.3a62fe330b355p-11 got -0x1.d97120fffffffp-11 ulperr -13859626462216192.000 = -0x1.89ea0cp+53 + -0x1.ff89a4p-2
src/math/special/fma.h:394: RZ fmal(0x1.2996632ac7d74p-1,-0x1.bb3c58b654d94p-1,0x1.01a6660e64a31p-1) want 0x1.ed045bb956a8ep-15 got -0x1.070d61fffffffp-15 ulperr -13300911346548736.000 = -0x1.7a08dcp+53 + -0x1.eabe3cp-2
src/math/special/fma.h:395: RZ fmal(-0x1.c602e894c1df8p-1,0x1.a1c980e7d3f94p-1,0x1.7271244b43386p-1) want -0x1.ba251fe026e5bp-15 got -0x1.af2b6cp-15 ulperr 193081294979072.000 = 0x1.5f367ap+47 + 0x1.fa6bcap-2
src/math/special/fma.h:396: RZ fmal(-0x1.c84baf47e85cp-1,0x1.770b5149ef2ep-1,0x1.4d80f139320bap-1) want -0x1.79277433b9e23p-10 got 0x1.d4b6effffffffp-11 ulperr 10757822555881472.000 = 0x1.31c174p+53 + 0x1.ffc56ap-2
src/math/special/fma.h:397: RZ fmal(-0x1.36e667dcf9c6p-1,0x1.2591f82556b88p-1,0x1.2452a0f795f95p-1) want 0x1.c83c8e63c159fp-3 got -0x1.221ccbfffffffp-12 ulperr -8036166204915712.000 = -0x1.c8cd9ap+52 + -0x1.ffffdcp-2
src/math/special/fma.h:398: RZ fmal(0x1.88b2cede61e4cp-1,-0x1.71dcab5ad9e9p-3,0x1.32b27fea2ae97p-3) want 0x1.70461909b25e2p-7 got -0x1.affe57fffffffp-17 ulperr -6486162973655040.000 = -0x1.70b216p+52 + -0x1.ffffe6p-2
src/math/special/fma.h:399: RZ fmal(0x1.8d1e44002c98p-3,-0x1.af9fdfb347834p-1,0x1.e280942fb4146p-4) want -0x1.761ac23896dfdp-5 got 0x1.0bec47fffffffp-14 ulperr 6590522089013248.000 = 0x1.76a0b6p+52 + 0x1.ffffdep-2
src/math/special/fma.h:400: RZ fmal(0x1.236e8cb9492c8p-1,-0x1.d37443a57f1c4p-1,0x1.ca10df801aabcp-4) want -0x1.a1a2cdf0138f9p-2 got 0x1.f090cab6fffffp-5 ulperr 8439088361242624.000 = 0x1.dfb4e4p+52 + 0x1.fff07cp-2
src/math/special/fma.h:401: RZ fmal(-0x1.6ad943e610fb8p-1,-0x1.cef92a7bb18bcp-1,0x1.f28587d8fb0ep-4) want 0x1.866b5204b9aecp-1 got -0x1.8c9eb9a6fffffp-5 ulperr -7304415446827008.000 = -0x1.9f353ap+52 + -0x1.fff9cep-2
src/math/special/fma.h:402: RZ fmal(-0x1.60a8569a5d894p-1,-0x1.ca07e29dd171cp-1,0x1.b6c475ace09ecp-4) want 0x1.72549291e2f7ap-1 got -0x1.b6fd181e7ffffp-5 ulperr -6997593720619008.000 = -0x1.8dc462p+52 + -0x1.fff924p-2
src/math/special/fma.h:403: RZ fmal(0x1.d1962720d678cp-1,-0x1.4548ee45c4084p-1,0x1.f416ab193d75cp-4) want -0x1.d2929879dc853p-2 got 0x1.fc38e6f3fffffp-8 ulperr 8347731722502144.000 = 0x1.da837ap+52 + 0x1.fffe04p-2
src/math/special/fma.h:404: RZ fmal(-0x1.9ddcb295a7d64p-1,0x1.67fb3a2068a78p-1,0x1.da9cd4597fe0ap-4) want -0x1.cf4f6eb4fc5d8p-2 got 0x1.59da5511fffffp-6 ulperr 8530909930192896.000 = 0x1.e4ed12p+52 + 0x1.fffa98p-2
src/math/special/fma.h:405: RZ fmal(0x1.c00d16ed45b88p+0,0x1.c787eddda3664p+0,0x1.1e3e6f0cc1802p-5) want 0x1.931b8f379dcc3p+1 got -0x1.63fb63b7fffffp-6 ulperr -7140470102687744.000 = -0x1.95e382p+52 + -0x1.ffff4ep-2
src/math/special/fma.h:406: RZ fmal(0x1.19c2a2372c184p+0,-0x1.cb506961c19fp+0,0x1.db1abf3f7ba3ap-6) want -0x1.f21c0eab0bc18p+0 got 0x1.a29607ffffff8p-13 ulperr 8763735275470848.000 = 0x1.f2292p+52 + 0x1.fffffcp-2
src/math/special/fma.h:407: RZ fmal(-0x1.3a263218ccd1cp+0,-0x1.e818d390df27cp+0,0x1.2a81ed71785f5p-5) want 0x1.3025ab0f63925p+1 got -0x1.bfdf0b9bfffffp-6 ulperr -5412167746584576.000 = -0x1.33a566p+52 + -0x1.ffff2p-2
src/math/special/fma.h:408: RZ fmal(0x1.b0b041fbaca58p+0,-0x1.9d5f76d178e6p+0,0x1.0215c7bb84cf9p-6) want -0x1.5b52aec7ef4p+1 got 0x1.6be7a77ffffffp-7 ulperr 6135177709355008.000 = 0x1.5cbe94p+52 + 0x1.ffffa6p-2
src/math/special/fma.h:409: RZ fmal(-0x1.377549d9a87f4p+0,-0x1.a13d4a03dd6d8p+0,0x1.f190388bc5cc6p-7) want 0x1.ff83bebbd6fe4p+0 got -0x1.e5a6a43ffffffp-9 ulperr -9015346807701504.000 = -0x1.003b46p+53 + -0x1.ffffc4p-2
src/math/special/fma.h:410: RZ fmal(0x1.6a726c0762ac8p-1,-0x1.d32f2d30e483cp+0,0x1.f953eb70fbde6p-7) want -0x1.46c61b3070332p+0 got 0x1.e556e47fffffep-11 ulperr 5752835425697792.000 = 0x1.4702c4p+52 + 0x1.fffffp-2
src/math/special/fma.h:411: RZ fmal(0x1.94cf2509d40cp-1,0x1.721976af6dfbp+0,0x1.f51a456921c3ep-7) want 0x1.28880842acc6p+0 got -0x1.effe1dfffffffp-8 ulperr -5250719389057024.000 = -0x1.2a7804p+52 + -0x1.ffff84p-2
src/math/special/fma.h:412: RZ fmal(0x1.b128eb0ad8728p-1,0x1.7682566a54268p+0,0x1.bd4122a074cafp-8) want 0x1.3e9469530e762p+0 got -0x1.6fe0c7bffffffp-9 ulperr -5617153650720768.000 = -0x1.3f4c56p+52 + -0x1.ffffd2p-2
src/math/special/fma.h:413: RZ fmal(0x1.c4ae75976e35cp+0,-0x1.11c329dd1160cp+0,0x1.9993f5e13c9bdp-8) want -0x1.e27d925b07cf1p+0 got 0x1.198edf5ffffffp-9 ulperr 8497736676540416.000 = 0x1.e30a56p+52 + 0x1.ffffdcp-2
src/math/special/fma.h:414: RZ fmal(-0x1.85f81f88fa3c4p+0,-0x1.17648a494fa18p-1,0x1.37d305113b48p-10) want 0x1.aa367b7490e57p-1 got -0x1.7a59ecffffffep-12 ulperr -7501265072291840.000 = -0x1.aa65c4p+52 + -0x1.fffff4p-2
src/math/special/fma.h:415: RZ fmal(-0x1.311f2b4319efcp+0,0x1.abbb5272e3d18p-1,0x1.35841b7bdbcfep-10) want -0x1.fd337f24b39ep-1 got 0x1.4cbc317ffffffp-11 ulperr 8963677814259712.000 = 0x1.fd86acp+52 + 0x1.ffffecp-2
src/math/special/fma.h:416: RZ fmal(0x1.ab94369a9a0dp-1,0x1.9d1e0e0aa3bacp+0,0x1.0a63ca87cfa78p-11) want 0x1.592173ee296b6p+0 got -0x1.fd8043ffffff8p-13 ulperr -6072696672616448.000 = -0x1.59315cp+52 + -0x1.fffffcp-2
src/math/special/fma.h:458: RD fmal(0x1p+0,0x1p+0,-0x1p-1074) want 0x1.fffffffffffffp-1 got -0x1.fffffp-43 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p+0
src/math/special/fma.h:459: bad fp exception: RD fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022)=0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:459: RD fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.fffffffffffffp-1022 got 0x0p+0 ulperr -9007199254740992.000 = -0x1p+53 + 0x0p+0
src/math/special/fma.h:460: bad fp exception: RD fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022)=0x1.ffffffffffffep-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:460: RD fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.ffffffffffffep-1022 got -0x1p-1074 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p+0
src/math/special/fma.h:461: bad fp exception: RD fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:461: RD fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1p-1021 got -0x1p-1074 ulperr 4503599358935040.000 = 0x1.fffffep+51 + -0x1p-1
src/math/special/fma.h:462: bad fp exception: RD fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:462: RD fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.fffffffffffffp-1022 got 0x0p+0 ulperr 9007198717870080.000 = 0x1.fffffep+52 + 0x0p+0
src/math/special/fma.h:463: RD fmal(0x1p-1074,-0x1p-1074,0x1p-1074) want 0x0p+0 got -0x1p-1074 ulperr -2.000 = -0x1p+0 + -0x1p+0
src/math/special/fma.h:464: RD fmal(0x1p-1074,-0x1p-1074,-0x1p-1074) want -0x1p-1073 got -0x1p-1074 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/special/fma.h:465: RD fmal(0x1.0000000000001p+0,0x1p+0,0x1p+53) want 0x1p+53 got 0x1.000008p+12 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:466: RD fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p+53) want 0x1p+53 got 0x1.ffc02p+10 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:467: RD fmal(0x1p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp+53) want 0x1.fffffffffffffp+53 got -0x1.ffffep+10 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:468: RD fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep+53) want 0x1.ffffffffffffep+53 got 0x1.ffc02p+10 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:469: RD fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p-52) want 0x1.0000000000001p+0 got -0x1.fffffp-42 ulperr -4503600164241408.000 = -0x1.000002p+52 + -0x1p-1
src/math/special/fma.h:470: RD fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp-53) want 0x1.0000000000001p+0 got -0x1.fffff8p-41 ulperr -4503600164241408.000 = -0x1.000002p+52 + -0x1p-1
src/math/special/fma.h:471: RD fmal(0x1.0000000000005p+0,0x1.ffffffffffffbp-1,0x1p-52) want 0x1.0000000000003p+0 got -0x1.8fffff8p-37 ulperr -4503600164241408.000 = -0x1.000002p+52 + -0x1p-1
src/math/special/fma.h:472: RD fmal(0x1.0000000000006p+0,0x1.ffffffffffffdp-1,0x1p-52) want 0x1.0000000000005p+0 got -0x1.1fffff8p-37 ulperr -4503600164241408.000 = -0x1.000002p+52 + -0x1p-1
src/math/special/fma.h:491: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff4p+0 got 0x1.6800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:492: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1p+0) want 0x1.ffffffffffff8p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:493: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffff6p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:494: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffff4p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:495: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffff6p+0 got 0x1.f800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:496: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffff4p+0 got 0x1.f800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:497: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffff6p+0 got 0x1.2000004p-36 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:498: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffff4p+0 got 0x1.2000004p-36 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:499: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.fffffffffffffp-1) want 0x1.ffffffffffff6p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:500: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffff4p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:501: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff2p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:502: RD fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep-1) want 0x1.fffffffffffffp+0 got -0x1.fffffp-42 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:503: RD fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffp-42 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:504: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.fffffffffffffp-1) want 0x1.fffffffffffffp+0 got -0x1.fffff8p-41 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:505: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffff8p-41 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:506: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffff8p-41 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:507: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1p+0) want 0x1.fffffffffffffp+0 got -0x1.7ffffcp-40 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:508: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp+0 got -0x1.7ffffcp-40 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:509: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp+0 got -0x1.7ffffcp-40 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:510: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffcp-40 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:511: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffffcp-40 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:512: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffffdp+0 got -0x1.3ffffep-39 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:513: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffbp+0 got -0x1.3ffffep-39 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:514: RD fmal(0x1.5872449b765b9p+0,0x1.c9acf91f8de2bp+0,0x1.9265607e4d168p+0) want 0x1.fd190c77c2a67p+1 got -0x1.b3fc37bedp-4 ulperr -9195829923414016.000 = -0x1.055c78p+53 + -0x1.fffc98p-2
src/math/special/fma.h:515: RD fmal(0x1.81d010b146d0ep+0,0x1.2d3c680dc9071p+0,0x1.a80b69538754cp+0) want 0x1.b7040b44973a6p+1 got 0x1.4d0cb20197p+1 ulperr -1864177270390784.000 = -0x1.a7dd66p+50 + -0x1.0029a2p-1
src/math/special/fma.h:516: RD fmal(0x1.6a44f2252b6a2p+0,0x1.da452a378b832p+0,0x1.1fe2ce329104p+0) want 0x1.df842b6f48b12p+1 got 0x1.12e95c1ba4p+0 ulperr -6017592242208768.000 = -0x1.560f7ep+52 + -0x1.00112ep-1
src/math/special/fma.h:517: RD fmal(0x1.096b1d26463eep+0,0x1.d846d3e34333p+0,0x1.721e3480922b8p+0) want 0x1.ade2909c0269fp+1 got -0x1.a139d9b2cp-1 ulperr -9397596749561856.000 = -0x1.0b1884p+53 + -0x1.ffe5ecp-2
src/math/special/fma.h:518: RD fmal(0x1.99bd3434c454bp+0,0x1.03cb8e4115bdep+0,0x1.109f107188b08p+0) want 0x1.5837a47d37faep+1 got 0x1.cfdec0c00ap+0 ulperr -1975291027128320.000 = -0x1.c12112p+50 + -0x1.001cfep-1
src/math/special/fma.h:519: RD fmal(0x1.ba930a0a78ed2p+0,0x1.8c24e8d67f636p+0,0x1.ac49dbfbf8affp+0) want 0x1.164947ae6a5d9p+2 got -0x1.33e3b04edp-2 ulperr -5234191818031104.000 = -0x1.298784p+52 + -0x1.fffb3p-2
src/math/special/fma.h:520: RD fmal(0x1.be224ad773191p+0,0x1.d96b77169731fp+0,0x1.662cfb75d8edep+0) want 0x1.27cd67e720f78p+2 got 0x1.e4711611c78p+1 ulperr -942615667146752.000 = -0x1.aca6e8p+49 + -0x1.001e48p-1
src/math/special/fma.h:521: RD fmal(0x1.59e7a1b0bdb3cp+0,0x1.2decba4d46421p+0,0x1.88f4062e96df5p+0) want 0x1.90749e4794f79p+1 got -0x1.b3c84a9a88p-1 ulperr -8961479864745984.000 = -0x1.fd66b2p+52 + -0x1.ffe4c4p-2
src/math/special/fma.h:522: RD fmal(0x1.22edf4b4da9a7p+0,0x1.dfa8d65f506cdp+0,0x1.2799208da2fbap+0) want 0x1.a45a1e99ed7a8p+1 got 0x1.a0bdfb8976p-1 ulperr -5562059957731328.000 = -0x1.3c2aap+52 + -0x1.000d06p-1
src/math/special/fma.h:523: RD fmal(0x1.ad5b991a2a279p+0,0x1.f02fd26706024p+0,0x1.831cdd5c8797cp+0) want 0x1.30d3a2ac90a6p+2 got 0x1.c7c15e1c82p+1 ulperr -1353701750996992.000 = -0x1.33cbdp+50 + -0x1.001c7cp-1
src/math/special/fma.h:524: RD fmal(0x1.531f9620e764ap+0,0x1.cad61b54d4425p+0,0x1.df817cae8a9afp+0) want 0x1.0fd4e7f8671dcp+2 got 0x1.8e74e26059p+1 ulperr -1277252138434560.000 = -0x1.2269dcp+50 + -0x1.0018e8p-1
src/math/special/fma.h:525: RD fmal(0x1.629a5ad79494fp+0,0x1.049e58693f4c4p+0,0x1.45b0109e4d00cp+0) want 0x1.5758154e14965p+1 got -0x1.01173c9c2p-3 ulperr -6322847379095552.000 = -0x1.67698ap+52 + -0x1.fffbfcp-2
src/math/special/fma.h:526: RD fmal(0x1.2f52b53f9240ap+0,0x1.1d5c686dbb0dap+0,0x1.6da3e392a4fd4p+0) want 0x1.5fe03a6795912p+1 got 0x1.5bdb7d9084p+0 ulperr -3130480329228288.000 = -0x1.63e4f8p+51 + -0x1.0015bep-1
src/math/special/fma.h:527: RD fmal(0x1.058667552b49ep+0,0x1.23307bacc1c42p+0,0x1.5b059b47cd8f5p+0) want 0x1.423f752486d13p+1 got -0x1.4bfb042744p+0 ulperr -8589176530272256.000 = -0x1.e83cf8p+52 + -0x1.ffd68p-2
src/math/special/fma.h:528: RD fmal(0x1.a717d95337ed8p+0,0x1.2b1c37846aaadp+0,0x1.be65672f885b1p+0) want 0x1.d65e72303c075p+1 got -0x1.7e0573ec04p+1 ulperr -14995408015065088.000 = -0x1.aa31f4p+53 + -0x1.ffa07ep-2
src/math/special/fma.h:529: RD fmal(0x1.deb79287b3d32p+0,0x1.62776b829babap+0,0x1.67daf18bd2eb1p+0) want 0x1.ff5a0d45c69d6p+1 got 0x1.ad881652ap-3 ulperr -8523520438960128.000 = -0x1.e4818cp+52 + -0x1.00035cp-1
src/math/special/fma.h:530: RD fmal(0x1.fbf12d3a6de91p+0,0x1.879fe6124f11p+0,0x1.9f3f1247a8641p+0) want 0x1.2a126c6980018p+2 got 0x1.45e3d61a84p+2 ulperr 489379747332096.000 = 0x1.bd169ap+48 + -0x1.0028bcp-1
src/math/special/fma.h:531: RD fmal(0x1.c589628460e01p+0,0x1.e1bec1c797533p+0,0x1.349f30cdb84bbp+0) want 0x1.2286118b6f6e5p+2 got -0x1.8e9d95e0668p+1 ulperr -8617207097458688.000 = -0x1.e9d4dep+52 + -0x1.ffce2cp-2
src/math/special/fma.h:532: RD fmal(0x1.46fd6c2c924ebp+0,0x1.65e2f02e730a1p+0,0x1.37739d2751098p+0) want 0x1.804a71c1f1272p+1 got 0x1.855d7947cbp+0 ulperr -3335623536541696.000 = -0x1.7b376cp+51 + -0x1.001856p-1
src/math/special/fma.h:533: RD fmal(0x1.f99e595ae11fdp+0,0x1.bd33d9a1d81bp+0,0x1.932a2a2e244c1p+0) want 0x1.409e34f8f2f89p+2 got -0x1.7a49668944p+2 ulperr -12295261934059520.000 = -0x1.5d73cep+53 + -0x1.ffa16ep-2
src/math/special/fma.h:534: RD fmal(0x1.59ea1e56bfe55p+0,0x1.6f46b7d412a44p+0,0x1.80f2bc9a32cc3p+0) want 0x1.b89c7640e32ffp+1 got -0x1.ca180bfb6p-3 ulperr -8254993714905088.000 = -0x1.d53df8p+52 + -0x1.fff8d8p-2
src/math/special/fma.h:535: RD fmal(0x1.61490fcb44129p+0,0x1.0038ec4fc35c2p+0,0x1.df7436ed7a7b7p+0) want 0x1.a085ea68d05cfp+1 got -0x1.5ed2c690f7p+1 ulperr -13499302328401920.000 = -0x1.7fac5ap+53 + -0x1.ffa84cp-2
src/math/special/fma.h:536: RD fmal(0x1.d41b98788502bp+0,0x1.1a7b77843aca6p+0,0x1.05be891837d36p+0) want 0x1.8523596ceced9p+1 got -0x1.48c8fc403cp-1 ulperr -8291802121502720.000 = -0x1.d7559ap+52 + -0x1.ffeb74p-2
src/math/special/fma.h:537: RD fmal(0x1.3153cf6f69af9p+0,0x1.aaa947e38e57ap+0,0x1.8519f9b590645p+0) want 0x1.c0fcab7b46368p+1 got 0x1.25f4f4bd5p-3 ulperr -7575454189879296.000 = -0x1.ae9d5ep+52 + -0x1.00024cp-1
src/math/special/fma.h:538: RD fmal(0x1.c25a1f73581aap+0,0x1.0a51ffca372ap+0,0x1.0c77e3ebac5f3p+0) want 0x1.707ce48c7d72dp+1 got -0x1.3261c9a0ep+1 ulperr -11872436362412032.000 = -0x1.516f58p+53 + -0x1.ffb368p-2
src/math/special/fma.h:539: RD fmal(0x1.829c2cde44b7p+0,0x1.f692e86d8cb36p+0,0x1.455e72d264bfp+0) want 0x1.0f16a3b8b3f97p+2 got -0x1.684386466p+0 ulperr -6353495191977984.000 = -0x1.692786p+52 + -0x1.ffe97cp-2
src/math/special/fma.h:540: RD fmal(0x1.94729588dcc69p+0,0x1.c3bb794c6edf8p+0,0x1.9da4e94d262d2p+0) want 0x1.19d4bd84d9fd2p+2 got 0x1.e1b9a2757p-1 ulperr -3898699117756416.000 = -0x1.bb3b14p+51 + -0x1.000786p-1
src/math/special/fma.h:541: RD fmal(0x1.e6a5e7e39c3d5p+0,0x1.1b69af2bdd978p+0,0x1.e7ef1eafa119cp+0) want 0x1.00ac5b44c9f31p+2 got -0x1.6777d5d394p+1 ulperr -7677359268298752.000 = -0x1.b46848p+52 + -0x1.ffd312p-2
src/math/special/fma.h:542: RD fmal(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022) want 0x1.b594d0e4368efp-1022 got -0x1.9dedc9561p-1023 ulperr -11338969211994112.000 = -0x1.4245dcp+53 + -0x1.ffcc42p-2
src/math/special/fma.h:543: RD fmal(0x1.022db53c98d14p-1022,0x1.21157eef74848p-2,0x1.2f880432b1bc1p-1022) want 0x1.786ad60a02b3dp-1022 got -0x1.150255ac98p-1022 ulperr -11495199721127936.000 = -0x1.46b696p+53 + -0x1.ffbacp-2
src/math/special/fma.h:544: RD fmal(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022) want 0x1.cbb085199a3f5p-1022 got -0x1.6ed115da2f8p-1023 ulperr -11313498982187008.000 = -0x1.418c8ap+53 + -0x1.ffd226p-2
src/math/special/fma.h:545: RD fmal(0x1.adbc3a9d816dep-1022,0x1.e039d4431e3cdp-2,0x1.93ceef6fe18a2p-1022) want 0x1.2eabb7dc0e2fp-1021 got 0x1.ef7b6794e3p-1023 ulperr -3145487481831424.000 = -0x1.6599bcp+51 + -0x1.000f7cp-1
src/math/special/fma.h:546: RD fmal(0x1.645aa5c2df3afp-1022,0x1.649edfcad854fp-2,0x1.8b43e0bbaeb01p-1022) want 0x1.03af571d2b504p-1021 got 0x1.0ce86163c02p-1021 ulperr 162249436037120.000 = 0x1.272148p+47 + -0x1.00219ep-1
src/math/special/fma.h:547: RD fmal(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022) want 0x1.ad9ce7fcefa3fp-1022 got -0x1.12bc4931e6p-1025 ulperr -8161980292530176.000 = -0x1.cff472p+52 + -0x1.fff76ap-2
src/math/special/fma.h:548: RD fmal(0x1.8ee3feb00c3e7p-1022,0x1.53bd9353313bcp-2,0x1.5501b57dc3b6fp-1022) want 0x1.d9598906f0bb3p-1022 got -0x1.4660b83f57p-1022 ulperr -14068956725772288.000 = -0x1.8fdd22p+53 + -0x1.ffae68p-2
src/math/special/fma.h:549: RD fmal(0x1.161225cfa61e2p-1022,0x1.b6dd69a0af5bp-2,0x1.924ffc3ead5c3p-1022) want 0x1.04be6fc25367bp-1021 got -0x1.f3ab56daa8p-1022 ulperr -8982192881401856.000 = -0x1.fe941cp+52 + -0x1.ffc18ap-2
src/math/special/fma.h:550: RD fmal(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022) want 0x1.70b6c3169f043p-1022 got -0x1.a779baefbe8p-1023 ulperr -10211414669000704.000 = -0x1.2239d2p+53 + -0x1.ffcb1p-2
src/math/special/fma.h:551: RD fmal(0x1.ce0e2ea55040ep-1022,0x1.ce5a55fa3828dp-2,0x1.f2f444d50ce59p-1022) want 0x1.61ca36f5a8a79p-1021 got -0x1.173f0cea128p-1022 ulperr -8680214267691008.000 = -0x1.ed69bep+52 + -0x1.ffdd18p-2
src/math/special/fma.h:552: RD fmal(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022) want 0x1.1440cf1c105ebp-1021 got -0x1.f88fda6p-1030 ulperr -4877233864835072.000 = -0x1.153d18p+52 + -0x1.ffffcp-2
src/math/special/fma.h:553: RD fmal(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022) want 0x1.1186e1f77012dp-1021 got -0x1.2ffba526fcp-1025 ulperr -5146169147654144.000 = -0x1.24869ep+52 + -0x1.fffb4p-2
src/math/special/fma.h:554: RD fmal(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022) want 0x1.8d86310bad175p-1022 got -0x1.1b755c367f8p-1023 ulperr -9486646453993472.000 = -0x1.0da07p+53 + -0x1.ffdc92p-2
src/math/special/fma.h:555: RD fmal(0x1.fb3391a4b1d23p-1022,0x1.4d8705b057caep-2,0x1.d026cb6dae73bp-1022) want 0x1.3aad18b424c67p-1021 got -0x1.0a1784c7c6cp-1021 ulperr -10216979872874496.000 = -0x1.22625p+53 + -0x1.ffbd7ap-2
src/math/special/fma.h:556: RD fmal(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022) want 0x1.c0048fd33a417p-1022 got -0x1.d026e457f1p-1024 ulperr -9922975402819584.000 = -0x1.1a0726p+53 + -0x1.ffe2fep-2
src/math/special/fma.h:557: RD fmal(0x1.aa9eff070281cp-1022,0x1.fab05661b48ebp-2,0x1.cbe2af6c69c6ep-1022) want 0x1.4f7ddbe122764p-1021 got 0x1.9e529858dap-1023 ulperr -4079821109854208.000 = -0x1.cfd26cp+51 + -0x1.000cf2p-1
src/math/special/fma.h:558: RD fmal(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022) want 0x1.e0e762ee2e7c5p-1022 got -0x1.e2fe0f96ecp-1023 ulperr -12708596701724672.000 = -0x1.693336p+53 + -0x1.ffc3ap-2
src/math/special/fma.h:559: RD fmal(0x1.4dab43918a9a8p-1022,0x1.ed667442b4751p-2,0x1.3f25f82e02e3ep-1022) want 0x1.dfec0ee732dcap-1022 got 0x1.6a41c4d18ap-1022 ulperr -2069988076683264.000 = -0x1.d6a92ap+50 + -0x1.002d48p-1
src/math/special/fma.h:560: RD fmal(0x1.7943735951931p-1022,0x1.fa6a357c5c9ddp-2,0x1.0bed44b0b71b4p-1022) want 0x1.c6803a6059abep-1022 got 0x1.0e970cce134p-1022 ulperr -3235394032238592.000 = -0x1.6fd25cp+51 + -0x1.0021d2p-1
src/math/special/fma.h:561: RD fmal(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022) want 0x1.8640492c45959p-1022 got -0x1.3271a1b38p-1027 ulperr -7033840023371776.000 = -0x1.8fd3d8p+52 + -0x1.fffd9cp-2
src/math/special/fma.h:562: RD fmal(0x1.f52172c56bdf5p-1022,0x1.672b2de422734p-2,0x1.7bc5d708e5a34p-1022) want 0x1.15c5b95145cc6p-1021 got 0x1.3cf4f71d188p-1021 ulperr 689341647028224.000 = 0x1.3979eep+49 + -0x1.00279ep-1
src/math/special/fma.h:563: RD fmal(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022) want 0x1.e7fa0dd76fbefp-1022 got -0x1.60a5d541bp-1024 ulperr -10135539776749568.000 = -0x1.2011c2p+53 + -0x1.ffe9f6p-2
src/math/special/fma.h:564: RD fmal(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022) want 0x1.b63a7f56fce1fp-1022 got -0x1.497a9bc52p-1024 ulperr -9158461560455168.000 = -0x1.044c94p+53 + -0x1.ffeb68p-2
src/math/special/fma.h:565: RD fmal(0x1.f73d5f4e81fd8p-1022,0x1.7ccff2642124ap-2,0x1.e7d836a0c8308p-1022) want 0x1.517f1763126d3p-1021 got -0x1.06939f3372p-1021 ulperr -10556597969354752.000 = -0x1.2c095cp+53 + -0x1.ffbe5cp-2
src/math/special/fma.h:566: RD fmal(0x1.b4328925969fbp-1022,0x1.8fa02832a22d5p-2,0x1.2084598e2f8c6p-1022) want 0x1.cabf43838dc51p-1022 got -0x1.7c61d65f0a4p-1022 ulperr -14762119350190080.000 = -0x1.a3908ep+53 + -0x1.ffa0e8p-2
src/math/special/fma.h:567: RD fmal(0x1.66ee60a92676fp-1022,0x1.eddd2e7681ce4p-2,0x1.b81d57daeb3a7p-1022) want 0x1.329c918ffb682p-1021 got 0x1.cd379885b8p-1025 ulperr -4886855128449024.000 = -0x1.15c91ap+52 + -0x1.00039ap-1
src/math/special/fma.h:568: RD fmal(0x1.ff2737585895dp-1022,0x1.fb4bf3828ae4ap-2,0x1.4a866847740fp-1022) want 0x1.23e07e4dbbeaap-1021 got 0x1.46c53f7571p-1023 ulperr -3697601501200384.000 = -0x1.a45e5ep+51 + -0x1.000a36p-1
src/math/special/fma.h:569: RD fmal(0x1.5e2008d269a86p-1022,0x1.507bbbe4d78eep-2,0x1.6220c6f83f636p-1022) want 0x1.d52d9874f1c74p-1022 got 0x1.eda0503c4ap-1023 ulperr -3911886546403328.000 = -0x1.bcbae2p+51 + -0x1.001edap-1
src/math/special/fma.h:570: RD fmal(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022) want 0x1.9864925e2fb0fp-1022 got -0x1.53ae580e8cp-1025 ulperr -7931489798848512.000 = -0x1.c2da5ep+52 + -0x1.fff562p-2
src/math/special/fma.h:571: RD fmal(0x1.7b353b81e793dp-1022,0x1.82b426f874c6dp-2,0x1.d92b19d21fd5cp-1022) want 0x1.342fb0c544a78p-1021 got 0x1.2af4c8aebe4p-1022 ulperr -2792024289837056.000 = -0x1.3d6a9ap+51 + -0x1.0012bp-1
src/math/special/fma.h:572: RD fmal(0x1.5be667823370ap-1022,0x1.a8a99b163869bp-2,0x1.95456b68dc3bcp-1022) want 0x1.12c638de03c7p-1021 got 0x1.49af7fc787p-1023 ulperr -3383908364189696.000 = -0x1.80b4b2p+51 + -0x1.000a4ep-1
src/math/special/fma.h:573: RD fmal(0x1.17b0fc6c850e5p-1022,0x1.d1d0a4853c315p-2,0x1.36b79f7c0c24p-1022) want 0x1.b5f2baff5635cp-1022 got 0x1.6a19304724p-1026 ulperr -7306334223466496.000 = -0x1.9f5128p+52 + -0x1.0002d4p-1
src/math/special/fma.h:574: RD fmal(0x1.bd97819bacfd8p-1022,0x1.2c25f267ba4eep-2,0x1.804b5204a3f3ap-1022) want 0x1.01739c190fd96p-1021 got 0x1.b9e166e6b4p-1022 ulperr -642314707927040.000 = -0x1.241746p+49 + -0x1.001b9ep-1
src/math/special/fma.h:575: RD fmal(0x1.596577053873dp-1022,0x1.3562ab2d29949p-2,0x1.b3f1ee75db6e7p-1022) want 0x1.0e268a498009ap-1021 got 0x1.e8136bc1594p-1022 ulperr -459378025037824.000 = -0x1.a1cd48p+48 + -0x1.001e82p-1
src/math/special/fma.h:576: RD fmal(0x1.3c7a68cf0f7b3p-1022,0x1.9a55c15b167bdp-2,0x1.7635b7b163c07p-1022) want 0x1.f5073b93b7b8p-1022 got 0x1.75f9a972138p-1023 ulperr -5524661530001408.000 = -0x1.3a0a68p+52 + -0x1.00176p-1
src/math/special/fma.h:577: RD fmal(0x1.5825164bc4068p-1022,0x1.dcbb6e5ff3245p-2,0x1.52fc3be0e84dap-1022) want 0x1.f334771c2dcfap-1022 got 0x1.2b86ba6b02p-1022 ulperr -3512784226615296.000 = -0x1.8f5b7ap+51 + -0x1.00257p-1
src/math/special/fma.h:578: RD fmal(0x1.139ea77b760ecp+1022,0x1.9b25f2fd017eap+2,-0x1.bc16788922b6fp+1023) want 0x1.b93aac527380ep+1023 got 0x1.c3ec4f2eep+1022 ulperr -3787028625883136.000 = -0x1.ae890ap+51 + -0x1.001c3ep-1
src/math/special/fma.h:579: RD fmal(0x1.0e6f9c1657d7cp+1022,0x1.4d5c6b55ab5f1p+2,-0x1.e027dd5742e2cp+1023) want 0x1.c0538372b4bbep+1022 got 0x1.54dede6dep+1021 ulperr -4888709480579072.000 = -0x1.15e416p+52 + -0x1.00154ep-1
src/math/special/fma.h:580: RD fmal(0x1.1182524fa411cp+1022,0x1.a3dba56842d19p+2,-0x1.c1ad59474d71fp+1023) want 0x1.bf78969300a76p+1023 got 0x1.8651491efp+1022 ulperr -4438724951670784.000 = -0x1.f89fe6p+51 + -0x1.001866p-1
src/math/special/fma.h:581: RD fmal(0x1.1cbf4fb8ec82p+1022,0x1.5e32019a84fbbp+2,-0x1.985af08f32edep+1023) want 0x1.72af6bbad4a28p+1023 got 0x1.a68c1c1ecp+1023 ulperr 912367084896256.000 = 0x1.9ee582p+49 + -0x1.0034d2p-1
src/math/special/fma.h:582: RD fmal(0x1.311e25c6db346p+1022,0x1.4e30db6c4b51dp+2,-0x1.7681f7a9786a7p+1023) want 0x1.a61d29434fc13p+1023 got -0x1.791d1989p+1017 ulperr -7529566759288832.000 = -0x1.ac019ep+52 + -0x1.fffe86p-2
src/math/special/fma.h:583: RD fmal(0x1.1201cf577052fp+1022,0x1.59730b2db7a16p+2,-0x1.56f1a64a078d5p+1023) want 0x1.8c8d801df34d9p+1023 got -0x1.3048609fd8p+1022 ulperr -inf = -inf + -0x1.ffd9f6p-2
src/math/special/fma.h:584: RD fmal(0x1.3e52335b76e81p+1022,0x1.4dbd56f857479p+2,-0x1.509340c11bd2ep+1023) want 0x1.ed6576837f653p+1023 got -0x1.e498d5441cp+1022 ulperr -inf = -inf + -0x1.ffc36cp-2
src/math/special/fma.h:585: RD fmal(0x1.18566b4f843cbp+1022,0x1.444fba10eaf29p+2,-0x1.f927beae57f0ap+1023) want 0x1.9a433b9796559p+1022 got 0x1.a048d2820cp+1022 ulperr 105937222238208.000 = 0x1.8165bap+46 + -0x1.ff6812p-2
src/math/special/fma.h:586: RD fmal(0x1.3fbe544fe1be8p+1022,0x1.2d2a5fda03639p+2,-0x1.007407dbfd03cp+1023) want 0x1.efdb644b613e5p+1023 got -0x1.e14223656p+1022 ulperr -inf = -inf + -0x1.ffc3d8p-2
src/math/special/fma.h:587: RD fmal(0x1.263a0d3bc2e4p+1022,0x1.4cc198adbc651p+2,-0x1.734b1c1f7fdb8p+1023) want 0x1.899878afc0fa2p+1023 got 0x1.a13620448p+1023 ulperr 415454199808000.000 = 0x1.79da78p+48 + -0x1.003426p-1
src/math/special/fma.h:588: RD fmal(0x1.5bf4aec8efc8ep+1022,0x1.555f0341516c9p+2,-0x1.c706408acd14cp+1023) want 0x1.d8f5e18b868bcp+1023 got 0x1.3e5679fdf8p+1022 ulperr -5520280126488576.000 = -0x1.39caa6p+52 + -0x1.0013e6p-1
src/math/special/fma.h:589: RD fmal(0x1.1e57f1af78279p+1022,0x1.34bc0c7f082b3p+2,-0x1.497b92c1365edp+1023) want 0x1.692cb7ec68a93p+1023 got -0x1.c0a1f29b28p+1021 ulperr -8326959650045952.000 = -0x1.d95536p+52 + -0x1.ffe3f6p-2
src/math/special/fma.h:590: RD fmal(0x1.1d9824cd73511p+1022,0x1.1d557ddfe47ffp+2,-0x1.556cdb1d20a72p+1023) want 0x1.2736a6b6e35f2p+1023 got 0x1.bc6f9c9778p+1021 ulperr -3238800478175232.000 = -0x1.70358p+51 + -0x1.000de4p-1
src/math/special/fma.h:591: RD fmal(0x1.1ff85a24aff31p+1022,0x1.39ab374b2680dp+2,-0x1.35e6b07b651b8p+1023) want 0x1.8bc7ce208708p+1023 got 0x1.84b319bafap+1023 ulperr -124568119279616.000 = -0x1.c52d1ap+46 + -0x1.003096p-1
src/math/special/fma.h:592: RD fmal(0x1.0449b3965227ep+1022,0x1.4430d4441f9f2p+2,-0x1.a6966c96307ep+1023) want 0x1.d94eda8c81771p+1022 got -0x1.992ed6b72p+1021 ulperr -11925734759071744.000 = -0x1.52f324p+53 + -0x1.ffccdap-2
src/math/special/fma.h:593: RD fmal(0x1.3c91fa00fd0c7p+1022,0x1.1b6661c0b0303p+2,-0x1.f1f2846b64483p+1023) want 0x1.95eae0d2644d3p+1022 got 0x1.9985d8eaap+1019 ulperr -6240425882943488.000 = -0x1.62ba26p+52 + -0x1.ff0cccp-2
src/math/special/fma.h:594: RD fmal(0x1.0979b36d46534p+1022,0x1.12fa205f41f7fp+2,-0x1.a83ecf4544a63p+1023) want 0x1.2420f34e2aa3cp+1022 got -0x1.335a0fe68p+1019 ulperr -5815056616914944.000 = -0x1.4a8c36p+52 + -0x1.007b32p-1
src/math/special/fma.h:595: RD fmal(0x1.4c89df582a599p+1022,0x1.55f3dc473ea8fp+2,-0x1.e35037292ddfp+1023) want 0x1.95109fdbc3771p+1023 got -0x1.afa3b29624p+1022 ulperr -inf = -inf + -0x1.ffca0cp-2
src/math/special/fma.h:596: RD fmal(0x1.35ee0a669c4fbp+1022,0x1.2263cb63f386ap+2,-0x1.449218ae35ac7p+1023) want 0x1.7a8ed977d817ap+1023 got 0x1.47da9ddfb8p+1022 ulperr -3775828961787904.000 = -0x1.ad4316p+51 + -0x1.00147ep-1
src/math/special/fma.h:597: RD fmal(0x1.117cc860f61bcp+1022,0x1.440985b25d994p+2,-0x1.d7a7d82000449p+1023) want 0x1.b960b7088e74fp+1022 got 0x1.ddfba372cp+1022 ulperr 643964914892800.000 = 0x1.24d762p+49 + -0x1.ff777ep-2
src/math/special/fma.h:598: RD fmal(0x1.1e78a37be320fp+1022,0x1.0db0fce62287bp+2,-0x1.376337da5eb53p+1023) want 0x1.24326b9956dfbp+1023 got -0x1.d2881b3596p+1023 ulperr -inf = -inf + -0x1.ff8b5ep-2
src/math/special/fma.h:599: RD fmal(0x1.0c79b5c8331c2p+1022,0x1.0aba6ea746b5p+2,-0x1.c86f1fcaf0741p+1023) want 0x1.9c135bb2cff84p+1021 got -0x1.cc298bacp+1019 ulperr -9273126449840128.000 = -0x1.078eep+53 + -0x1.00f19ep-1
src/math/special/fma.h:600: RD fmal(0x1.556c4c072f272p+1022,0x1.347758d7d4eb5p+2,-0x1.c6fe4f24b248dp+1023) want 0x1.6fcc9f756df6dp+1023 got -0x1.f6f4c76598p+1022 ulperr -inf = -inf + -0x1.ffc122p-2
src/math/special/fma.h:601: RD fmal(-0x1.e8349b891b2fp-1,0x1.4a6dec9b72578p-1,0x1.3b6151ce809ddp-1) want 0x1.3a62fe330b355p-11 got -0x1.d97121p-11 ulperr -13859627535958016.000 = -0x1.89ea1p+53 + -0x1.ff89a4p-2
src/math/special/fma.h:602: RD fmal(0x1.2996632ac7d74p-1,-0x1.bb3c58b654d94p-1,0x1.01a6660e64a31p-1) want 0x1.ed045bb956a8ep-15 got -0x1.070d62p-15 ulperr -13300912420290560.000 = -0x1.7a08ep+53 + -0x1.eabe3cp-2
src/math/special/fma.h:603: RD fmal(-0x1.c602e894c1df8p-1,0x1.a1c980e7d3f94p-1,0x1.7271244b43386p-1) want -0x1.ba251fe026e5cp-15 got -0x1.af2b6c0000001p-15 ulperr 193081294979072.000 = 0x1.5f367cp+47 + -0x1.02ca1ap-1
src/math/special/fma.h:604: RD fmal(-0x1.c84baf47e85cp-1,0x1.770b5149ef2ep-1,0x1.4d80f139320bap-1) want -0x1.79277433b9e24p-10 got 0x1.d4b6effffffffp-11 ulperr 10757822555881472.000 = 0x1.31c176p+53 + -0x1.001d4cp-1
src/math/special/fma.h:605: RD fmal(-0x1.36e667dcf9c6p-1,0x1.2591f82556b88p-1,0x1.2452a0f795f95p-1) want 0x1.c83c8e63c159fp-3 got -0x1.221cccp-12 ulperr -8036166741786624.000 = -0x1.c8cd9ep+52 + -0x1.ffffdcp-2
src/math/special/fma.h:606: RD fmal(0x1.88b2cede61e4cp-1,-0x1.71dcab5ad9e9p-3,0x1.32b27fea2ae97p-3) want 0x1.70461909b25e2p-7 got -0x1.affe57fffffffp-17 ulperr -6486163510525952.000 = -0x1.70b21ap+52 + -0x1.ffffe6p-2
src/math/special/fma.h:607: RD fmal(0x1.8d1e44002c98p-3,-0x1.af9fdfb347834p-1,0x1.e280942fb4146p-4) want -0x1.761ac23896dfep-5 got 0x1.0bec47fffffffp-14 ulperr 6590522089013248.000 = 0x1.76a0b8p+52 + -0x1.00001p-1
src/math/special/fma.h:608: RD fmal(0x1.236e8cb9492c8p-1,-0x1.d37443a57f1c4p-1,0x1.ca10df801aabcp-4) want -0x1.a1a2cdf0138fap-2 got 0x1.f090cab6fffffp-5 ulperr 8439088361242624.000 = 0x1.dfb4e6p+52 + -0x1.0007c2p-1
src/math/special/fma.h:609: RD fmal(-0x1.6ad943e610fb8p-1,-0x1.cef92a7bb18bcp-1,0x1.f28587d8fb0ep-4) want 0x1.866b5204b9aecp-1 got -0x1.8c9eb9a7p-5 ulperr -7304415983697920.000 = -0x1.9f353ep+52 + -0x1.fff9cep-2
src/math/special/fma.h:610: RD fmal(-0x1.60a8569a5d894p-1,-0x1.ca07e29dd171cp-1,0x1.b6c475ace09ecp-4) want 0x1.72549291e2f7ap-1 got -0x1.b6fd181e8p-5 ulperr -6997594257489920.000 = -0x1.8dc466p+52 + -0x1.fff924p-2
src/math/special/fma.h:611: RD fmal(0x1.d1962720d678cp-1,-0x1.4548ee45c4084p-1,0x1.f416ab193d75cp-4) want -0x1.d2929879dc854p-2 got 0x1.fc38e6f3fffffp-8 ulperr 8347731722502144.000 = 0x1.da837cp+52 + -0x1.0000fep-1
src/math/special/fma.h:612: RD fmal(-0x1.9ddcb295a7d64p-1,0x1.67fb3a2068a78p-1,0x1.da9cd4597fe0ap-4) want -0x1.cf4f6eb4fc5d9p-2 got 0x1.59da5511fffffp-6 ulperr 8530909930192896.000 = 0x1.e4ed14p+52 + -0x1.0002b4p-1
src/math/special/fma.h:613: RD fmal(0x1.c00d16ed45b88p+0,0x1.c787eddda3664p+0,0x1.1e3e6f0cc1802p-5) want 0x1.931b8f379dcc3p+1 got -0x1.63fb63b8p-6 ulperr -7140470639558656.000 = -0x1.95e386p+52 + -0x1.ffff4ep-2
src/math/special/fma.h:614: RD fmal(0x1.19c2a2372c184p+0,-0x1.cb506961c19fp+0,0x1.db1abf3f7ba3ap-6) want -0x1.f21c0eab0bc19p+0 got 0x1.a29607ffffff8p-13 ulperr 8763735275470848.000 = 0x1.f22922p+52 + -0x1.000002p-1
src/math/special/fma.h:615: RD fmal(-0x1.3a263218ccd1cp+0,-0x1.e818d390df27cp+0,0x1.2a81ed71785f5p-5) want 0x1.3025ab0f63925p+1 got -0x1.bfdf0b9cp-6 ulperr -5412168283455488.000 = -0x1.33a56ap+52 + -0x1.ffff2p-2
src/math/special/fma.h:616: RD fmal(0x1.b0b041fbaca58p+0,-0x1.9d5f76d178e6p+0,0x1.0215c7bb84cf9p-6) want -0x1.5b52aec7ef401p+1 got 0x1.6be7a77ffffffp-7 ulperr 6135177709355008.000 = 0x1.5cbe96p+52 + -0x1.00002ep-1
src/math/special/fma.h:617: RD fmal(-0x1.377549d9a87f4p+0,-0x1.a13d4a03dd6d8p+0,0x1.f190388bc5cc6p-7) want 0x1.ff83bebbd6fe4p+0 got -0x1.e5a6a44p-9 ulperr -9015347881443328.000 = -0x1.003b4ap+53 + -0x1.ffffc4p-2
src/math/special/fma.h:618: RD fmal(0x1.6a726c0762ac8p-1,-0x1.d32f2d30e483cp+0,0x1.f953eb70fbde6p-7) want -0x1.46c61b3070333p+0 got 0x1.e556e47fffffep-11 ulperr 5752835425697792.000 = 0x1.4702c6p+52 + -0x1.000008p-1
src/math/special/fma.h:619: RD fmal(0x1.94cf2509d40cp-1,0x1.721976af6dfbp+0,0x1.f51a456921c3ep-7) want 0x1.28880842acc6p+0 got -0x1.effe1ep-8 ulperr -5250719925927936.000 = -0x1.2a7808p+52 + -0x1.ffff84p-2
src/math/special/fma.h:620: RD fmal(0x1.b128eb0ad8728p-1,0x1.7682566a54268p+0,0x1.bd4122a074cafp-8) want 0x1.3e9469530e762p+0 got -0x1.6fe0c7cp-9 ulperr -5617154187591680.000 = -0x1.3f4c5ap+52 + -0x1.ffffd2p-2
src/math/special/fma.h:621: RD fmal(0x1.c4ae75976e35cp+0,-0x1.11c329dd1160cp+0,0x1.9993f5e13c9bdp-8) want -0x1.e27d925b07cf2p+0 got 0x1.198edf5ffffffp-9 ulperr 8497736676540416.000 = 0x1.e30a58p+52 + -0x1.000012p-1
src/math/special/fma.h:622: RD fmal(-0x1.85f81f88fa3c4p+0,-0x1.17648a494fa18p-1,0x1.37d305113b48p-10) want 0x1.aa367b7490e57p-1 got -0x1.7a59ecffffffep-12 ulperr -7501265609162752.000 = -0x1.aa65c8p+52 + -0x1.fffff4p-2
src/math/special/fma.h:623: RD fmal(-0x1.311f2b4319efcp+0,0x1.abbb5272e3d18p-1,0x1.35841b7bdbcfep-10) want -0x1.fd337f24b39e1p-1 got 0x1.4cbc317ffffffp-11 ulperr 8963677814259712.000 = 0x1.fd86aep+52 + -0x1.00000ap-1
src/math/special/fma.h:624: RD fmal(0x1.ab94369a9a0dp-1,0x1.9d1e0e0aa3bacp+0,0x1.0a63ca87cfa78p-11) want 0x1.592173ee296b6p+0 got -0x1.fd8043ffffff8p-13 ulperr -6072697209487360.000 = -0x1.59316p+52 + -0x1.fffffcp-2
src/math/special/fma.h:666: RU fmal(0x1p+0,0x1p+0,-0x1p-1074) want 0x1p+0 got -0x1.fffffp-43 ulperr -4503599627370496.000 = -0x1p+52 + 0x0p+0
src/math/special/fma.h:667: bad fp exception: RU fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022)=0x1p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:667: RU fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022) want 0x1p-1021 got 0x1p-1074 ulperr -4503599358935040.000 = -0x1.fffffep+51 + 0x1p-1
src/math/special/fma.h:668: bad fp exception: RU fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022)=0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:668: RU fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.fffffffffffffp-1022 got -0x0p+0 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x0p+0
src/math/special/fma.h:669: bad fp exception: RU fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:669: RU fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.fffffffffffffp-1022 got -0x0p+0 ulperr 9007199254740992.000 = 0x1p+53 + 0x0p+0
src/math/special/fma.h:670: bad fp exception: RU fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.ffffffffffffep-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:670: RU fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.ffffffffffffep-1022 got 0x1p-1074 ulperr 9007199254740992.000 = 0x1p+53 + 0x1p+0
src/math/special/fma.h:671: RU fmal(0x1p-1074,-0x1p-1074,0x1p-1074) want 0x1p-1074 got -0x0p+0 ulperr -1.000 = -0x1p+0 + 0x0p+0
src/math/special/fma.h:672: RU fmal(0x1p-1074,-0x1p-1074,-0x1p-1074) want -0x1p-1074 got -0x0p+0 ulperr 1.000 = 0x1p+0 + 0x0p+0
src/math/special/fma.h:673: RU fmal(0x1.0000000000001p+0,0x1p+0,0x1p+53) want 0x1.0000000000001p+53 got 0x1.000008p+12 ulperr -4503599358935040.000 = -0x1.fffffep+51 + 0x1p-1
src/math/special/fma.h:674: RU fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p+53) want 0x1.0000000000001p+53 got 0x1.ffc02p+10 ulperr -4503599358935040.000 = -0x1.fffffep+51 + 0x1p-1
src/math/special/fma.h:675: RU fmal(0x1p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp+53) want 0x1p+54 got -0x1.ffffep+10 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-2
src/math/special/fma.h:676: RU fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep+53) want 0x1.fffffffffffffp+53 got 0x1.ffc02p+10 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:677: RU fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p-52) want 0x1.0000000000002p+0 got -0x1.fffffp-42 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:678: RU fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp-53) want 0x1.0000000000002p+0 got -0x1.fffff8p-41 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:679: RU fmal(0x1.0000000000005p+0,0x1.ffffffffffffbp-1,0x1p-52) want 0x1.0000000000004p+0 got -0x1.8fffff8p-37 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:680: RU fmal(0x1.0000000000006p+0,0x1.ffffffffffffdp-1,0x1p-52) want 0x1.0000000000006p+0 got -0x1.1fffff8p-37 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:699: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff5p+0 got 0x1.6800008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:700: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1p+0) want 0x1.ffffffffffff9p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:701: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffff7p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:702: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffff5p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:703: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffff7p+0 got 0x1.f800008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:704: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffff5p+0 got 0x1.f800008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:705: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffff7p+0 got 0x1.2000004p-36 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:706: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffff5p+0 got 0x1.2000004p-36 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:707: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.fffffffffffffp-1) want 0x1.ffffffffffff7p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:708: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffff5p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:709: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff3p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:710: RU fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep-1) want 0x1p+1 got -0x1.fffffp-42 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-2
src/math/special/fma.h:711: RU fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffep+0 got -0x1.fffffp-42 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:712: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.fffffffffffffp-1) want 0x1p+1 got -0x1.fffff8p-41 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-2
src/math/special/fma.h:713: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffffep+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:714: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffffcp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:715: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1p+0) want 0x1p+1 got -0x1.7ffffcp-40 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-2
src/math/special/fma.h:716: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffffep+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:717: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffffcp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:718: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffffep+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:719: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffffcp+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:720: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffffep+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:721: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffcp+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:722: RU fmal(0x1.5872449b765b9p+0,0x1.c9acf91f8de2bp+0,0x1.9265607e4d168p+0) want 0x1.fd190c77c2a68p+1 got -0x1.b3fc37becffffp-4 ulperr -9195828849672192.000 = -0x1.055c76p+53 + 0x1.0001b4p-1
src/math/special/fma.h:723: RU fmal(0x1.81d010b146d0ep+0,0x1.2d3c680dc9071p+0,0x1.a80b69538754cp+0) want 0x1.b7040b44973a7p+1 got 0x1.4d0cb20197001p+1 ulperr -1864177136173056.000 = -0x1.a7dd64p+50 + 0x1.ffacbcp-2
src/math/special/fma.h:724: RU fmal(0x1.6a44f2252b6a2p+0,0x1.da452a378b832p+0,0x1.1fe2ce329104p+0) want 0x1.df842b6f48b13p+1 got 0x1.12e95c1ba4001p+0 ulperr -6017591705337856.000 = -0x1.560f7cp+52 + 0x1.ffdda2p-2
src/math/special/fma.h:725: RU fmal(0x1.096b1d26463eep+0,0x1.d846d3e34333p+0,0x1.721e3480922b8p+0) want 0x1.ade2909c026ap+1 got -0x1.a139d9b2bffffp-1 ulperr -9397595675820032.000 = -0x1.0b1882p+53 + 0x1.000d0ap-1
src/math/special/fma.h:726: RU fmal(0x1.99bd3434c454bp+0,0x1.03cb8e4115bdep+0,0x1.109f107188b08p+0) want 0x1.5837a47d37fafp+1 got 0x1.cfdec0c00a001p+0 ulperr -1975290892910592.000 = -0x1.c1211p+50 + 0x1.ffc604p-2
src/math/special/fma.h:727: RU fmal(0x1.ba930a0a78ed2p+0,0x1.8c24e8d67f636p+0,0x1.ac49dbfbf8affp+0) want 0x1.164947ae6a5dap+2 got -0x1.33e3b04ecffffp-2 ulperr -5234191281160192.000 = -0x1.298782p+52 + 0x1.000268p-1
src/math/special/fma.h:728: RU fmal(0x1.be224ad773191p+0,0x1.d96b77169731fp+0,0x1.662cfb75d8edep+0) want 0x1.27cd67e720f79p+2 got 0x1.e4711611c7801p+1 ulperr -942615600037888.000 = -0x1.aca6e6p+49 + 0x1.ffc372p-2
src/math/special/fma.h:729: RU fmal(0x1.59e7a1b0bdb3cp+0,0x1.2decba4d46421p+0,0x1.88f4062e96df5p+0) want 0x1.90749e4794f7ap+1 got -0x1.b3c84a9a87fffp-1 ulperr -8961479327875072.000 = -0x1.fd66bp+52 + 0x1.000d9ep-1
src/math/special/fma.h:730: RU fmal(0x1.22edf4b4da9a7p+0,0x1.dfa8d65f506cdp+0,0x1.2799208da2fbap+0) want 0x1.a45a1e99ed7a9p+1 got 0x1.a0bdfb8976001p-1 ulperr -5562059420860416.000 = -0x1.3c2a9ep+52 + 0x1.ffe5f4p-2
src/math/special/fma.h:731: RU fmal(0x1.ad5b991a2a279p+0,0x1.f02fd26706024p+0,0x1.831cdd5c8797cp+0) want 0x1.30d3a2ac90a61p+2 got 0x1.c7c15e1c82001p+1 ulperr -1353701616779264.000 = -0x1.33cbcep+50 + 0x1.ffc708p-2
src/math/special/fma.h:732: RU fmal(0x1.531f9620e764ap+0,0x1.cad61b54d4425p+0,0x1.df817cae8a9afp+0) want 0x1.0fd4e7f8671ddp+2 got 0x1.8e74e26059001p+1 ulperr -1277252004216832.000 = -0x1.2269dap+50 + 0x1.ffce32p-2
src/math/special/fma.h:733: RU fmal(0x1.629a5ad79494fp+0,0x1.049e58693f4c4p+0,0x1.45b0109e4d00cp+0) want 0x1.5758154e14966p+1 got -0x1.01173c9c1ffffp-3 ulperr -6322846842224640.000 = -0x1.676988p+52 + 0x1.000202p-1
src/math/special/fma.h:734: RU fmal(0x1.2f52b53f9240ap+0,0x1.1d5c686dbb0dap+0,0x1.6da3e392a4fd4p+0) want 0x1.5fe03a6795913p+1 got 0x1.5bdb7d9084001p+0 ulperr -3130480060792832.000 = -0x1.63e4f6p+51 + 0x1.ffd484p-2
src/math/special/fma.h:735: RU fmal(0x1.058667552b49ep+0,0x1.23307bacc1c42p+0,0x1.5b059b47cd8f5p+0) want 0x1.423f752486d14p+1 got -0x1.4bfb042743fffp+0 ulperr -8589175993401344.000 = -0x1.e83cf6p+52 + 0x1.0014cp-1
src/math/special/fma.h:736: RU fmal(0x1.a717d95337ed8p+0,0x1.2b1c37846aaadp+0,0x1.be65672f885b1p+0) want 0x1.d65e72303c076p+1 got -0x1.7e0573ec03fffp+1 ulperr -14995406941323264.000 = -0x1.aa31f2p+53 + 0x1.002fcp-1
src/math/special/fma.h:737: RU fmal(0x1.deb79287b3d32p+0,0x1.62776b829babap+0,0x1.67daf18bd2eb1p+0) want 0x1.ff5a0d45c69d7p+1 got 0x1.ad881652a0001p-3 ulperr -8523519902089216.000 = -0x1.e4818ap+52 + 0x1.fff94ap-2
src/math/special/fma.h:738: RU fmal(0x1.fbf12d3a6de91p+0,0x1.879fe6124f11p+0,0x1.9f3f1247a8641p+0) want 0x1.2a126c6980019p+2 got 0x1.45e3d61a84001p+2 ulperr 489379780886528.000 = 0x1.bd169cp+48 + 0x1.ffae88p-2
src/math/special/fma.h:739: RU fmal(0x1.c589628460e01p+0,0x1.e1bec1c797533p+0,0x1.349f30cdb84bbp+0) want 0x1.2286118b6f6e6p+2 got -0x1.8e9d95e0667ffp+1 ulperr -8617206560587776.000 = -0x1.e9d4dcp+52 + 0x1.0018eap-1
src/math/special/fma.h:740: RU fmal(0x1.46fd6c2c924ebp+0,0x1.65e2f02e730a1p+0,0x1.37739d2751098p+0) want 0x1.804a71c1f1273p+1 got 0x1.855d7947cb001p+0 ulperr -3335623268106240.000 = -0x1.7b376ap+51 + 0x1.ffcf54p-2
src/math/special/fma.h:741: RU fmal(0x1.f99e595ae11fdp+0,0x1.bd33d9a1d81bp+0,0x1.932a2a2e244c1p+0) want 0x1.409e34f8f2f8ap+2 got -0x1.7a49668943fffp+2 ulperr -12295260860317696.000 = -0x1.5d73ccp+53 + 0x1.002f4ap-1
src/math/special/fma.h:742: RU fmal(0x1.59ea1e56bfe55p+0,0x1.6f46b7d412a44p+0,0x1.80f2bc9a32cc3p+0) want 0x1.b89c7640e33p+1 got -0x1.ca180bfb5ffffp-3 ulperr -8254993178034176.000 = -0x1.d53df6p+52 + 0x1.000394p-1
src/math/special/fma.h:743: RU fmal(0x1.61490fcb44129p+0,0x1.0038ec4fc35c2p+0,0x1.df7436ed7a7b7p+0) want 0x1.a085ea68d05dp+1 got -0x1.5ed2c690f6fffp+1 ulperr -13499301254660096.000 = -0x1.7fac58p+53 + 0x1.002bdap-1
src/math/special/fma.h:744: RU fmal(0x1.d41b98788502bp+0,0x1.1a7b77843aca6p+0,0x1.05be891837d36p+0) want 0x1.8523596cecedap+1 got -0x1.48c8fc403bfffp-1 ulperr -8291801584631808.000 = -0x1.d75598p+52 + 0x1.000a46p-1
src/math/special/fma.h:745: RU fmal(0x1.3153cf6f69af9p+0,0x1.aaa947e38e57ap+0,0x1.8519f9b590645p+0) want 0x1.c0fcab7b46369p+1 got 0x1.25f4f4bd50001p-3 ulperr -7575453653008384.000 = -0x1.ae9d5cp+52 + 0x1.fffb68p-2
src/math/special/fma.h:746: RU fmal(0x1.c25a1f73581aap+0,0x1.0a51ffca372ap+0,0x1.0c77e3ebac5f3p+0) want 0x1.707ce48c7d72ep+1 got -0x1.3261c9a0dffffp+1 ulperr -11872435288670208.000 = -0x1.516f56p+53 + 0x1.00264cp-1
src/math/special/fma.h:747: RU fmal(0x1.829c2cde44b7p+0,0x1.f692e86d8cb36p+0,0x1.455e72d264bfp+0) want 0x1.0f16a3b8b3f98p+2 got -0x1.684386465ffffp+0 ulperr -6353494655107072.000 = -0x1.692784p+52 + 0x1.000b42p-1
src/math/special/fma.h:748: RU fmal(0x1.94729588dcc69p+0,0x1.c3bb794c6edf8p+0,0x1.9da4e94d262d2p+0) want 0x1.19d4bd84d9fd3p+2 got 0x1.e1b9a27570001p-1 ulperr -3898698849320960.000 = -0x1.bb3b12p+51 + 0x1.fff0f2p-2
src/math/special/fma.h:749: RU fmal(0x1.e6a5e7e39c3d5p+0,0x1.1b69af2bdd978p+0,0x1.e7ef1eafa119cp+0) want 0x1.00ac5b44c9f32p+2 got -0x1.6777d5d393fffp+1 ulperr -7677358731427840.000 = -0x1.b46846p+52 + 0x1.001678p-1
src/math/special/fma.h:750: bad fp exception: RU fmal(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022)=0x1.b594d0e4368fp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:750: RU fmal(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022) want 0x1.b594d0e4368fp-1022 got -0x1.9dedc9560fffep-1023 ulperr -11338968138252288.000 = -0x1.4245dap+53 + 0x1.0019dep-1
src/math/special/fma.h:751: RU fmal(0x1.022db53c98d14p-1022,0x1.21157eef74848p-2,0x1.2f880432b1bc1p-1022) want 0x1.786ad60a02b3ep-1022 got -0x1.150255ac97fffp-1022 ulperr -11495198647386112.000 = -0x1.46b694p+53 + 0x1.0022ap-1
src/math/special/fma.h:752: bad fp exception: RU fmal(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022)=0x1.cbb085199a3f6p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:752: RU fmal(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022) want 0x1.cbb085199a3f6p-1022 got -0x1.6ed115da2f7fep-1023 ulperr -11313497908445184.000 = -0x1.418c88p+53 + 0x1.0016eep-1
src/math/special/fma.h:753: bad fp exception: RU fmal(0x1.adbc3a9d816dep-1022,0x1.e039d4431e3cdp-2,0x1.93ceef6fe18a2p-1022)=0x1.2eabb7dc0e2f1p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:753: RU fmal(0x1.adbc3a9d816dep-1022,0x1.e039d4431e3cdp-2,0x1.93ceef6fe18a2p-1022) want 0x1.2eabb7dc0e2f1p-1021 got 0x1.ef7b6794e3002p-1023 ulperr -3145487213395968.000 = -0x1.6599bap+51 + 0x1.ffe108p-2
src/math/special/fma.h:754: RU fmal(0x1.645aa5c2df3afp-1022,0x1.649edfcad854fp-2,0x1.8b43e0bbaeb01p-1022) want 0x1.03af571d2b505p-1021 got 0x1.0ce86163c0201p-1021 ulperr 162249452814336.000 = 0x1.27214ap+47 + 0x1.ffbcc6p-2
src/math/special/fma.h:755: bad fp exception: RU fmal(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022)=0x1.ad9ce7fcefa4p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:755: RU fmal(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022) want 0x1.ad9ce7fcefa4p-1022 got -0x1.12bc4931e5ff8p-1025 ulperr -8161979755659264.000 = -0x1.cff47p+52 + 0x1.00044ap-1
src/math/special/fma.h:756: RU fmal(0x1.8ee3feb00c3e7p-1022,0x1.53bd9353313bcp-2,0x1.5501b57dc3b6fp-1022) want 0x1.d9598906f0bb4p-1022 got -0x1.4660b83f56fffp-1022 ulperr -14068955652030464.000 = -0x1.8fdd2p+53 + 0x1.0028ccp-1
src/math/special/fma.h:757: RU fmal(0x1.161225cfa61e2p-1022,0x1.b6dd69a0af5bp-2,0x1.924ffc3ead5c3p-1022) want 0x1.04be6fc25367cp-1021 got -0x1.f3ab56daa7fffp-1022 ulperr -8982192344530944.000 = -0x1.fe941ap+52 + 0x1.001f3ap-1
src/math/special/fma.h:758: bad fp exception: RU fmal(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022)=0x1.70b6c3169f044p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:758: RU fmal(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022) want 0x1.70b6c3169f044p-1022 got -0x1.a779baefbe7fep-1023 ulperr -10211413595258880.000 = -0x1.2239dp+53 + 0x1.001a78p-1
src/math/special/fma.h:759: RU fmal(0x1.ce0e2ea55040ep-1022,0x1.ce5a55fa3828dp-2,0x1.f2f444d50ce59p-1022) want 0x1.61ca36f5a8a7ap-1021 got -0x1.173f0cea127ffp-1022 ulperr -8680213730820096.000 = -0x1.ed69bcp+52 + 0x1.001174p-1
src/math/special/fma.h:760: bad fp exception: RU fmal(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022)=0x1.1440cf1c105ecp-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:760: RU fmal(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022) want 0x1.1440cf1c105ecp-1021 got -0x1.f88fda5ffffp-1030 ulperr -4877233327964160.000 = -0x1.153d16p+52 + 0x1.00002p-1
src/math/special/fma.h:761: bad fp exception: RU fmal(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022)=0x1.1186e1f77012ep-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:761: RU fmal(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022) want 0x1.1186e1f77012ep-1021 got -0x1.2ffba526fbff8p-1025 ulperr -5146168610783232.000 = -0x1.24869cp+52 + 0x1.00026p-1
src/math/special/fma.h:762: bad fp exception: RU fmal(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022)=0x1.8d86310bad176p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:762: RU fmal(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022) want 0x1.8d86310bad176p-1022 got -0x1.1b755c367f7fep-1023 ulperr -9486645380251648.000 = -0x1.0da06ep+53 + 0x1.0011b8p-1
src/math/special/fma.h:763: RU fmal(0x1.fb3391a4b1d23p-1022,0x1.4d8705b057caep-2,0x1.d026cb6dae73bp-1022) want 0x1.3aad18b424c68p-1021 got -0x1.0a1784c7c6bffp-1021 ulperr -10216978799132672.000 = -0x1.22624ep+53 + 0x1.002142p-1
src/math/special/fma.h:764: bad fp exception: RU fmal(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022)=0x1.c0048fd33a418p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:764: RU fmal(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022) want 0x1.c0048fd33a418p-1022 got -0x1.d026e457f0ffcp-1024 ulperr -9922974329077760.000 = -0x1.1a0724p+53 + 0x1.000e82p-1
src/math/special/fma.h:765: bad fp exception: RU fmal(0x1.aa9eff070281cp-1022,0x1.fab05661b48ebp-2,0x1.cbe2af6c69c6ep-1022)=0x1.4f7ddbe122765p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:765: RU fmal(0x1.aa9eff070281cp-1022,0x1.fab05661b48ebp-2,0x1.cbe2af6c69c6ep-1022) want 0x1.4f7ddbe122765p-1021 got 0x1.9e529858da002p-1023 ulperr -4079820841418752.000 = -0x1.cfd26ap+51 + 0x1.ffe61ap-2
src/math/special/fma.h:766: bad fp exception: RU fmal(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022)=0x1.e0e762ee2e7c6p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:766: RU fmal(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022) want 0x1.e0e762ee2e7c6p-1022 got -0x1.e2fe0f96ebffep-1023 ulperr -12708595627982848.000 = -0x1.693334p+53 + 0x1.001e3p-1
src/math/special/fma.h:767: RU fmal(0x1.4dab43918a9a8p-1022,0x1.ed667442b4751p-2,0x1.3f25f82e02e3ep-1022) want 0x1.dfec0ee732dcbp-1022 got 0x1.6a41c4d18a001p-1022 ulperr -2069987942465536.000 = -0x1.d6a928p+50 + 0x1.ffa57p-2
src/math/special/fma.h:768: RU fmal(0x1.7943735951931p-1022,0x1.fa6a357c5c9ddp-2,0x1.0bed44b0b71b4p-1022) want 0x1.c6803a6059abfp-1022 got 0x1.0e970cce13401p-1022 ulperr -3235393763803136.000 = -0x1.6fd25ap+51 + 0x1.ffbc5ap-2
src/math/special/fma.h:769: bad fp exception: RU fmal(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022)=0x1.8640492c4595ap-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:769: RU fmal(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022) want 0x1.8640492c4595ap-1022 got -0x1.3271a1b37ffep-1027 ulperr -7033839486500864.000 = -0x1.8fd3d6p+52 + 0x1.000132p-1
src/math/special/fma.h:770: RU fmal(0x1.f52172c56bdf5p-1022,0x1.672b2de422734p-2,0x1.7bc5d708e5a34p-1022) want 0x1.15c5b95145cc7p-1021 got 0x1.3cf4f71d18801p-1021 ulperr 689341714137088.000 = 0x1.3979fp+49 + 0x1.ffb0c2p-2
src/math/special/fma.h:771: bad fp exception: RU fmal(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022)=0x1.e7fa0dd76fbfp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:771: RU fmal(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022) want 0x1.e7fa0dd76fbfp-1022 got -0x1.60a5d541afffcp-1024 ulperr -10135538703007744.000 = -0x1.2011cp+53 + 0x1.000b06p-1
src/math/special/fma.h:772: bad fp exception: RU fmal(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022)=0x1.b63a7f56fce2p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:772: RU fmal(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022) want 0x1.b63a7f56fce2p-1022 got -0x1.497a9bc51fffcp-1024 ulperr -9158460486713344.000 = -0x1.044c92p+53 + 0x1.000a4cp-1
src/math/special/fma.h:773: RU fmal(0x1.f73d5f4e81fd8p-1022,0x1.7ccff2642124ap-2,0x1.e7d836a0c8308p-1022) want 0x1.517f1763126d4p-1021 got -0x1.06939f3371fffp-1021 ulperr -10556596895612928.000 = -0x1.2c095ap+53 + 0x1.0020d2p-1
src/math/special/fma.h:774: RU fmal(0x1.b4328925969fbp-1022,0x1.8fa02832a22d5p-2,0x1.2084598e2f8c6p-1022) want 0x1.cabf43838dc52p-1022 got -0x1.7c61d65f0a3ffp-1022 ulperr -14762118276448256.000 = -0x1.a3908cp+53 + 0x1.002f8cp-1
src/math/special/fma.h:775: bad fp exception: RU fmal(0x1.66ee60a92676fp-1022,0x1.eddd2e7681ce4p-2,0x1.b81d57daeb3a7p-1022)=0x1.329c918ffb683p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:775: RU fmal(0x1.66ee60a92676fp-1022,0x1.eddd2e7681ce4p-2,0x1.b81d57daeb3a7p-1022) want 0x1.329c918ffb683p-1021 got 0x1.cd379885b8008p-1025 ulperr -4886854591578112.000 = -0x1.15c918p+52 + 0x1.fff8ccp-2
src/math/special/fma.h:776: bad fp exception: RU fmal(0x1.ff2737585895dp-1022,0x1.fb4bf3828ae4ap-2,0x1.4a866847740fp-1022)=0x1.23e07e4dbbeabp-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:776: RU fmal(0x1.ff2737585895dp-1022,0x1.fb4bf3828ae4ap-2,0x1.4a866847740fp-1022) want 0x1.23e07e4dbbeabp-1021 got 0x1.46c53f7571002p-1023 ulperr -3697601232764928.000 = -0x1.a45e5cp+51 + 0x1.ffeb94p-2
src/math/special/fma.h:777: bad fp exception: RU fmal(0x1.5e2008d269a86p-1022,0x1.507bbbe4d78eep-2,0x1.6220c6f83f636p-1022)=0x1.d52d9874f1c75p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:777: RU fmal(0x1.5e2008d269a86p-1022,0x1.507bbbe4d78eep-2,0x1.6220c6f83f636p-1022) want 0x1.d52d9874f1c75p-1022 got 0x1.eda0503c4a002p-1023 ulperr -3911886277967872.000 = -0x1.bcbaep+51 + 0x1.ffc24cp-2
src/math/special/fma.h:778: bad fp exception: RU fmal(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022)=0x1.9864925e2fb1p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:778: RU fmal(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022) want 0x1.9864925e2fb1p-1022 got -0x1.53ae580e8bff8p-1025 ulperr -7931489261977600.000 = -0x1.c2da5cp+52 + 0x1.00054ep-1
src/math/special/fma.h:779: RU fmal(0x1.7b353b81e793dp-1022,0x1.82b426f874c6dp-2,0x1.d92b19d21fd5cp-1022) want 0x1.342fb0c544a79p-1021 got 0x1.2af4c8aebe401p-1022 ulperr -2792024021401600.000 = -0x1.3d6a98p+51 + 0x1.ffdaa2p-2
src/math/special/fma.h:780: bad fp exception: RU fmal(0x1.5be667823370ap-1022,0x1.a8a99b163869bp-2,0x1.95456b68dc3bcp-1022)=0x1.12c638de03c71p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:780: RU fmal(0x1.5be667823370ap-1022,0x1.a8a99b163869bp-2,0x1.95456b68dc3bcp-1022) want 0x1.12c638de03c71p-1021 got 0x1.49af7fc787002p-1023 ulperr -3383908095754240.000 = -0x1.80b4bp+51 + 0x1.ffeb66p-2
src/math/special/fma.h:781: bad fp exception: RU fmal(0x1.17b0fc6c850e5p-1022,0x1.d1d0a4853c315p-2,0x1.36b79f7c0c24p-1022)=0x1.b5f2baff5635dp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:781: RU fmal(0x1.17b0fc6c850e5p-1022,0x1.d1d0a4853c315p-2,0x1.36b79f7c0c24p-1022) want 0x1.b5f2baff5635dp-1022 got 0x1.6a1930472401p-1026 ulperr -7306333686595584.000 = -0x1.9f5126p+52 + 0x1.fffa58p-2
src/math/special/fma.h:782: RU fmal(0x1.bd97819bacfd8p-1022,0x1.2c25f267ba4eep-2,0x1.804b5204a3f3ap-1022) want 0x1.01739c190fd97p-1021 got 0x1.b9e166e6b4001p-1022 ulperr -642314640818176.000 = -0x1.241744p+49 + 0x1.ffc8c4p-2
src/math/special/fma.h:783: RU fmal(0x1.596577053873dp-1022,0x1.3562ab2d29949p-2,0x1.b3f1ee75db6e7p-1022) want 0x1.0e268a498009bp-1021 got 0x1.e8136bc159401p-1022 ulperr -459377991483392.000 = -0x1.a1cd46p+48 + 0x1.ffc2fep-2
src/math/special/fma.h:784: bad fp exception: RU fmal(0x1.3c7a68cf0f7b3p-1022,0x1.9a55c15b167bdp-2,0x1.7635b7b163c07p-1022)=0x1.f5073b93b7b81p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:784: RU fmal(0x1.3c7a68cf0f7b3p-1022,0x1.9a55c15b167bdp-2,0x1.7635b7b163c07p-1022) want 0x1.f5073b93b7b81p-1022 got 0x1.75f9a97213802p-1023 ulperr -5524660993130496.000 = -0x1.3a0a66p+52 + 0x1.ffd14p-2
src/math/special/fma.h:785: RU fmal(0x1.5825164bc4068p-1022,0x1.dcbb6e5ff3245p-2,0x1.52fc3be0e84dap-1022) want 0x1.f334771c2dcfbp-1022 got 0x1.2b86ba6b02001p-1022 ulperr -3512783958179840.000 = -0x1.8f5b78p+51 + 0x1.ffb51ep-2
src/math/special/fma.h:786: RU fmal(0x1.139ea77b760ecp+1022,0x1.9b25f2fd017eap+2,-0x1.bc16788922b6fp+1023) want 0x1.b93aac527380fp+1023 got 0x1.c3ec4f2ee0001p+1022 ulperr -3787028357447680.000 = -0x1.ae8908p+51 + 0x1.ffc782p-2
src/math/special/fma.h:787: RU fmal(0x1.0e6f9c1657d7cp+1022,0x1.4d5c6b55ab5f1p+2,-0x1.e027dd5742e2cp+1023) want 0x1.c0538372b4bbfp+1022 got 0x1.54dede6de0001p+1021 ulperr -4888708943708160.000 = -0x1.15e414p+52 + 0x1.ffd564p-2
src/math/special/fma.h:788: RU fmal(0x1.1182524fa411cp+1022,0x1.a3dba56842d19p+2,-0x1.c1ad59474d71fp+1023) want 0x1.bf78969300a77p+1023 got 0x1.8651491ef0001p+1022 ulperr -4438724683235328.000 = -0x1.f89fe4p+51 + 0x1.ffcf36p-2
src/math/special/fma.h:789: RU fmal(0x1.1cbf4fb8ec82p+1022,0x1.5e32019a84fbbp+2,-0x1.985af08f32edep+1023) want 0x1.72af6bbad4a29p+1023 got 0x1.a68c1c1ec0001p+1023 ulperr 912367152005120.000 = 0x1.9ee584p+49 + 0x1.ff965cp-2
src/math/special/fma.h:790: RU fmal(0x1.311e25c6db346p+1022,0x1.4e30db6c4b51dp+2,-0x1.7681f7a9786a7p+1023) want 0x1.a61d29434fc14p+1023 got -0x1.791d1988fffffp+1017 ulperr -7529566222417920.000 = -0x1.ac019cp+52 + 0x1.0000bcp-1
src/math/special/fma.h:791: RU fmal(0x1.1201cf577052fp+1022,0x1.59730b2db7a16p+2,-0x1.56f1a64a078d5p+1023) want 0x1.8c8d801df34dap+1023 got -0x1.3048609fd7fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.001304p-1
src/math/special/fma.h:792: RU fmal(0x1.3e52335b76e81p+1022,0x1.4dbd56f857479p+2,-0x1.509340c11bd2ep+1023) want 0x1.ed6576837f654p+1023 got -0x1.e498d5441bfffp+1022 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.001e4ap-1
src/math/special/fma.h:793: RU fmal(0x1.18566b4f843cbp+1022,0x1.444fba10eaf29p+2,-0x1.f927beae57f0ap+1023) want 0x1.9a433b979655ap+1022 got 0x1.a048d2820c001p+1022 ulperr 105937230626816.000 = 0x1.8165bcp+46 + 0x1.004bf6p-1
src/math/special/fma.h:794: RU fmal(0x1.3fbe544fe1be8p+1022,0x1.2d2a5fda03639p+2,-0x1.007407dbfd03cp+1023) want 0x1.efdb644b613e6p+1023 got -0x1.e14223655ffffp+1022 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.001e14p-1
src/math/special/fma.h:795: RU fmal(0x1.263a0d3bc2e4p+1022,0x1.4cc198adbc651p+2,-0x1.734b1c1f7fdb8p+1023) want 0x1.899878afc0fa3p+1023 got 0x1.a136204480001p+1023 ulperr 415454233362432.000 = 0x1.79da7ap+48 + 0x1.ff97b2p-2
src/math/special/fma.h:796: RU fmal(0x1.5bf4aec8efc8ep+1022,0x1.555f0341516c9p+2,-0x1.c706408acd14cp+1023) want 0x1.d8f5e18b868bdp+1023 got 0x1.3e5679fdf8001p+1022 ulperr -5520279589617664.000 = -0x1.39caa4p+52 + 0x1.ffd836p-2
src/math/special/fma.h:797: RU fmal(0x1.1e57f1af78279p+1022,0x1.34bc0c7f082b3p+2,-0x1.497b92c1365edp+1023) want 0x1.692cb7ec68a94p+1023 got -0x1.c0a1f29b27fffp+1021 ulperr -8326959113175040.000 = -0x1.d95534p+52 + 0x1.000e06p-1
src/math/special/fma.h:798: RU fmal(0x1.1d9824cd73511p+1022,0x1.1d557ddfe47ffp+2,-0x1.556cdb1d20a72p+1023) want 0x1.2736a6b6e35f3p+1023 got 0x1.bc6f9c9778001p+1021 ulperr -3238800209739776.000 = -0x1.70357ep+51 + 0x1.ffe43ap-2
src/math/special/fma.h:799: RU fmal(0x1.1ff85a24aff31p+1022,0x1.39ab374b2680dp+2,-0x1.35e6b07b651b8p+1023) want 0x1.8bc7ce2087081p+1023 got 0x1.84b319bafa001p+1023 ulperr -124568110891008.000 = -0x1.c52d18p+46 + 0x1.ff9ed4p-2
src/math/special/fma.h:800: RU fmal(0x1.0449b3965227ep+1022,0x1.4430d4441f9f2p+2,-0x1.a6966c96307ep+1023) want 0x1.d94eda8c81772p+1022 got -0x1.992ed6b71ffffp+1021 ulperr -11925733685329920.000 = -0x1.52f322p+53 + 0x1.001992p-1
src/math/special/fma.h:801: RU fmal(0x1.3c91fa00fd0c7p+1022,0x1.1b6661c0b0303p+2,-0x1.f1f2846b64483p+1023) want 0x1.95eae0d2644d4p+1022 got 0x1.9985d8eaa0001p+1019 ulperr -6240425346072576.000 = -0x1.62ba24p+52 + 0x1.00799ap-1
src/math/special/fma.h:802: RU fmal(0x1.0979b36d46534p+1022,0x1.12fa205f41f7fp+2,-0x1.a83ecf4544a63p+1023) want 0x1.2420f34e2aa3dp+1022 got -0x1.335a0fe67ffffp+1019 ulperr -5815056080044032.000 = -0x1.4a8c34p+52 + 0x1.ff099ap-2
src/math/special/fma.h:803: RU fmal(0x1.4c89df582a599p+1022,0x1.55f3dc473ea8fp+2,-0x1.e35037292ddfp+1023) want 0x1.95109fdbc3772p+1023 got -0x1.afa3b29623fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.001afap-1
src/math/special/fma.h:804: RU fmal(0x1.35ee0a669c4fbp+1022,0x1.2263cb63f386ap+2,-0x1.449218ae35ac7p+1023) want 0x1.7a8ed977d817bp+1023 got 0x1.47da9ddfb8001p+1022 ulperr -3775828693352448.000 = -0x1.ad4314p+51 + 0x1.ffd704p-2
src/math/special/fma.h:805: RU fmal(0x1.117cc860f61bcp+1022,0x1.440985b25d994p+2,-0x1.d7a7d82000449p+1023) want 0x1.b960b7088e75p+1022 got 0x1.ddfba372c0001p+1022 ulperr 643964982001664.000 = 0x1.24d764p+49 + 0x1.00444p-1
src/math/special/fma.h:806: RU fmal(0x1.1e78a37be320fp+1022,0x1.0db0fce62287bp+2,-0x1.376337da5eb53p+1023) want 0x1.24326b9956dfcp+1023 got -0x1.d2881b3595fffp+1023 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.003a52p-1
src/math/special/fma.h:807: RU fmal(0x1.0c79b5c8331c2p+1022,0x1.0aba6ea746b5p+2,-0x1.c86f1fcaf0741p+1023) want 0x1.9c135bb2cff85p+1021 got -0x1.cc298babfffffp+1019 ulperr -9273125376098304.000 = -0x1.078edep+53 + 0x1.fe1cc2p-2
src/math/special/fma.h:808: RU fmal(0x1.556c4c072f272p+1022,0x1.347758d7d4eb5p+2,-0x1.c6fe4f24b248dp+1023) want 0x1.6fcc9f756df6ep+1023 got -0x1.f6f4c76597fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.001f7p-1
src/math/special/fma.h:809: RU fmal(-0x1.e8349b891b2fp-1,0x1.4a6dec9b72578p-1,0x1.3b6151ce809ddp-1) want 0x1.3a62fe330b356p-11 got -0x1.d97120fffffffp-11 ulperr -13859626462216192.000 = -0x1.89ea0ep+53 + 0x1.003b2ep-1
src/math/special/fma.h:810: RU fmal(0x1.2996632ac7d74p-1,-0x1.bb3c58b654d94p-1,0x1.01a6660e64a31p-1) want 0x1.ed045bb956a8fp-15 got -0x1.070d61fffffffp-15 ulperr -13300911346548736.000 = -0x1.7a08dep+53 + 0x1.0aa0e2p-1
src/math/special/fma.h:811: RU fmal(-0x1.c602e894c1df8p-1,0x1.a1c980e7d3f94p-1,0x1.7271244b43386p-1) want -0x1.ba251fe026e5bp-15 got -0x1.af2b6cp-15 ulperr 193081311756288.000 = 0x1.5f367ep+47 + 0x1.fa6bcap-2
src/math/special/fma.h:812: RU fmal(-0x1.c84baf47e85cp-1,0x1.770b5149ef2ep-1,0x1.4d80f139320bap-1) want -0x1.79277433b9e23p-10 got 0x1.d4b6fp-11 ulperr 10757823629623296.000 = 0x1.31c178p+53 + 0x1.ffc56ap-2
src/math/special/fma.h:813: RU fmal(-0x1.36e667dcf9c6p-1,0x1.2591f82556b88p-1,0x1.2452a0f795f95p-1) want 0x1.c83c8e63c15ap-3 got -0x1.221ccbfffffffp-12 ulperr -8036166204915712.000 = -0x1.c8cd9cp+52 + 0x1.000012p-1
src/math/special/fma.h:814: RU fmal(0x1.88b2cede61e4cp-1,-0x1.71dcab5ad9e9p-3,0x1.32b27fea2ae97p-3) want 0x1.70461909b25e3p-7 got -0x1.affe57fffffffp-17 ulperr -6486162973655040.000 = -0x1.70b218p+52 + 0x1.00000ep-1
src/math/special/fma.h:815: RU fmal(0x1.8d1e44002c98p-3,-0x1.af9fdfb347834p-1,0x1.e280942fb4146p-4) want -0x1.761ac23896dfdp-5 got 0x1.0bec48p-14 ulperr 6590522625884160.000 = 0x1.76a0bap+52 + 0x1.ffffdep-2
src/math/special/fma.h:816: RU fmal(0x1.236e8cb9492c8p-1,-0x1.d37443a57f1c4p-1,0x1.ca10df801aabcp-4) want -0x1.a1a2cdf0138f9p-2 got 0x1.f090cab7p-5 ulperr 8439088898113536.000 = 0x1.dfb4e8p+52 + 0x1.fff07cp-2
src/math/special/fma.h:817: RU fmal(-0x1.6ad943e610fb8p-1,-0x1.cef92a7bb18bcp-1,0x1.f28587d8fb0ep-4) want 0x1.866b5204b9aedp-1 got -0x1.8c9eb9a6fffffp-5 ulperr -7304415446827008.000 = -0x1.9f353cp+52 + 0x1.00031ap-1
src/math/special/fma.h:818: RU fmal(-0x1.60a8569a5d894p-1,-0x1.ca07e29dd171cp-1,0x1.b6c475ace09ecp-4) want 0x1.72549291e2f7bp-1 got -0x1.b6fd181e7ffffp-5 ulperr -6997593720619008.000 = -0x1.8dc464p+52 + 0x1.00036ep-1
src/math/special/fma.h:819: RU fmal(0x1.d1962720d678cp-1,-0x1.4548ee45c4084p-1,0x1.f416ab193d75cp-4) want -0x1.d2929879dc853p-2 got 0x1.fc38e6f4p-8 ulperr 8347732259373056.000 = 0x1.da837ep+52 + 0x1.fffe04p-2
src/math/special/fma.h:820: RU fmal(-0x1.9ddcb295a7d64p-1,0x1.67fb3a2068a78p-1,0x1.da9cd4597fe0ap-4) want -0x1.cf4f6eb4fc5d8p-2 got 0x1.59da5512p-6 ulperr 8530910467063808.000 = 0x1.e4ed16p+52 + 0x1.fffa98p-2
src/math/special/fma.h:821: RU fmal(0x1.c00d16ed45b88p+0,0x1.c787eddda3664p+0,0x1.1e3e6f0cc1802p-5) want 0x1.931b8f379dcc4p+1 got -0x1.63fb63b7fffffp-6 ulperr -7140470102687744.000 = -0x1.95e384p+52 + 0x1.000058p-1
src/math/special/fma.h:822: RU fmal(0x1.19c2a2372c184p+0,-0x1.cb506961c19fp+0,0x1.db1abf3f7ba3ap-6) want -0x1.f21c0eab0bc18p+0 got 0x1.a29607ffffff8p-13 ulperr 8763735812341760.000 = 0x1.f22924p+52 + 0x1.fffffcp-2
src/math/special/fma.h:823: RU fmal(-0x1.3a263218ccd1cp+0,-0x1.e818d390df27cp+0,0x1.2a81ed71785f5p-5) want 0x1.3025ab0f63926p+1 got -0x1.bfdf0b9bfffffp-6 ulperr -5412167746584576.000 = -0x1.33a568p+52 + 0x1.00007p-1
src/math/special/fma.h:824: RU fmal(0x1.b0b041fbaca58p+0,-0x1.9d5f76d178e6p+0,0x1.0215c7bb84cf9p-6) want -0x1.5b52aec7ef4p+1 got 0x1.6be7a78p-7 ulperr 6135178246225920.000 = 0x1.5cbe98p+52 + 0x1.ffffa6p-2
src/math/special/fma.h:825: RU fmal(-0x1.377549d9a87f4p+0,-0x1.a13d4a03dd6d8p+0,0x1.f190388bc5cc6p-7) want 0x1.ff83bebbd6fe5p+0 got -0x1.e5a6a43ffffffp-9 ulperr -9015346807701504.000 = -0x1.003b48p+53 + 0x1.00001ep-1
src/math/special/fma.h:826: RU fmal(0x1.6a726c0762ac8p-1,-0x1.d32f2d30e483cp+0,0x1.f953eb70fbde6p-7) want -0x1.46c61b3070332p+0 got 0x1.e556e47fffffep-11 ulperr 5752835962568704.000 = 0x1.4702c8p+52 + 0x1.fffffp-2
src/math/special/fma.h:827: RU fmal(0x1.94cf2509d40cp-1,0x1.721976af6dfbp+0,0x1.f51a456921c3ep-7) want 0x1.28880842acc61p+0 got -0x1.effe1dfffffffp-8 ulperr -5250719389057024.000 = -0x1.2a7806p+52 + 0x1.00003ep-1
src/math/special/fma.h:828: RU fmal(0x1.b128eb0ad8728p-1,0x1.7682566a54268p+0,0x1.bd4122a074cafp-8) want 0x1.3e9469530e763p+0 got -0x1.6fe0c7bffffffp-9 ulperr -5617153650720768.000 = -0x1.3f4c58p+52 + 0x1.000016p-1
src/math/special/fma.h:829: RU fmal(0x1.c4ae75976e35cp+0,-0x1.11c329dd1160cp+0,0x1.9993f5e13c9bdp-8) want -0x1.e27d925b07cf1p+0 got 0x1.198edf6p-9 ulperr 8497737213411328.000 = 0x1.e30a5ap+52 + 0x1.ffffdcp-2
src/math/special/fma.h:830: RU fmal(-0x1.85f81f88fa3c4p+0,-0x1.17648a494fa18p-1,0x1.37d305113b48p-10) want 0x1.aa367b7490e58p-1 got -0x1.7a59ecffffffep-12 ulperr -7501265072291840.000 = -0x1.aa65c6p+52 + 0x1.000006p-1
src/math/special/fma.h:831: RU fmal(-0x1.311f2b4319efcp+0,0x1.abbb5272e3d18p-1,0x1.35841b7bdbcfep-10) want -0x1.fd337f24b39ep-1 got 0x1.4cbc317ffffffp-11 ulperr 8963678351130624.000 = 0x1.fd86bp+52 + 0x1.ffffecp-2
src/math/special/fma.h:832: RU fmal(0x1.ab94369a9a0dp-1,0x1.9d1e0e0aa3bacp+0,0x1.0a63ca87cfa78p-11) want 0x1.592173ee296b7p+0 got -0x1.fd8043ffffff8p-13 ulperr -6072696672616448.000 = -0x1.59315ep+52 + 0x1.000002p-1
src/math/special/fma.h:833: RN fmal(0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want 0x1.000000001p-1030 got 0x1p-1038 ulperr -17523466567680.000 = -0x1.fep+43 + -0x1p-28
src/math/special/fma.h:834: RN fmal(-0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want -0x1.000000003p-1030 got -0x1p-1038 ulperr 17523466567680.000 = 0x1.fep+43 + 0x1p-28
src/math/special/fma.h:835: RD fmal(0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want 0x1.000000001p-1030 got 0x1p-1038 ulperr -17523467616256.000 = -0x1.fe0002p+43 + -0x1p-28
src/math/special/fma.h:836: RD fmal(-0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want -0x1.00000000301p-1030 got -0x1.000000001p-1038 ulperr 17523466567680.000 = 0x1.fep+43 + -0x1p+0
src/math/special/fma.h:837: RU fmal(0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want 0x1.00000000101p-1030 got 0x1.000000001p-1038 ulperr -17523466567680.000 = -0x1.fep+43 + 0x1p+0
src/math/special/fma.h:838: RU fmal(-0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want -0x1.000000003p-1030 got -0x1p-1038 ulperr 17523467616256.000 = 0x1.fe0002p+43 + 0x1p-28
src/math/special/fma.h:839: RZ fmal(0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want 0x1.000000001p-1030 got 0x1p-1038 ulperr -17523466567680.000 = -0x1.fdfffep+43 + -0x1p-28
src/math/special/fma.h:840: RZ fmal(-0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want -0x1.000000003p-1030 got -0x1p-1038 ulperr 17523466567680.000 = 0x1.fdfffep+43 + 0x1p-28
src/math/special/fma.h:841: RN fmal(-0x1p-1000,0x1.000001p-74,0x1p-1022) want 0x1.ffffffffffffep-1023 got 0x1.ffep-1023 ulperr -1099511627776.000 = -0x1p+40 + 0x1p-24
src/math/special/fma.h:842: RU fmal(-0x1p-1000,0x1.000001p-74,0x1p-1022) want 0x1.ffffffffffffep-1023 got 0x1.ffe0000000002p-1023 ulperr -1099511562240.000 = -0x1.fffffep+39 + 0x1p-24
src/math/special/fma.h:843: RD fmal(-0x1p-1000,0x1.000001p-74,0x1p-1022) want 0x1.ffffffffffffcp-1023 got 0x1.ffep-1023 ulperr -1099511627776.000 = -0x1p+40 + -0x1.fffffep-1
src/math/special/fma.h:844: RZ fmal(-0x1p-1000,0x1.000001p-74,0x1p-1022) want 0x1.ffffffffffffcp-1023 got 0x1.ffep-1023 ulperr -1099511562240.000 = -0x1.fffffcp+39 + -0x1.fffffep-1
FAIL src/math/fmal.exe [status 1]
src/math/special/ilogb.h:1: bad fp exception: RN ilogb(0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogb.h:2: bad fp exception: RN ilogb(-0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogb.h:6: bad fp exception: RN ilogb(inf)=2147483647, want INVALID got 0
src/math/special/ilogb.h:7: bad fp exception: RN ilogb(-inf)=2147483647, want INVALID got 0
src/math/special/ilogb.h:8: bad fp exception: RN ilogb(nan)=-2147483648, want INVALID got 0
FAIL src/math/ilogb.exe [status 1]
src/math/special/ilogbf.h:1: bad fp exception: RN ilogbf(0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogbf.h:2: bad fp exception: RN ilogbf(-0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogbf.h:6: bad fp exception: RN ilogbf(inf)=2147483647, want INVALID got 0
src/math/special/ilogbf.h:7: bad fp exception: RN ilogbf(-inf)=2147483647, want INVALID got 0
src/math/special/ilogbf.h:8: bad fp exception: RN ilogbf(-nan)=-2147483648, want INVALID got 0
FAIL src/math/ilogbf.exe [status 1]
src/math/special/ilogb.h:1: bad fp exception: RN ilogbl(0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogb.h:2: bad fp exception: RN ilogbl(-0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogb.h:6: bad fp exception: RN ilogbl(inf)=2147483647, want INVALID got 0
src/math/special/ilogb.h:7: bad fp exception: RN ilogbl(-inf)=2147483647, want INVALID got 0
src/math/special/ilogb.h:8: bad fp exception: RN ilogbl(nan)=-2147483648, want INVALID got 0
FAIL src/math/ilogbl.exe [status 1]
X src/math/special/j0.h:7: RN j0(-0x1.33d132fd04a92p+1) want 0x1.092b2a541a68ep-19 got 0x1.092b2a541b1ap-19 ulperr 2833.704 = 0x1.624p+11 + -0x1.2ebdbp-2
X src/math/special/j0.h:8: RN j0(-0x1.33d15297be06fp+1) want 0x1.5352913be3275p-26 got 0x1.5352913ddb41bp-26 ulperr 2064806.000 = 0x1.f81a6p+20 + 0x1.c281e2p-7
X src/math/special/j0.h:9: RN j0(0x1.33d152e971b4p+1) want -0x1.19b7921f03c8ep-54 got -0x1.00209921727cbp-54 ulperr 450179413049344.000 = 0x1.996f9p+48 + 0x1.ece5dp-5
X src/math/special/j0.h:10: RN j0(0x1.6148f5b2c2e45p+2) want -0x1.fbb40985f6e34p-56 got -0x1.ebcb069d486ccp-56 ulperr 279895217274880.000 = 0x1.fd205ep+47 + -0x1.1ac8a8p-2
X src/math/special/j0.h:11: RN j0(0x1.14eb56cccdecap+3) want -0x1.6e8eeb22e5818p-54 got -0x1.6d2a820627412p-54 ulperr 24492348801024.000 = 0x1.64691cp+44 + -0x1.63ab44p-2
X src/math/special/j0.h:12: RN j0(0x1.c071b22fbbafap+1023) want -0x1.a348b1f34dd1ap-526 got -0x1.a348b1f34d33dp-526 ulperr 2525.019 = 0x1.3bap+11 + 0x1.3153c2p-6
X src/math/special/j0.h:13: RN j0(0x1.f7350b1701ef7p+0) want 0x1.f32b3a3640292p-3 got 0x1.f32b3a3640296p-3 ulperr 3.947 = 0x1p+2 + -0x1.b3bad8p-5
X src/math/sanity/jn.h:8: RN jn(5, 0x1.1f9ef934745cbp-1) want 0x1.e274364abf2d5p-17 got 0x1.e274364abf2d2p-17, ulperr -2.504 = -0x1.8p+1 + 0x1.fbe5c8p-2
X src/math/sanity/jnf.h:1: RN jnf(-2, -0x1.0223ap+3) want -0x1.863726p-4 got -0x1.86372ap-4, ulperr -2.009 = -0x1p+1 + -0x1.28885p-7
X src/math/sanity/jnf.h:8: RN jnf(5, 0x1.1f9efap-1) want 0x1.e2743cp-17 got 0x1.e27442p-17, ulperr 2.537 = 0x1.8p+1 + -0x1.d9c372p-2
X src/math/sanity/jnf.h:10: RN jnf(7, -0x1.5b86eap-1) want -0x1.b39a9cp-24 got -0x1.b39a98p-24, ulperr 1.621 = 0x1p+1 + -0x1.83c12p-2
X src/math/special/lgamma.h:145: RN lgamma(-0x1.4p+1) want -0x1.ccbf9f5ed0f16p-5,-1 got -0x1.ccbf9f5ed0f2p-5,-1 ulperr -10.465 = -0x1.4p+3 + -0x1.dc4f24p-2
X src/math/sanity/lgammaf.h:3: RN lgammaf(-0x1.0c34b4p+3) want -0x1.46d732p+3,-1 got -0x1.46d736p+3,-1 ulperr -1.621 = -0x1p+1 + 0x1.83dafep-2
X src/math/sanity/lgammaf_r.h:3: RN lgammaf_r(-0x1.0c34b4p+3) want -0x1.46d732p+3,-1 got -0x1.46d736p+3,-1 ulperr -1.621 = -0x1p+1 + 0x1.83dafep-2
src/math/special/lgamma.h:145: RN lgammal(-0x1.4p+1) want -0x1.ccbf9f5ed0f16p-5,-1 got -0x1.ccbf9f5ed0f2p-5,-1 ulperr -10.465 = -0x1.4p+3 + -0x1.dc4f24p-2
FAIL src/math/lgammal.exe [status 1]
X src/math/crlibm/pow.h:13: bad fp exception: RN pow(0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:72: bad fp exception: RN pow(0x1p-1074,0x1p+0)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:73: bad fp exception: RN pow(0x1p-1042,0x1p+0)=0x1p-1042, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:75: bad fp exception: RN pow(-0x1p-1074,0x1p+0)=-0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:76: bad fp exception: RN pow(-0x1p-1042,0x1p+0)=-0x1p-1042, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:284: bad fp exception: RN pow(0x1p-1073,0x1p+0)=0x1p-1073, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:300: bad fp exception: RN pow(0x1p-1024,0x1p+0)=0x1p-1024, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:304: bad fp exception: RN pow(0x1p-1023,0x1p+0)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:310: bad fp exception: RN pow(0x1.ffffffffffffcp-1023,0x1p+0)=0x1.ffffffffffffcp-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:313: bad fp exception: RN pow(0x1.ffffffffffffep-1023,0x1p+0)=0x1.ffffffffffffep-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:338: bad fp exception: RN pow(0x1p-537,0x1p+1)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:437: bad fp exception: RN pow(0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:498: bad fp exception: RN pow(0x1p+350,-0x1.8p+1)=0x1p-1050, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:499: bad fp exception: RN pow(0x1p+700,-0x1.8p+0)=0x1p-1050, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:516: bad fp exception: RN pow(0x1p+1023,-0x1p+0)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:544: bad fp exception: RN pow(-0x1p-1073,0x1p+0)=-0x1p-1073, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:548: bad fp exception: RN pow(-0x1p-1024,0x1p+0)=-0x1p-1024, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:551: bad fp exception: RN pow(-0x1p-1023,0x1p+0)=-0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:557: bad fp exception: RN pow(-0x1.ffffffffffffcp-1023,0x1p+0)=-0x1.ffffffffffffcp-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:560: bad fp exception: RN pow(-0x1.ffffffffffffep-1023,0x1p+0)=-0x1.ffffffffffffep-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:581: bad fp exception: RN pow(-0x1p-537,0x1p+1)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:655: bad fp exception: RN pow(-0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:695: bad fp exception: RN pow(-0x1p+350,-0x1.8p+1)=-0x1p-1050, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:708: bad fp exception: RN pow(-0x1p+1023,-0x1p+0)=-0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/powf.h:103: bad fp exception: RU powf(0x1.fffffep+127,0x1p+0)=0x1.fffffep+127, want 0 got INEXACT|OVERFLOW
X src/math/ucb/powf.h:530: bad fp exception: RN powf(0x1.fffff8p-127,0x1p+0)=0x1.fffff8p-127, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/powf.h:533: bad fp exception: RN powf(0x1.fffffcp-127,0x1p+0)=0x1.fffffcp-127, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/powf.h:719: bad fp exception: RN powf(-0x1.fffff8p-127,0x1p+0)=-0x1.fffff8p-127, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/powf.h:722: bad fp exception: RN powf(-0x1.fffffcp-127,0x1p+0)=-0x1.fffffcp-127, want 0 got INEXACT|UNDERFLOW
FAIL src/math/powf.exe [status 1]
src/math/crlibm/pow.h:13: bad fp exception: RN powl(0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:72: bad fp exception: RN powl(0x1p-1074,0x1p+0)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:73: bad fp exception: RN powl(0x1p-1042,0x1p+0)=0x1p-1042, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:75: bad fp exception: RN powl(-0x1p-1074,0x1p+0)=-0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:76: bad fp exception: RN powl(-0x1p-1042,0x1p+0)=-0x1p-1042, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:284: bad fp exception: RN powl(0x1p-1073,0x1p+0)=0x1p-1073, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:300: bad fp exception: RN powl(0x1p-1024,0x1p+0)=0x1p-1024, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:304: bad fp exception: RN powl(0x1p-1023,0x1p+0)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:310: bad fp exception: RN powl(0x1.ffffffffffffcp-1023,0x1p+0)=0x1.ffffffffffffcp-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:313: bad fp exception: RN powl(0x1.ffffffffffffep-1023,0x1p+0)=0x1.ffffffffffffep-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:338: bad fp exception: RN powl(0x1p-537,0x1p+1)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:437: bad fp exception: RN powl(0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:498: bad fp exception: RN powl(0x1p+350,-0x1.8p+1)=0x1p-1050, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:499: bad fp exception: RN powl(0x1p+700,-0x1.8p+0)=0x1p-1050, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:516: bad fp exception: RN powl(0x1p+1023,-0x1p+0)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:544: bad fp exception: RN powl(-0x1p-1073,0x1p+0)=-0x1p-1073, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:548: bad fp exception: RN powl(-0x1p-1024,0x1p+0)=-0x1p-1024, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:551: bad fp exception: RN powl(-0x1p-1023,0x1p+0)=-0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:557: bad fp exception: RN powl(-0x1.ffffffffffffcp-1023,0x1p+0)=-0x1.ffffffffffffcp-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:560: bad fp exception: RN powl(-0x1.ffffffffffffep-1023,0x1p+0)=-0x1.ffffffffffffep-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:581: bad fp exception: RN powl(-0x1p-537,0x1p+1)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:655: bad fp exception: RN powl(-0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:695: bad fp exception: RN powl(-0x1p+350,-0x1.8p+1)=-0x1p-1050, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:708: bad fp exception: RN powl(-0x1p+1023,-0x1p+0)=-0x1p-1023, want 0 got INEXACT|UNDERFLOW
FAIL src/math/powl.exe [status 1]
X src/math/crlibm/sinh.h:84: RN sinh(0x1.d3e0d2f5d98d6p-2) want 0x1.e45428082fb8cp-2 got 0x1.e45428082fb8ap-2 ulperr -1.500 = -0x1p+1 + 0x1p-1
X src/math/crlibm/sinh.h:84: RN sinhl(0x1.d3e0d2f5d98d6p-2) want 0x1.e45428082fb8cp-2 got 0x1.e45428082fb8ap-2 ulperr -1.500 = -0x1p+1 + 0x1p-1
src/math/ucb/sqrt.h:47: bad fp exception: RN sqrt(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/ucb/sqrt.h:48: bad fp exception: RZ sqrt(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/ucb/sqrt.h:49: bad fp exception: RU sqrt(0x1.fffffffffffffp+1023)=0x1p+512, want INEXACT got 0
src/math/ucb/sqrt.h:49: RU sqrt(0x1.fffffffffffffp+1023) want 0x1p+512 got 0x1.fffffffffffffp+511 ulperr -0.250 = -0x1p-1 + 0x1p-2
src/math/ucb/sqrt.h:50: bad fp exception: RD sqrt(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/ucb/sqrt.h:67: bad fp exception: RN sqrt(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:69: bad fp exception: RN sqrt(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:70: bad fp exception: RZ sqrt(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:72: bad fp exception: RZ sqrt(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:73: bad fp exception: RU sqrt(0x1.0000000000001p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:73: RU sqrt(0x1.0000000000001p+0) want 0x1.0000000000001p+0 got 0x1p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:75: bad fp exception: RU sqrt(0x1.fffffffffffffp-1)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:75: RU sqrt(0x1.fffffffffffffp-1) want 0x1p+0 got 0x1.fffffffffffffp-1 ulperr -0.250 = -0x1p-1 + 0x1p-2
src/math/ucb/sqrt.h:76: bad fp exception: RD sqrt(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:78: bad fp exception: RD sqrt(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:89: bad fp exception: RN sqrt(0x1.766bdb2b5006dp+1)=0x1.b5d6fec392e7dp+0, want INEXACT got 0
src/math/ucb/sqrt.h:90: bad fp exception: RN sqrt(0x1.b6546fb825911p+2)=0x1.4efb330ef0b43p+1, want INEXACT got 0
src/math/ucb/sqrt.h:91: bad fp exception: RN sqrt(0x1.e165309de7505p+2)=0x1.5f0d324d38bdp+1, want INEXACT got 0
src/math/ucb/sqrt.h:92: bad fp exception: RN sqrt(0x1.541dcfba96889p+0)=0x1.271370ec508dp+0, want INEXACT got 0
src/math/ucb/sqrt.h:93: bad fp exception: RN sqrt(0x1.754c3e27084ddp+1)=0x1.b52eb45df30b2p+0, want INEXACT got 0
src/math/ucb/sqrt.h:94: bad fp exception: RN sqrt(0x1.ebe1e1b093c41p+1)=0x1.f5d722e54e976p+0, want INEXACT got 0
src/math/ucb/sqrt.h:95: bad fp exception: RN sqrt(0x1.940d8d18455f5p+2)=0x1.419df976f692dp+1, want INEXACT got 0
src/math/ucb/sqrt.h:96: bad fp exception: RN sqrt(0x1.dae714a51b239p+2)=0x1.5cad1a5584b9ap+1, want INEXACT got 0
src/math/ucb/sqrt.h:97: bad fp exception: RN sqrt(0x1.a9f2d1079de4dp+1)=0x1.d2ff13bff7b67p+0, want INEXACT got 0
src/math/ucb/sqrt.h:98: bad fp exception: RN sqrt(0x1.57dd33103b871p-3)=0x1.a397d7b1e31f2p-2, want INEXACT got 0
src/math/ucb/sqrt.h:135: bad fp exception: RD sqrt(0x1.ffffffffffffep-1023)=0x1.ffffffffffffep-512, want INEXACT got 0
src/math/ucb/sqrt.h:135: RD sqrt(0x1.ffffffffffffep-1023) want 0x1.ffffffffffffep-512 got 0x1.fffffffffffffp-512 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:136: bad fp exception: RD sqrt(0x1.0000000000002p-1022)=0x1p-511, want INEXACT got 0
src/math/ucb/sqrt.h:136: RD sqrt(0x1.0000000000002p-1022) want 0x1p-511 got 0x1.0000000000001p-511 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:137: bad fp exception: RD sqrt(0x1.ffffffffffff7p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:138: bad fp exception: RD sqrt(0x1.ffffffffffff8p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:138: RD sqrt(0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp-1 got 0x1.ffffffffffffcp-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:139: bad fp exception: RD sqrt(0x1.ffffffffffff9p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:140: bad fp exception: RD sqrt(0x1.ffffffffffffap-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:140: RD sqrt(0x1.ffffffffffffap-1) want 0x1.ffffffffffffcp-1 got 0x1.ffffffffffffdp-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:141: bad fp exception: RD sqrt(0x1.ffffffffffffbp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:142: bad fp exception: RD sqrt(0x1.ffffffffffffcp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:142: RD sqrt(0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp-1 got 0x1.ffffffffffffep-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:143: bad fp exception: RD sqrt(0x1.ffffffffffffdp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:144: bad fp exception: RD sqrt(0x1.ffffffffffffep-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:144: RD sqrt(0x1.ffffffffffffep-1) want 0x1.ffffffffffffep-1 got 0x1.fffffffffffffp-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:145: bad fp exception: RD sqrt(0x1.0000000000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:145: RD sqrt(0x1.0000000000002p+0) want 0x1p+0 got 0x1.0000000000001p+0 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:146: bad fp exception: RD sqrt(0x1.0000000000003p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:147: bad fp exception: RD sqrt(0x1.0000000000004p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:147: RD sqrt(0x1.0000000000004p+0) want 0x1.0000000000001p+0 got 0x1.0000000000002p+0 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:148: bad fp exception: RD sqrt(0x1.0000000000005p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:149: bad fp exception: RD sqrt(0x1.0000000000006p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:149: RD sqrt(0x1.0000000000006p+0) want 0x1.0000000000002p+0 got 0x1.0000000000003p+0 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:150: bad fp exception: RD sqrt(0x1.0000000000007p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:151: bad fp exception: RD sqrt(0x1.ffffffffffffep+1021)=0x1.ffffffffffffep+510, want INEXACT got 0
src/math/ucb/sqrt.h:151: RD sqrt(0x1.ffffffffffffep+1021) want 0x1.ffffffffffffep+510 got 0x1.fffffffffffffp+510 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:152: bad fp exception: RD sqrt(0x1.0000000000002p+1022)=0x1p+511, want INEXACT got 0
src/math/ucb/sqrt.h:152: RD sqrt(0x1.0000000000002p+1022) want 0x1p+511 got 0x1.0000000000001p+511 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:206: bad fp exception: RN sqrt(0x1.ffffffffffffep-1023)=0x1.fffffffffffffp-512, want INEXACT got 0
src/math/ucb/sqrt.h:207: bad fp exception: RN sqrt(0x1.0000000000002p-1022)=0x1.0000000000001p-511, want INEXACT got 0
src/math/ucb/sqrt.h:208: bad fp exception: RN sqrt(0x1.ffffffffffff7p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:209: bad fp exception: RN sqrt(0x1.ffffffffffff8p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:210: bad fp exception: RN sqrt(0x1.ffffffffffff9p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:211: bad fp exception: RN sqrt(0x1.ffffffffffffap-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:212: bad fp exception: RN sqrt(0x1.ffffffffffffbp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:213: bad fp exception: RN sqrt(0x1.ffffffffffffcp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:214: bad fp exception: RN sqrt(0x1.ffffffffffffdp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:215: bad fp exception: RN sqrt(0x1.ffffffffffffep-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:216: bad fp exception: RN sqrt(0x1.0000000000002p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:217: bad fp exception: RN sqrt(0x1.0000000000003p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:218: bad fp exception: RN sqrt(0x1.0000000000004p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:219: bad fp exception: RN sqrt(0x1.0000000000005p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:220: bad fp exception: RN sqrt(0x1.0000000000006p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:221: bad fp exception: RN sqrt(0x1.0000000000007p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:222: bad fp exception: RN sqrt(0x1.ffffffffffffep+1021)=0x1.fffffffffffffp+510, want INEXACT got 0
src/math/ucb/sqrt.h:223: bad fp exception: RN sqrt(0x1.0000000000002p+1022)=0x1.0000000000001p+511, want INEXACT got 0
src/math/ucb/sqrt.h:273: bad fp exception: RU sqrt(0x1.ffffffffffffep-1023)=0x1.fffffffffffffp-512, want INEXACT got 0
src/math/ucb/sqrt.h:274: bad fp exception: RU sqrt(0x1.0000000000002p-1022)=0x1.0000000000001p-511, want INEXACT got 0
src/math/ucb/sqrt.h:275: bad fp exception: RU sqrt(0x1.ffffffffffff7p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:275: RU sqrt(0x1.ffffffffffff7p-1) want 0x1.ffffffffffffcp-1 got 0x1.ffffffffffffbp-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:276: bad fp exception: RU sqrt(0x1.ffffffffffff8p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:277: bad fp exception: RU sqrt(0x1.ffffffffffff9p-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:277: RU sqrt(0x1.ffffffffffff9p-1) want 0x1.ffffffffffffdp-1 got 0x1.ffffffffffffcp-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:278: bad fp exception: RU sqrt(0x1.ffffffffffffap-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:279: bad fp exception: RU sqrt(0x1.ffffffffffffbp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:279: RU sqrt(0x1.ffffffffffffbp-1) want 0x1.ffffffffffffep-1 got 0x1.ffffffffffffdp-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:280: bad fp exception: RU sqrt(0x1.ffffffffffffcp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:281: bad fp exception: RU sqrt(0x1.ffffffffffffdp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:281: RU sqrt(0x1.ffffffffffffdp-1) want 0x1.fffffffffffffp-1 got 0x1.ffffffffffffep-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:282: bad fp exception: RU sqrt(0x1.ffffffffffffep-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:283: bad fp exception: RU sqrt(0x1.0000000000002p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:284: bad fp exception: RU sqrt(0x1.0000000000003p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:284: RU sqrt(0x1.0000000000003p+0) want 0x1.0000000000002p+0 got 0x1.0000000000001p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:285: bad fp exception: RU sqrt(0x1.0000000000004p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:286: bad fp exception: RU sqrt(0x1.0000000000005p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:286: RU sqrt(0x1.0000000000005p+0) want 0x1.0000000000003p+0 got 0x1.0000000000002p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:287: bad fp exception: RU sqrt(0x1.0000000000006p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:288: bad fp exception: RU sqrt(0x1.0000000000007p+0)=0x1.0000000000004p+0, want INEXACT got 0
src/math/ucb/sqrt.h:288: RU sqrt(0x1.0000000000007p+0) want 0x1.0000000000004p+0 got 0x1.0000000000003p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:289: bad fp exception: RU sqrt(0x1.ffffffffffffep+1021)=0x1.fffffffffffffp+510, want INEXACT got 0
src/math/ucb/sqrt.h:290: bad fp exception: RU sqrt(0x1.0000000000002p+1022)=0x1.0000000000001p+511, want INEXACT got 0
src/math/ucb/sqrt.h:344: bad fp exception: RZ sqrt(0x1.ffffffffffffep-1023)=0x1.ffffffffffffep-512, want INEXACT got 0
src/math/ucb/sqrt.h:344: RZ sqrt(0x1.ffffffffffffep-1023) want 0x1.ffffffffffffep-512 got 0x1.fffffffffffffp-512 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:345: bad fp exception: RZ sqrt(0x1.0000000000002p-1022)=0x1p-511, want INEXACT got 0
src/math/ucb/sqrt.h:345: RZ sqrt(0x1.0000000000002p-1022) want 0x1p-511 got 0x1.0000000000001p-511 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:346: bad fp exception: RZ sqrt(0x1.ffffffffffff7p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:347: bad fp exception: RZ sqrt(0x1.ffffffffffff8p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:347: RZ sqrt(0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp-1 got 0x1.ffffffffffffcp-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:348: bad fp exception: RZ sqrt(0x1.ffffffffffff9p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:349: bad fp exception: RZ sqrt(0x1.ffffffffffffap-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:349: RZ sqrt(0x1.ffffffffffffap-1) want 0x1.ffffffffffffcp-1 got 0x1.ffffffffffffdp-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:350: bad fp exception: RZ sqrt(0x1.ffffffffffffbp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:351: bad fp exception: RZ sqrt(0x1.ffffffffffffcp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:351: RZ sqrt(0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp-1 got 0x1.ffffffffffffep-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:352: bad fp exception: RZ sqrt(0x1.ffffffffffffdp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:353: bad fp exception: RZ sqrt(0x1.ffffffffffffep-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:353: RZ sqrt(0x1.ffffffffffffep-1) want 0x1.ffffffffffffep-1 got 0x1.fffffffffffffp-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:354: bad fp exception: RZ sqrt(0x1.0000000000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:354: RZ sqrt(0x1.0000000000002p+0) want 0x1p+0 got 0x1.0000000000001p+0 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:355: bad fp exception: RZ sqrt(0x1.0000000000003p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:356: bad fp exception: RZ sqrt(0x1.0000000000004p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:356: RZ sqrt(0x1.0000000000004p+0) want 0x1.0000000000001p+0 got 0x1.0000000000002p+0 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:357: bad fp exception: RZ sqrt(0x1.0000000000005p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:358: bad fp exception: RZ sqrt(0x1.0000000000006p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:358: RZ sqrt(0x1.0000000000006p+0) want 0x1.0000000000002p+0 got 0x1.0000000000003p+0 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:359: bad fp exception: RZ sqrt(0x1.0000000000007p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:360: bad fp exception: RZ sqrt(0x1.ffffffffffffep+1021)=0x1.ffffffffffffep+510, want INEXACT got 0
src/math/ucb/sqrt.h:360: RZ sqrt(0x1.ffffffffffffep+1021) want 0x1.ffffffffffffep+510 got 0x1.fffffffffffffp+510 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:361: bad fp exception: RZ sqrt(0x1.0000000000002p+1022)=0x1p+511, want INEXACT got 0
src/math/ucb/sqrt.h:361: RZ sqrt(0x1.0000000000002p+1022) want 0x1p+511 got 0x1.0000000000001p+511 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/sanity/sqrt.h:2: bad fp exception: RN sqrt(0x1.161868e18bc67p+2)=0x1.0ad1adc856f29p+1, want INEXACT got 0
src/math/sanity/sqrt.h:5: bad fp exception: RN sqrt(0x1.288bbb0d6a1e6p+3)=0x1.85a7d346e8c13p+1, want INEXACT got 0
src/math/sanity/sqrt.h:6: bad fp exception: RN sqrt(0x1.52efd0cd80497p-1)=0x1.a0937a0b92ccbp-1, want INEXACT got 0
src/math/sanity/sqrt.h:8: bad fp exception: RN sqrt(0x1.1f9ef934745cbp-1)=0x1.7fbf4b5a076bcp-1, want INEXACT got 0
src/math/sanity/sqrt.h:9: bad fp exception: RN sqrt(0x1.8c5db097f7442p-1)=0x1.c27ce94ff39c5p-1, want INEXACT got 0
src/math/special/sqrt.h:9: bad fp exception: RN sqrt(0x1p-1073)=0x1.6a09e667f3bcdp-537, want INEXACT got 0
src/math/special/sqrt.h:10: bad fp exception: RN sqrt(0x1.8p-1073)=0x1.bb67ae8584caap-537, want INEXACT got 0
src/math/special/sqrt.h:13: bad fp exception: RN sqrt(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/special/sqrt.h:14: bad fp exception: RN sqrt(0x1.fffffffffffffp+0)=0x1.6a09e667f3bccp+0, want INEXACT got 0
src/math/special/sqrt.h:15: bad fp exception: RN sqrt(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/special/sqrt.h:16: bad fp exception: RN sqrt(0x1.0000000000001p+1)=0x1.6a09e667f3bcdp+0, want INEXACT got 0
src/math/special/sqrt.h:17: bad fp exception: RN sqrt(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/special/sqrt.h:18: bad fp exception: RN sqrt(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/special/sqrt.h:20: bad fp exception: RN sqrt(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/special/sqrt.h:21: bad fp exception: RN sqrt(0x1.ffffffffffffbp+1023)=0x1.ffffffffffffdp+511, want INEXACT got 0
src/math/special/sqrt.h:22: bad fp exception: RN sqrt(0x1.ffffffffffff7p+1023)=0x1.ffffffffffffbp+511, want INEXACT got 0
src/math/special/sqrt.h:23: bad fp exception: RN sqrt(0x1.ffffffffffff3p+1023)=0x1.ffffffffffff9p+511, want INEXACT got 0
src/math/special/sqrt.h:24: bad fp exception: RN sqrt(0x1.fffffffffffefp+1023)=0x1.ffffffffffff7p+511, want INEXACT got 0
src/math/special/sqrt.h:25: bad fp exception: RN sqrt(0x1.fffffffffffebp+1023)=0x1.ffffffffffff5p+511, want INEXACT got 0
src/math/special/sqrt.h:26: bad fp exception: RN sqrt(0x1.fffffffffffe7p+1023)=0x1.ffffffffffff3p+511, want INEXACT got 0
src/math/special/sqrt.h:27: bad fp exception: RN sqrt(0x1.fffffffffffe3p+1023)=0x1.ffffffffffff1p+511, want INEXACT got 0
src/math/special/sqrt.h:28: bad fp exception: RN sqrt(0x1.fffffffffffdfp+1023)=0x1.fffffffffffefp+511, want INEXACT got 0
src/math/special/sqrt.h:29: bad fp exception: RN sqrt(0x1.fffffffffffdbp+1023)=0x1.fffffffffffedp+511, want INEXACT got 0
src/math/special/sqrt.h:30: bad fp exception: RN sqrt(0x1.fffffffffffd7p+1023)=0x1.fffffffffffebp+511, want INEXACT got 0
src/math/special/sqrt.h:31: bad fp exception: RN sqrt(0x1.0000000000003p-1022)=0x1.0000000000001p-511, want INEXACT got 0
src/math/special/sqrt.h:32: bad fp exception: RN sqrt(0x1.0000000000007p-1022)=0x1.0000000000003p-511, want INEXACT got 0
src/math/special/sqrt.h:33: bad fp exception: RN sqrt(0x1.000000000000bp-1022)=0x1.0000000000005p-511, want INEXACT got 0
src/math/special/sqrt.h:34: bad fp exception: RN sqrt(0x1.000000000000fp-1022)=0x1.0000000000007p-511, want INEXACT got 0
src/math/special/sqrt.h:35: bad fp exception: RN sqrt(0x1.0000000000013p-1022)=0x1.0000000000009p-511, want INEXACT got 0
src/math/special/sqrt.h:36: bad fp exception: RN sqrt(0x1.0000000000017p-1022)=0x1.000000000000bp-511, want INEXACT got 0
src/math/special/sqrt.h:37: bad fp exception: RN sqrt(0x1.000000000001bp-1022)=0x1.000000000000dp-511, want INEXACT got 0
src/math/special/sqrt.h:38: bad fp exception: RN sqrt(0x1.000000000001fp-1022)=0x1.000000000000fp-511, want INEXACT got 0
src/math/special/sqrt.h:39: bad fp exception: RN sqrt(0x1.0000000000023p-1022)=0x1.0000000000011p-511, want INEXACT got 0
src/math/special/sqrt.h:40: bad fp exception: RN sqrt(0x1.0000000000027p-1022)=0x1.0000000000013p-511, want INEXACT got 0
src/math/special/sqrt.h:41: bad fp exception: RN sqrt(0x1.000000000002bp-1022)=0x1.0000000000015p-511, want INEXACT got 0
src/math/special/sqrt.h:42: bad fp exception: RN sqrt(0x1.000000000002fp-1022)=0x1.0000000000017p-511, want INEXACT got 0
src/math/special/sqrt.h:43: bad fp exception: RN sqrt(0x1.0000000000033p-1022)=0x1.0000000000019p-511, want INEXACT got 0
src/math/special/sqrt.h:44: bad fp exception: RN sqrt(0x1.0000000000037p-1022)=0x1.000000000001bp-511, want INEXACT got 0
src/math/special/sqrt.h:45: bad fp exception: RN sqrt(0x1.7167bc36eaa3bp+6)=0x1.3384c7db650cdp+3, want INEXACT got 0
src/math/special/sqrt.h:46: bad fp exception: RN sqrt(0x1.7570994273ad7p+6)=0x1.353186e89b8ffp+3, want INEXACT got 0
src/math/special/sqrt.h:47: bad fp exception: RN sqrt(0x1.7dae969442fe6p+6)=0x1.389640fb18b75p+3, want INEXACT got 0
src/math/special/sqrt.h:48: bad fp exception: RN sqrt(0x1.7f8444fcf67e5p+6)=0x1.395659e94669fp+3, want INEXACT got 0
src/math/special/sqrt.h:49: bad fp exception: RN sqrt(0x1.8364650e63a54p+6)=0x1.3aea9efe1a3d7p+3, want INEXACT got 0
src/math/special/sqrt.h:50: bad fp exception: RN sqrt(0x1.85bedd274edd8p+6)=0x1.3bdf20c867057p+3, want INEXACT got 0
src/math/special/sqrt.h:51: bad fp exception: RN sqrt(0x1.8609cf496ab77p+6)=0x1.3bfd7e14b5eabp+3, want INEXACT got 0
src/math/special/sqrt.h:52: bad fp exception: RN sqrt(0x1.873849c70a375p+6)=0x1.3c77ed341d27fp+3, want INEXACT got 0
src/math/special/sqrt.h:53: bad fp exception: RN sqrt(0x1.8919c962cbaaep+6)=0x1.3d3a7113ee82fp+3, want INEXACT got 0
src/math/special/sqrt.h:54: bad fp exception: RN sqrt(0x1.8de4493e22dc6p+6)=0x1.3f27d448220c3p+3, want INEXACT got 0
src/math/special/sqrt.h:55: bad fp exception: RN sqrt(0x1.924829a17a288p+6)=0x1.40e9552eec28fp+3, want INEXACT got 0
src/math/special/sqrt.h:56: bad fp exception: RN sqrt(0x1.92702cd992f12p+6)=0x1.40f94a6fdfddfp+3, want INEXACT got 0
src/math/special/sqrt.h:57: bad fp exception: RN sqrt(0x1.92b763a8311fdp+6)=0x1.4115af614695fp+3, want INEXACT got 0
src/math/special/sqrt.h:58: bad fp exception: RN sqrt(0x1.947da013c7293p+6)=0x1.41ca91102940fp+3, want INEXACT got 0
src/math/special/sqrt.h:59: bad fp exception: RN sqrt(0x1.9536091c494d2p+6)=0x1.4213e334c77adp+3, want INEXACT got 0
src/math/special/sqrt.h:60: bad fp exception: RN sqrt(0x1.61b04c6p-1019)=0x1.a98b88f18b46dp-510, want INEXACT got 0
src/math/special/sqrt.h:61: bad fp exception: RN sqrt(0x1.93789f1p-1018)=0x1.4162ae43d5821p-509, want INEXACT got 0
src/math/special/sqrt.h:62: bad fp exception: RN sqrt(0x1.a1989b4p-1018)=0x1.46f6736eb44bbp-509, want INEXACT got 0
src/math/special/sqrt.h:63: bad fp exception: RN sqrt(0x1.f93bc9p-1018)=0x1.67a36ec403bafp-509, want INEXACT got 0
src/math/special/sqrt.h:64: bad fp exception: RN sqrt(0x1.2f675e3p-1017)=0x1.8a22ab6dcfee1p-509, want INEXACT got 0
src/math/special/sqrt.h:65: bad fp exception: RN sqrt(0x1.a158508p-1017)=0x1.ce418a96cf589p-509, want INEXACT got 0
src/math/special/sqrt.h:66: bad fp exception: RN sqrt(0x1.cd31f078p-1017)=0x1.e5ef1c65dccebp-509, want INEXACT got 0
src/math/special/sqrt.h:67: bad fp exception: RN sqrt(0x1.33b43b08p-1016)=0x1.18a9f607e1701p-508, want INEXACT got 0
src/math/special/sqrt.h:68: bad fp exception: RN sqrt(0x1.6e66a858p-1016)=0x1.324402a00b45fp-508, want INEXACT got 0
src/math/special/sqrt.h:69: bad fp exception: RN sqrt(0x1.8661cbf8p-1016)=0x1.3c212046bfdffp-508, want INEXACT got 0
src/math/special/sqrt.h:70: bad fp exception: RN sqrt(0x1.bbb221b4p-1016)=0x1.510681b939931p-508, want INEXACT got 0
src/math/special/sqrt.h:71: bad fp exception: RN sqrt(0x1.c4942f3cp-1016)=0x1.5461e59227ab5p-508, want INEXACT got 0
src/math/special/sqrt.h:72: bad fp exception: RN sqrt(0x1.dbb258c8p-1016)=0x1.5cf7b0f78d3afp-508, want INEXACT got 0
src/math/special/sqrt.h:73: bad fp exception: RN sqrt(0x1.57103ea4p-1015)=0x1.a31ab946d340bp-508, want INEXACT got 0
src/math/special/sqrt.h:74: bad fp exception: RN sqrt(0x1.9b294f88p-1015)=0x1.cad197e28e85bp-508, want INEXACT got 0
FAIL src/math/sqrt.exe [status 1]
src/math/ucb/sqrtf.h:47: bad fp exception: RN sqrtf(0x1.fffffep+127)=0x1.fffffep+63, want INEXACT got 0
src/math/ucb/sqrtf.h:48: bad fp exception: RZ sqrtf(0x1.fffffep+127)=0x1.fffffep+63, want INEXACT got 0
src/math/ucb/sqrtf.h:49: bad fp exception: RU sqrtf(0x1.fffffep+127)=0x1p+64, want INEXACT got 0
src/math/ucb/sqrtf.h:49: RU sqrtf(0x1.fffffep+127) want 0x1p+64 got 0x1.fffffep+63 ulperr -0.250 = -0x1p-1 + 0x1p-2
src/math/ucb/sqrtf.h:50: bad fp exception: RD sqrtf(0x1.fffffep+127)=0x1.fffffep+63, want INEXACT got 0
src/math/ucb/sqrtf.h:67: bad fp exception: RN sqrtf(0x1.000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:69: bad fp exception: RN sqrtf(0x1.fffffep-1)=0x1.fffffep-1, want INEXACT got 0
src/math/ucb/sqrtf.h:70: bad fp exception: RZ sqrtf(0x1.000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:72: bad fp exception: RZ sqrtf(0x1.fffffep-1)=0x1.fffffep-1, want INEXACT got 0
src/math/ucb/sqrtf.h:73: bad fp exception: RU sqrtf(0x1.000002p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:73: RU sqrtf(0x1.000002p+0) want 0x1.000002p+0 got 0x1p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrtf.h:75: bad fp exception: RU sqrtf(0x1.fffffep-1)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:75: RU sqrtf(0x1.fffffep-1) want 0x1p+0 got 0x1.fffffep-1 ulperr -0.250 = -0x1p-1 + 0x1p-2
src/math/ucb/sqrtf.h:76: bad fp exception: RD sqrtf(0x1.000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:78: bad fp exception: RD sqrtf(0x1.fffffep-1)=0x1.fffffep-1, want INEXACT got 0
src/math/ucb/sqrtf.h:85: bad fp exception: RN sqrtf(0x1.766bdcp+1)=0x1.b5d7p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:86: bad fp exception: RN sqrtf(0x1.b6547p+2)=0x1.4efb34p+1, want INEXACT got 0
src/math/ucb/sqrtf.h:87: bad fp exception: RN sqrtf(0x1.e1653p+2)=0x1.5f0d32p+1, want INEXACT got 0
src/math/ucb/sqrtf.h:88: bad fp exception: RN sqrtf(0x1.541ddp+0)=0x1.271372p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:89: bad fp exception: RN sqrtf(0x1.754c3ep+1)=0x1.b52eb4p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:90: bad fp exception: RN sqrtf(0x1.ebe1e2p+1)=0x1.f5d724p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:91: bad fp exception: RN sqrtf(0x1.940d8ep+2)=0x1.419dfap+1, want INEXACT got 0
src/math/ucb/sqrtf.h:92: bad fp exception: RN sqrtf(0x1.dae714p+2)=0x1.5cad1ap+1, want INEXACT got 0
src/math/ucb/sqrtf.h:93: bad fp exception: RN sqrtf(0x1.a9f2d2p+1)=0x1.d2ff14p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:94: bad fp exception: RN sqrtf(0x1.57dd34p-3)=0x1.a397d8p-2, want INEXACT got 0
src/math/ucb/sqrtf.h:96: bad fp exception: RN sqrtf(0x1p-149)=0x1.6a09e6p-75, want INEXACT got 0
src/math/ucb/sqrtf.h:97: bad fp exception: RZ sqrtf(0x1p-149)=0x1.6a09e6p-75, want INEXACT got 0
src/math/ucb/sqrtf.h:98: bad fp exception: RU sqrtf(0x1p-149)=0x1.6a09e8p-75, want INEXACT got 0
src/math/ucb/sqrtf.h:98: RU sqrtf(0x1p-149) want 0x1.6a09e8p-75 got 0x1.6a09e6p-75 ulperr -0.203 = -0x1p+0 + 0x1.980c44p-1
src/math/ucb/sqrtf.h:99: bad fp exception: RD sqrtf(0x1p-149)=0x1.6a09e6p-75, want INEXACT got 0
src/math/ucb/sqrtf.h:142: bad fp exception: RD sqrtf(0x1.fffffcp-127)=0x1.fffffcp-64, want INEXACT got 0
src/math/ucb/sqrtf.h:142: RD sqrtf(0x1.fffffcp-127) want 0x1.fffffcp-64 got 0x1.fffffep-64 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:143: bad fp exception: RD sqrtf(0x1.000004p-126)=0x1p-63, want INEXACT got 0
src/math/ucb/sqrtf.h:143: RD sqrtf(0x1.000004p-126) want 0x1p-63 got 0x1.000002p-63 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:144: bad fp exception: RD sqrtf(0x1.ffffeep-1)=0x1.fffff6p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:145: bad fp exception: RD sqrtf(0x1.fffffp-1)=0x1.fffff6p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:145: RD sqrtf(0x1.fffffp-1) want 0x1.fffff6p-1 got 0x1.fffff8p-1 ulperr 0.000 = 0x1p+0 + -0x1.fffffp-1
src/math/ucb/sqrtf.h:146: bad fp exception: RD sqrtf(0x1.fffff2p-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:147: bad fp exception: RD sqrtf(0x1.fffff4p-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:147: RD sqrtf(0x1.fffff4p-1) want 0x1.fffff8p-1 got 0x1.fffffap-1 ulperr 0.000 = 0x1p+0 + -0x1.fffff6p-1
src/math/ucb/sqrtf.h:148: bad fp exception: RD sqrtf(0x1.fffff6p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:149: bad fp exception: RD sqrtf(0x1.fffff8p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:149: RD sqrtf(0x1.fffff8p-1) want 0x1.fffffap-1 got 0x1.fffffcp-1 ulperr 0.000 = 0x1p+0 + -0x1.fffffcp-1
src/math/ucb/sqrtf.h:150: bad fp exception: RD sqrtf(0x1.fffffap-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:151: bad fp exception: RD sqrtf(0x1.fffffcp-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:151: RD sqrtf(0x1.fffffcp-1) want 0x1.fffffcp-1 got 0x1.fffffep-1 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:152: bad fp exception: RD sqrtf(0x1.000004p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:152: RD sqrtf(0x1.000004p+0) want 0x1p+0 got 0x1.000002p+0 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:153: bad fp exception: RD sqrtf(0x1.000006p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:154: bad fp exception: RD sqrtf(0x1.000008p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:154: RD sqrtf(0x1.000008p+0) want 0x1.000002p+0 got 0x1.000004p+0 ulperr 0.000 = 0x1p+0 + -0x1.fffff8p-1
src/math/ucb/sqrtf.h:155: bad fp exception: RD sqrtf(0x1.00000ap+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:156: bad fp exception: RD sqrtf(0x1.00000cp+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:156: RD sqrtf(0x1.00000cp+0) want 0x1.000004p+0 got 0x1.000006p+0 ulperr 0.000 = 0x1p+0 + -0x1.ffffeep-1
src/math/ucb/sqrtf.h:157: bad fp exception: RD sqrtf(0x1.00000ep+0)=0x1.000006p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:158: bad fp exception: RD sqrtf(0x1.fffffcp+125)=0x1.fffffcp+62, want INEXACT got 0
src/math/ucb/sqrtf.h:158: RD sqrtf(0x1.fffffcp+125) want 0x1.fffffcp+62 got 0x1.fffffep+62 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:159: bad fp exception: RD sqrtf(0x1.000004p+126)=0x1p+63, want INEXACT got 0
src/math/ucb/sqrtf.h:159: RD sqrtf(0x1.000004p+126) want 0x1p+63 got 0x1.000002p+63 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:203: bad fp exception: RN sqrtf(0x1.fffffcp-127)=0x1.fffffep-64, want INEXACT got 0
src/math/ucb/sqrtf.h:204: bad fp exception: RN sqrtf(0x1.000004p-126)=0x1.000002p-63, want INEXACT got 0
src/math/ucb/sqrtf.h:205: bad fp exception: RN sqrtf(0x1.ffffeep-1)=0x1.fffff6p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:206: bad fp exception: RN sqrtf(0x1.fffffp-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:207: bad fp exception: RN sqrtf(0x1.fffff2p-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:208: bad fp exception: RN sqrtf(0x1.fffff4p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:209: bad fp exception: RN sqrtf(0x1.fffff6p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:210: bad fp exception: RN sqrtf(0x1.fffff8p-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:211: bad fp exception: RN sqrtf(0x1.fffffap-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:212: bad fp exception: RN sqrtf(0x1.fffffcp-1)=0x1.fffffep-1, want INEXACT got 0
src/math/ucb/sqrtf.h:213: bad fp exception: RN sqrtf(0x1.000004p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:214: bad fp exception: RN sqrtf(0x1.000006p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:215: bad fp exception: RN sqrtf(0x1.000008p+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:216: bad fp exception: RN sqrtf(0x1.00000ap+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:217: bad fp exception: RN sqrtf(0x1.00000cp+0)=0x1.000006p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:218: bad fp exception: RN sqrtf(0x1.00000ep+0)=0x1.000006p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:219: bad fp exception: RN sqrtf(0x1.fffffcp+125)=0x1.fffffep+62, want INEXACT got 0
src/math/ucb/sqrtf.h:220: bad fp exception: RN sqrtf(0x1.000004p+126)=0x1.000002p+63, want INEXACT got 0
src/math/ucb/sqrtf.h:264: bad fp exception: RU sqrtf(0x1.fffffcp-127)=0x1.fffffep-64, want INEXACT got 0
src/math/ucb/sqrtf.h:265: bad fp exception: RU sqrtf(0x1.000004p-126)=0x1.000002p-63, want INEXACT got 0
src/math/ucb/sqrtf.h:266: bad fp exception: RU sqrtf(0x1.ffffeep-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:266: RU sqrtf(0x1.ffffeep-1) want 0x1.fffff8p-1 got 0x1.fffff6p-1 ulperr -0.499 = -0x1p+0 + 0x1.000014p-1
src/math/ucb/sqrtf.h:267: bad fp exception: RU sqrtf(0x1.fffffp-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:268: bad fp exception: RU sqrtf(0x1.fffff2p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:268: RU sqrtf(0x1.fffff2p-1) want 0x1.fffffap-1 got 0x1.fffff8p-1 ulperr -0.499 = -0x1p+0 + 0x1.00000cp-1
src/math/ucb/sqrtf.h:269: bad fp exception: RU sqrtf(0x1.fffff4p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:270: bad fp exception: RU sqrtf(0x1.fffff6p-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:270: RU sqrtf(0x1.fffff6p-1) want 0x1.fffffcp-1 got 0x1.fffffap-1 ulperr -0.499 = -0x1p+0 + 0x1.000006p-1
src/math/ucb/sqrtf.h:271: bad fp exception: RU sqrtf(0x1.fffff8p-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:272: bad fp exception: RU sqrtf(0x1.fffffap-1)=0x1.fffffep-1, want INEXACT got 0
src/math/ucb/sqrtf.h:272: RU sqrtf(0x1.fffffap-1) want 0x1.fffffep-1 got 0x1.fffffcp-1 ulperr -0.499 = -0x1p+0 + 0x1.000002p-1
src/math/ucb/sqrtf.h:273: bad fp exception: RU sqrtf(0x1.fffffcp-1)=0x1.fffffep-1, want INEXACT got 0
src/math/ucb/sqrtf.h:274: bad fp exception: RU sqrtf(0x1.000004p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:275: bad fp exception: RU sqrtf(0x1.000006p+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:275: RU sqrtf(0x1.000006p+0) want 0x1.000004p+0 got 0x1.000002p+0 ulperr -0.499 = -0x1p+0 + 0x1.000004p-1
src/math/ucb/sqrtf.h:276: bad fp exception: RU sqrtf(0x1.000008p+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:277: bad fp exception: RU sqrtf(0x1.00000ap+0)=0x1.000006p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:277: RU sqrtf(0x1.00000ap+0) want 0x1.000006p+0 got 0x1.000004p+0 ulperr -0.499 = -0x1p+0 + 0x1.00000cp-1
src/math/ucb/sqrtf.h:278: bad fp exception: RU sqrtf(0x1.00000cp+0)=0x1.000006p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:279: bad fp exception: RU sqrtf(0x1.00000ep+0)=0x1.000008p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:279: RU sqrtf(0x1.00000ep+0) want 0x1.000008p+0 got 0x1.000006p+0 ulperr -0.499 = -0x1p+0 + 0x1.000018p-1
src/math/ucb/sqrtf.h:280: bad fp exception: RU sqrtf(0x1.fffffcp+125)=0x1.fffffep+62, want INEXACT got 0
src/math/ucb/sqrtf.h:281: bad fp exception: RU sqrtf(0x1.000004p+126)=0x1.000002p+63, want INEXACT got 0
src/math/ucb/sqrtf.h:325: bad fp exception: RZ sqrtf(0x1.fffffcp-127)=0x1.fffffcp-64, want INEXACT got 0
src/math/ucb/sqrtf.h:325: RZ sqrtf(0x1.fffffcp-127) want 0x1.fffffcp-64 got 0x1.fffffep-64 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:326: bad fp exception: RZ sqrtf(0x1.000004p-126)=0x1p-63, want INEXACT got 0
src/math/ucb/sqrtf.h:326: RZ sqrtf(0x1.000004p-126) want 0x1p-63 got 0x1.000002p-63 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:327: bad fp exception: RZ sqrtf(0x1.ffffeep-1)=0x1.fffff6p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:328: bad fp exception: RZ sqrtf(0x1.fffffp-1)=0x1.fffff6p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:328: RZ sqrtf(0x1.fffffp-1) want 0x1.fffff6p-1 got 0x1.fffff8p-1 ulperr 0.000 = 0x1p+0 + -0x1.fffffp-1
src/math/ucb/sqrtf.h:329: bad fp exception: RZ sqrtf(0x1.fffff2p-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:330: bad fp exception: RZ sqrtf(0x1.fffff4p-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:330: RZ sqrtf(0x1.fffff4p-1) want 0x1.fffff8p-1 got 0x1.fffffap-1 ulperr 0.000 = 0x1p+0 + -0x1.fffff6p-1
src/math/ucb/sqrtf.h:331: bad fp exception: RZ sqrtf(0x1.fffff6p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:332: bad fp exception: RZ sqrtf(0x1.fffff8p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:332: RZ sqrtf(0x1.fffff8p-1) want 0x1.fffffap-1 got 0x1.fffffcp-1 ulperr 0.000 = 0x1p+0 + -0x1.fffffcp-1
src/math/ucb/sqrtf.h:333: bad fp exception: RZ sqrtf(0x1.fffffap-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:334: bad fp exception: RZ sqrtf(0x1.fffffcp-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:334: RZ sqrtf(0x1.fffffcp-1) want 0x1.fffffcp-1 got 0x1.fffffep-1 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:335: bad fp exception: RZ sqrtf(0x1.000004p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:335: RZ sqrtf(0x1.000004p+0) want 0x1p+0 got 0x1.000002p+0 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:336: bad fp exception: RZ sqrtf(0x1.000006p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:337: bad fp exception: RZ sqrtf(0x1.000008p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:337: RZ sqrtf(0x1.000008p+0) want 0x1.000002p+0 got 0x1.000004p+0 ulperr 0.000 = 0x1p+0 + -0x1.fffff8p-1
src/math/ucb/sqrtf.h:338: bad fp exception: RZ sqrtf(0x1.00000ap+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:339: bad fp exception: RZ sqrtf(0x1.00000cp+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:339: RZ sqrtf(0x1.00000cp+0) want 0x1.000004p+0 got 0x1.000006p+0 ulperr 0.000 = 0x1p+0 + -0x1.ffffeep-1
src/math/ucb/sqrtf.h:340: bad fp exception: RZ sqrtf(0x1.00000ep+0)=0x1.000006p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:341: bad fp exception: RZ sqrtf(0x1.fffffcp+125)=0x1.fffffcp+62, want INEXACT got 0
src/math/ucb/sqrtf.h:341: RZ sqrtf(0x1.fffffcp+125) want 0x1.fffffcp+62 got 0x1.fffffep+62 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:342: bad fp exception: RZ sqrtf(0x1.000004p+126)=0x1p+63, want INEXACT got 0
src/math/ucb/sqrtf.h:342: RZ sqrtf(0x1.000004p+126) want 0x1p+63 got 0x1.000002p+63 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/sanity/sqrtf.h:2: bad fp exception: RN sqrtf(0x1.161868p+2)=0x1.0ad1aep+1, want INEXACT got 0
src/math/sanity/sqrtf.h:5: bad fp exception: RN sqrtf(0x1.288bbcp+3)=0x1.85a7d4p+1, want INEXACT got 0
src/math/sanity/sqrtf.h:6: bad fp exception: RN sqrtf(0x1.52efdp-1)=0x1.a0937ap-1, want INEXACT got 0
src/math/sanity/sqrtf.h:8: bad fp exception: RN sqrtf(0x1.1f9efap-1)=0x1.7fbf4cp-1, want INEXACT got 0
src/math/sanity/sqrtf.h:9: bad fp exception: RN sqrtf(0x1.8c5dbp-1)=0x1.c27ce8p-1, want INEXACT got 0
src/math/special/sqrtf.h:10: bad fp exception: RN sqrtf(0x1.8p-148)=0x1.3988e2p-74, want INEXACT got 0
src/math/special/sqrtf.h:11: bad fp exception: RN sqrtf(0x1p-149)=0x1.6a09e6p-75, want INEXACT got 0
src/math/special/sqrtf.h:13: bad fp exception: RN sqrtf(0x1.fffffep+127)=0x1.fffffep+63, want INEXACT got 0
src/math/special/sqrtf.h:15: bad fp exception: RN sqrtf(0x1.fffffcp-1)=0x1.fffffep-1, want INEXACT got 0
src/math/special/sqrtf.h:16: bad fp exception: RN sqrtf(0x1.fffffep-1)=0x1.fffffep-1, want INEXACT got 0
src/math/special/sqrtf.h:17: bad fp exception: RN sqrtf(0x1.fffffcp+0)=0x1.6a09e4p+0, want INEXACT got 0
src/math/special/sqrtf.h:18: bad fp exception: RN sqrtf(0x1.fffffep+0)=0x1.6a09e6p+0, want INEXACT got 0
src/math/special/sqrtf.h:19: bad fp exception: RN sqrtf(0x1.000002p+0)=0x1p+0, want INEXACT got 0
src/math/special/sqrtf.h:20: bad fp exception: RN sqrtf(0x1.000004p+0)=0x1.000002p+0, want INEXACT got 0
src/math/special/sqrtf.h:21: bad fp exception: RN sqrtf(0x1.000002p+1)=0x1.6a09e8p+0, want INEXACT got 0
src/math/special/sqrtf.h:22: bad fp exception: RN sqrtf(0x1.000004p+1)=0x1.6a09eap+0, want INEXACT got 0
FAIL src/math/sqrtf.exe [status 1]
src/math/ucb/sqrt.h:47: bad fp exception: RN sqrtl(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/ucb/sqrt.h:48: bad fp exception: RZ sqrtl(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/ucb/sqrt.h:49: bad fp exception: RU sqrtl(0x1.fffffffffffffp+1023)=0x1p+512, want INEXACT got 0
src/math/ucb/sqrt.h:49: RU sqrtl(0x1.fffffffffffffp+1023) want 0x1p+512 got 0x1.fffffffffffffp+511 ulperr -0.250 = -0x1p-1 + 0x1p-2
src/math/ucb/sqrt.h:50: bad fp exception: RD sqrtl(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/ucb/sqrt.h:67: bad fp exception: RN sqrtl(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:69: bad fp exception: RN sqrtl(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:70: bad fp exception: RZ sqrtl(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:72: bad fp exception: RZ sqrtl(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:73: bad fp exception: RU sqrtl(0x1.0000000000001p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:73: RU sqrtl(0x1.0000000000001p+0) want 0x1.0000000000001p+0 got 0x1p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:75: bad fp exception: RU sqrtl(0x1.fffffffffffffp-1)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:75: RU sqrtl(0x1.fffffffffffffp-1) want 0x1p+0 got 0x1.fffffffffffffp-1 ulperr -0.250 = -0x1p-1 + 0x1p-2
src/math/ucb/sqrt.h:76: bad fp exception: RD sqrtl(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:78: bad fp exception: RD sqrtl(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:89: bad fp exception: RN sqrtl(0x1.766bdb2b5006dp+1)=0x1.b5d6fec392e7dp+0, want INEXACT got 0
src/math/ucb/sqrt.h:90: bad fp exception: RN sqrtl(0x1.b6546fb825911p+2)=0x1.4efb330ef0b43p+1, want INEXACT got 0
src/math/ucb/sqrt.h:91: bad fp exception: RN sqrtl(0x1.e165309de7505p+2)=0x1.5f0d324d38bdp+1, want INEXACT got 0
src/math/ucb/sqrt.h:92: bad fp exception: RN sqrtl(0x1.541dcfba96889p+0)=0x1.271370ec508dp+0, want INEXACT got 0
src/math/ucb/sqrt.h:93: bad fp exception: RN sqrtl(0x1.754c3e27084ddp+1)=0x1.b52eb45df30b2p+0, want INEXACT got 0
src/math/ucb/sqrt.h:94: bad fp exception: RN sqrtl(0x1.ebe1e1b093c41p+1)=0x1.f5d722e54e976p+0, want INEXACT got 0
src/math/ucb/sqrt.h:95: bad fp exception: RN sqrtl(0x1.940d8d18455f5p+2)=0x1.419df976f692dp+1, want INEXACT got 0
src/math/ucb/sqrt.h:96: bad fp exception: RN sqrtl(0x1.dae714a51b239p+2)=0x1.5cad1a5584b9ap+1, want INEXACT got 0
src/math/ucb/sqrt.h:97: bad fp exception: RN sqrtl(0x1.a9f2d1079de4dp+1)=0x1.d2ff13bff7b67p+0, want INEXACT got 0
src/math/ucb/sqrt.h:98: bad fp exception: RN sqrtl(0x1.57dd33103b871p-3)=0x1.a397d7b1e31f2p-2, want INEXACT got 0
src/math/ucb/sqrt.h:135: bad fp exception: RD sqrtl(0x1.ffffffffffffep-1023)=0x1.ffffffffffffep-512, want INEXACT got 0
src/math/ucb/sqrt.h:135: RD sqrtl(0x1.ffffffffffffep-1023) want 0x1.ffffffffffffep-512 got 0x1.fffffffffffffp-512 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:136: bad fp exception: RD sqrtl(0x1.0000000000002p-1022)=0x1p-511, want INEXACT got 0
src/math/ucb/sqrt.h:136: RD sqrtl(0x1.0000000000002p-1022) want 0x1p-511 got 0x1.0000000000001p-511 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:137: bad fp exception: RD sqrtl(0x1.ffffffffffff7p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:138: bad fp exception: RD sqrtl(0x1.ffffffffffff8p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:138: RD sqrtl(0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp-1 got 0x1.ffffffffffffcp-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:139: bad fp exception: RD sqrtl(0x1.ffffffffffff9p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:140: bad fp exception: RD sqrtl(0x1.ffffffffffffap-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:140: RD sqrtl(0x1.ffffffffffffap-1) want 0x1.ffffffffffffcp-1 got 0x1.ffffffffffffdp-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:141: bad fp exception: RD sqrtl(0x1.ffffffffffffbp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:142: bad fp exception: RD sqrtl(0x1.ffffffffffffcp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:142: RD sqrtl(0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp-1 got 0x1.ffffffffffffep-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:143: bad fp exception: RD sqrtl(0x1.ffffffffffffdp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:144: bad fp exception: RD sqrtl(0x1.ffffffffffffep-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:144: RD sqrtl(0x1.ffffffffffffep-1) want 0x1.ffffffffffffep-1 got 0x1.fffffffffffffp-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:145: bad fp exception: RD sqrtl(0x1.0000000000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:145: RD sqrtl(0x1.0000000000002p+0) want 0x1p+0 got 0x1.0000000000001p+0 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:146: bad fp exception: RD sqrtl(0x1.0000000000003p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:147: bad fp exception: RD sqrtl(0x1.0000000000004p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:147: RD sqrtl(0x1.0000000000004p+0) want 0x1.0000000000001p+0 got 0x1.0000000000002p+0 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:148: bad fp exception: RD sqrtl(0x1.0000000000005p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:149: bad fp exception: RD sqrtl(0x1.0000000000006p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:149: RD sqrtl(0x1.0000000000006p+0) want 0x1.0000000000002p+0 got 0x1.0000000000003p+0 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:150: bad fp exception: RD sqrtl(0x1.0000000000007p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:151: bad fp exception: RD sqrtl(0x1.ffffffffffffep+1021)=0x1.ffffffffffffep+510, want INEXACT got 0
src/math/ucb/sqrt.h:151: RD sqrtl(0x1.ffffffffffffep+1021) want 0x1.ffffffffffffep+510 got 0x1.fffffffffffffp+510 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:152: bad fp exception: RD sqrtl(0x1.0000000000002p+1022)=0x1p+511, want INEXACT got 0
src/math/ucb/sqrt.h:152: RD sqrtl(0x1.0000000000002p+1022) want 0x1p+511 got 0x1.0000000000001p+511 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:206: bad fp exception: RN sqrtl(0x1.ffffffffffffep-1023)=0x1.fffffffffffffp-512, want INEXACT got 0
src/math/ucb/sqrt.h:207: bad fp exception: RN sqrtl(0x1.0000000000002p-1022)=0x1.0000000000001p-511, want INEXACT got 0
src/math/ucb/sqrt.h:208: bad fp exception: RN sqrtl(0x1.ffffffffffff7p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:209: bad fp exception: RN sqrtl(0x1.ffffffffffff8p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:210: bad fp exception: RN sqrtl(0x1.ffffffffffff9p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:211: bad fp exception: RN sqrtl(0x1.ffffffffffffap-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:212: bad fp exception: RN sqrtl(0x1.ffffffffffffbp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:213: bad fp exception: RN sqrtl(0x1.ffffffffffffcp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:214: bad fp exception: RN sqrtl(0x1.ffffffffffffdp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:215: bad fp exception: RN sqrtl(0x1.ffffffffffffep-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:216: bad fp exception: RN sqrtl(0x1.0000000000002p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:217: bad fp exception: RN sqrtl(0x1.0000000000003p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:218: bad fp exception: RN sqrtl(0x1.0000000000004p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:219: bad fp exception: RN sqrtl(0x1.0000000000005p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:220: bad fp exception: RN sqrtl(0x1.0000000000006p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:221: bad fp exception: RN sqrtl(0x1.0000000000007p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:222: bad fp exception: RN sqrtl(0x1.ffffffffffffep+1021)=0x1.fffffffffffffp+510, want INEXACT got 0
src/math/ucb/sqrt.h:223: bad fp exception: RN sqrtl(0x1.0000000000002p+1022)=0x1.0000000000001p+511, want INEXACT got 0
src/math/ucb/sqrt.h:273: bad fp exception: RU sqrtl(0x1.ffffffffffffep-1023)=0x1.fffffffffffffp-512, want INEXACT got 0
src/math/ucb/sqrt.h:274: bad fp exception: RU sqrtl(0x1.0000000000002p-1022)=0x1.0000000000001p-511, want INEXACT got 0
src/math/ucb/sqrt.h:275: bad fp exception: RU sqrtl(0x1.ffffffffffff7p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:275: RU sqrtl(0x1.ffffffffffff7p-1) want 0x1.ffffffffffffcp-1 got 0x1.ffffffffffffbp-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:276: bad fp exception: RU sqrtl(0x1.ffffffffffff8p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:277: bad fp exception: RU sqrtl(0x1.ffffffffffff9p-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:277: RU sqrtl(0x1.ffffffffffff9p-1) want 0x1.ffffffffffffdp-1 got 0x1.ffffffffffffcp-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:278: bad fp exception: RU sqrtl(0x1.ffffffffffffap-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:279: bad fp exception: RU sqrtl(0x1.ffffffffffffbp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:279: RU sqrtl(0x1.ffffffffffffbp-1) want 0x1.ffffffffffffep-1 got 0x1.ffffffffffffdp-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:280: bad fp exception: RU sqrtl(0x1.ffffffffffffcp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:281: bad fp exception: RU sqrtl(0x1.ffffffffffffdp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:281: RU sqrtl(0x1.ffffffffffffdp-1) want 0x1.fffffffffffffp-1 got 0x1.ffffffffffffep-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:282: bad fp exception: RU sqrtl(0x1.ffffffffffffep-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:283: bad fp exception: RU sqrtl(0x1.0000000000002p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:284: bad fp exception: RU sqrtl(0x1.0000000000003p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:284: RU sqrtl(0x1.0000000000003p+0) want 0x1.0000000000002p+0 got 0x1.0000000000001p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:285: bad fp exception: RU sqrtl(0x1.0000000000004p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:286: bad fp exception: RU sqrtl(0x1.0000000000005p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:286: RU sqrtl(0x1.0000000000005p+0) want 0x1.0000000000003p+0 got 0x1.0000000000002p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:287: bad fp exception: RU sqrtl(0x1.0000000000006p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:288: bad fp exception: RU sqrtl(0x1.0000000000007p+0)=0x1.0000000000004p+0, want INEXACT got 0
src/math/ucb/sqrt.h:288: RU sqrtl(0x1.0000000000007p+0) want 0x1.0000000000004p+0 got 0x1.0000000000003p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:289: bad fp exception: RU sqrtl(0x1.ffffffffffffep+1021)=0x1.fffffffffffffp+510, want INEXACT got 0
src/math/ucb/sqrt.h:290: bad fp exception: RU sqrtl(0x1.0000000000002p+1022)=0x1.0000000000001p+511, want INEXACT got 0
src/math/ucb/sqrt.h:344: bad fp exception: RZ sqrtl(0x1.ffffffffffffep-1023)=0x1.ffffffffffffep-512, want INEXACT got 0
src/math/ucb/sqrt.h:344: RZ sqrtl(0x1.ffffffffffffep-1023) want 0x1.ffffffffffffep-512 got 0x1.fffffffffffffp-512 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:345: bad fp exception: RZ sqrtl(0x1.0000000000002p-1022)=0x1p-511, want INEXACT got 0
src/math/ucb/sqrt.h:345: RZ sqrtl(0x1.0000000000002p-1022) want 0x1p-511 got 0x1.0000000000001p-511 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:346: bad fp exception: RZ sqrtl(0x1.ffffffffffff7p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:347: bad fp exception: RZ sqrtl(0x1.ffffffffffff8p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:347: RZ sqrtl(0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp-1 got 0x1.ffffffffffffcp-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:348: bad fp exception: RZ sqrtl(0x1.ffffffffffff9p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:349: bad fp exception: RZ sqrtl(0x1.ffffffffffffap-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:349: RZ sqrtl(0x1.ffffffffffffap-1) want 0x1.ffffffffffffcp-1 got 0x1.ffffffffffffdp-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:350: bad fp exception: RZ sqrtl(0x1.ffffffffffffbp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:351: bad fp exception: RZ sqrtl(0x1.ffffffffffffcp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:351: RZ sqrtl(0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp-1 got 0x1.ffffffffffffep-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:352: bad fp exception: RZ sqrtl(0x1.ffffffffffffdp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:353: bad fp exception: RZ sqrtl(0x1.ffffffffffffep-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:353: RZ sqrtl(0x1.ffffffffffffep-1) want 0x1.ffffffffffffep-1 got 0x1.fffffffffffffp-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:354: bad fp exception: RZ sqrtl(0x1.0000000000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:354: RZ sqrtl(0x1.0000000000002p+0) want 0x1p+0 got 0x1.0000000000001p+0 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:355: bad fp exception: RZ sqrtl(0x1.0000000000003p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:356: bad fp exception: RZ sqrtl(0x1.0000000000004p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:356: RZ sqrtl(0x1.0000000000004p+0) want 0x1.0000000000001p+0 got 0x1.0000000000002p+0 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:357: bad fp exception: RZ sqrtl(0x1.0000000000005p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:358: bad fp exception: RZ sqrtl(0x1.0000000000006p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:358: RZ sqrtl(0x1.0000000000006p+0) want 0x1.0000000000002p+0 got 0x1.0000000000003p+0 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:359: bad fp exception: RZ sqrtl(0x1.0000000000007p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:360: bad fp exception: RZ sqrtl(0x1.ffffffffffffep+1021)=0x1.ffffffffffffep+510, want INEXACT got 0
src/math/ucb/sqrt.h:360: RZ sqrtl(0x1.ffffffffffffep+1021) want 0x1.ffffffffffffep+510 got 0x1.fffffffffffffp+510 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:361: bad fp exception: RZ sqrtl(0x1.0000000000002p+1022)=0x1p+511, want INEXACT got 0
src/math/ucb/sqrt.h:361: RZ sqrtl(0x1.0000000000002p+1022) want 0x1p+511 got 0x1.0000000000001p+511 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/sanity/sqrt.h:2: bad fp exception: RN sqrtl(0x1.161868e18bc67p+2)=0x1.0ad1adc856f29p+1, want INEXACT got 0
src/math/sanity/sqrt.h:5: bad fp exception: RN sqrtl(0x1.288bbb0d6a1e6p+3)=0x1.85a7d346e8c13p+1, want INEXACT got 0
src/math/sanity/sqrt.h:6: bad fp exception: RN sqrtl(0x1.52efd0cd80497p-1)=0x1.a0937a0b92ccbp-1, want INEXACT got 0
src/math/sanity/sqrt.h:8: bad fp exception: RN sqrtl(0x1.1f9ef934745cbp-1)=0x1.7fbf4b5a076bcp-1, want INEXACT got 0
src/math/sanity/sqrt.h:9: bad fp exception: RN sqrtl(0x1.8c5db097f7442p-1)=0x1.c27ce94ff39c5p-1, want INEXACT got 0
src/math/special/sqrt.h:9: bad fp exception: RN sqrtl(0x1p-1073)=0x1.6a09e667f3bcdp-537, want INEXACT got 0
src/math/special/sqrt.h:10: bad fp exception: RN sqrtl(0x1.8p-1073)=0x1.bb67ae8584caap-537, want INEXACT got 0
src/math/special/sqrt.h:13: bad fp exception: RN sqrtl(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/special/sqrt.h:14: bad fp exception: RN sqrtl(0x1.fffffffffffffp+0)=0x1.6a09e667f3bccp+0, want INEXACT got 0
src/math/special/sqrt.h:15: bad fp exception: RN sqrtl(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/special/sqrt.h:16: bad fp exception: RN sqrtl(0x1.0000000000001p+1)=0x1.6a09e667f3bcdp+0, want INEXACT got 0
src/math/special/sqrt.h:17: bad fp exception: RN sqrtl(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/special/sqrt.h:18: bad fp exception: RN sqrtl(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/special/sqrt.h:20: bad fp exception: RN sqrtl(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/special/sqrt.h:21: bad fp exception: RN sqrtl(0x1.ffffffffffffbp+1023)=0x1.ffffffffffffdp+511, want INEXACT got 0
src/math/special/sqrt.h:22: bad fp exception: RN sqrtl(0x1.ffffffffffff7p+1023)=0x1.ffffffffffffbp+511, want INEXACT got 0
src/math/special/sqrt.h:23: bad fp exception: RN sqrtl(0x1.ffffffffffff3p+1023)=0x1.ffffffffffff9p+511, want INEXACT got 0
src/math/special/sqrt.h:24: bad fp exception: RN sqrtl(0x1.fffffffffffefp+1023)=0x1.ffffffffffff7p+511, want INEXACT got 0
src/math/special/sqrt.h:25: bad fp exception: RN sqrtl(0x1.fffffffffffebp+1023)=0x1.ffffffffffff5p+511, want INEXACT got 0
src/math/special/sqrt.h:26: bad fp exception: RN sqrtl(0x1.fffffffffffe7p+1023)=0x1.ffffffffffff3p+511, want INEXACT got 0
src/math/special/sqrt.h:27: bad fp exception: RN sqrtl(0x1.fffffffffffe3p+1023)=0x1.ffffffffffff1p+511, want INEXACT got 0
src/math/special/sqrt.h:28: bad fp exception: RN sqrtl(0x1.fffffffffffdfp+1023)=0x1.fffffffffffefp+511, want INEXACT got 0
src/math/special/sqrt.h:29: bad fp exception: RN sqrtl(0x1.fffffffffffdbp+1023)=0x1.fffffffffffedp+511, want INEXACT got 0
src/math/special/sqrt.h:30: bad fp exception: RN sqrtl(0x1.fffffffffffd7p+1023)=0x1.fffffffffffebp+511, want INEXACT got 0
src/math/special/sqrt.h:31: bad fp exception: RN sqrtl(0x1.0000000000003p-1022)=0x1.0000000000001p-511, want INEXACT got 0
src/math/special/sqrt.h:32: bad fp exception: RN sqrtl(0x1.0000000000007p-1022)=0x1.0000000000003p-511, want INEXACT got 0
src/math/special/sqrt.h:33: bad fp exception: RN sqrtl(0x1.000000000000bp-1022)=0x1.0000000000005p-511, want INEXACT got 0
src/math/special/sqrt.h:34: bad fp exception: RN sqrtl(0x1.000000000000fp-1022)=0x1.0000000000007p-511, want INEXACT got 0
src/math/special/sqrt.h:35: bad fp exception: RN sqrtl(0x1.0000000000013p-1022)=0x1.0000000000009p-511, want INEXACT got 0
src/math/special/sqrt.h:36: bad fp exception: RN sqrtl(0x1.0000000000017p-1022)=0x1.000000000000bp-511, want INEXACT got 0
src/math/special/sqrt.h:37: bad fp exception: RN sqrtl(0x1.000000000001bp-1022)=0x1.000000000000dp-511, want INEXACT got 0
src/math/special/sqrt.h:38: bad fp exception: RN sqrtl(0x1.000000000001fp-1022)=0x1.000000000000fp-511, want INEXACT got 0
src/math/special/sqrt.h:39: bad fp exception: RN sqrtl(0x1.0000000000023p-1022)=0x1.0000000000011p-511, want INEXACT got 0
src/math/special/sqrt.h:40: bad fp exception: RN sqrtl(0x1.0000000000027p-1022)=0x1.0000000000013p-511, want INEXACT got 0
src/math/special/sqrt.h:41: bad fp exception: RN sqrtl(0x1.000000000002bp-1022)=0x1.0000000000015p-511, want INEXACT got 0
src/math/special/sqrt.h:42: bad fp exception: RN sqrtl(0x1.000000000002fp-1022)=0x1.0000000000017p-511, want INEXACT got 0
src/math/special/sqrt.h:43: bad fp exception: RN sqrtl(0x1.0000000000033p-1022)=0x1.0000000000019p-511, want INEXACT got 0
src/math/special/sqrt.h:44: bad fp exception: RN sqrtl(0x1.0000000000037p-1022)=0x1.000000000001bp-511, want INEXACT got 0
src/math/special/sqrt.h:45: bad fp exception: RN sqrtl(0x1.7167bc36eaa3bp+6)=0x1.3384c7db650cdp+3, want INEXACT got 0
src/math/special/sqrt.h:46: bad fp exception: RN sqrtl(0x1.7570994273ad7p+6)=0x1.353186e89b8ffp+3, want INEXACT got 0
src/math/special/sqrt.h:47: bad fp exception: RN sqrtl(0x1.7dae969442fe6p+6)=0x1.389640fb18b75p+3, want INEXACT got 0
src/math/special/sqrt.h:48: bad fp exception: RN sqrtl(0x1.7f8444fcf67e5p+6)=0x1.395659e94669fp+3, want INEXACT got 0
src/math/special/sqrt.h:49: bad fp exception: RN sqrtl(0x1.8364650e63a54p+6)=0x1.3aea9efe1a3d7p+3, want INEXACT got 0
src/math/special/sqrt.h:50: bad fp exception: RN sqrtl(0x1.85bedd274edd8p+6)=0x1.3bdf20c867057p+3, want INEXACT got 0
src/math/special/sqrt.h:51: bad fp exception: RN sqrtl(0x1.8609cf496ab77p+6)=0x1.3bfd7e14b5eabp+3, want INEXACT got 0
src/math/special/sqrt.h:52: bad fp exception: RN sqrtl(0x1.873849c70a375p+6)=0x1.3c77ed341d27fp+3, want INEXACT got 0
src/math/special/sqrt.h:53: bad fp exception: RN sqrtl(0x1.8919c962cbaaep+6)=0x1.3d3a7113ee82fp+3, want INEXACT got 0
src/math/special/sqrt.h:54: bad fp exception: RN sqrtl(0x1.8de4493e22dc6p+6)=0x1.3f27d448220c3p+3, want INEXACT got 0
src/math/special/sqrt.h:55: bad fp exception: RN sqrtl(0x1.924829a17a288p+6)=0x1.40e9552eec28fp+3, want INEXACT got 0
src/math/special/sqrt.h:56: bad fp exception: RN sqrtl(0x1.92702cd992f12p+6)=0x1.40f94a6fdfddfp+3, want INEXACT got 0
src/math/special/sqrt.h:57: bad fp exception: RN sqrtl(0x1.92b763a8311fdp+6)=0x1.4115af614695fp+3, want INEXACT got 0
src/math/special/sqrt.h:58: bad fp exception: RN sqrtl(0x1.947da013c7293p+6)=0x1.41ca91102940fp+3, want INEXACT got 0
src/math/special/sqrt.h:59: bad fp exception: RN sqrtl(0x1.9536091c494d2p+6)=0x1.4213e334c77adp+3, want INEXACT got 0
src/math/special/sqrt.h:60: bad fp exception: RN sqrtl(0x1.61b04c6p-1019)=0x1.a98b88f18b46dp-510, want INEXACT got 0
src/math/special/sqrt.h:61: bad fp exception: RN sqrtl(0x1.93789f1p-1018)=0x1.4162ae43d5821p-509, want INEXACT got 0
src/math/special/sqrt.h:62: bad fp exception: RN sqrtl(0x1.a1989b4p-1018)=0x1.46f6736eb44bbp-509, want INEXACT got 0
src/math/special/sqrt.h:63: bad fp exception: RN sqrtl(0x1.f93bc9p-1018)=0x1.67a36ec403bafp-509, want INEXACT got 0
src/math/special/sqrt.h:64: bad fp exception: RN sqrtl(0x1.2f675e3p-1017)=0x1.8a22ab6dcfee1p-509, want INEXACT got 0
src/math/special/sqrt.h:65: bad fp exception: RN sqrtl(0x1.a158508p-1017)=0x1.ce418a96cf589p-509, want INEXACT got 0
src/math/special/sqrt.h:66: bad fp exception: RN sqrtl(0x1.cd31f078p-1017)=0x1.e5ef1c65dccebp-509, want INEXACT got 0
src/math/special/sqrt.h:67: bad fp exception: RN sqrtl(0x1.33b43b08p-1016)=0x1.18a9f607e1701p-508, want INEXACT got 0
src/math/special/sqrt.h:68: bad fp exception: RN sqrtl(0x1.6e66a858p-1016)=0x1.324402a00b45fp-508, want INEXACT got 0
src/math/special/sqrt.h:69: bad fp exception: RN sqrtl(0x1.8661cbf8p-1016)=0x1.3c212046bfdffp-508, want INEXACT got 0
src/math/special/sqrt.h:70: bad fp exception: RN sqrtl(0x1.bbb221b4p-1016)=0x1.510681b939931p-508, want INEXACT got 0
src/math/special/sqrt.h:71: bad fp exception: RN sqrtl(0x1.c4942f3cp-1016)=0x1.5461e59227ab5p-508, want INEXACT got 0
src/math/special/sqrt.h:72: bad fp exception: RN sqrtl(0x1.dbb258c8p-1016)=0x1.5cf7b0f78d3afp-508, want INEXACT got 0
src/math/special/sqrt.h:73: bad fp exception: RN sqrtl(0x1.57103ea4p-1015)=0x1.a31ab946d340bp-508, want INEXACT got 0
src/math/special/sqrt.h:74: bad fp exception: RN sqrtl(0x1.9b294f88p-1015)=0x1.cad197e28e85bp-508, want INEXACT got 0
FAIL src/math/sqrtl.exe [status 1]
X src/math/sanity/tgamma.h:4: RN tgamma(-0x1.a206f0a19dcc4p+2) want -0x1.9fd0c1ce12f14p-10 got -0x1.9fd0c1ce12f12p-10 ulperr 1.597 = 0x1p+1 + -0x1.9c637p-2
X src/math/sanity/tgamma.h:7: RN tgamma(-0x1.a05cc754481d1p-2) want -0x1.d9a22b2f3f253p+1 got -0x1.d9a22b2f3f251p+1 ulperr 1.674 = 0x1p+1 + -0x1.4d79f4p-2
src/math/special/tgamma.h:5: bad fp exception: RN tgamma(-0x1p+0)=nan, want INVALID got 0
src/math/special/tgamma.h:7: bad fp exception: RN tgamma(-0x1p+1)=nan, want INVALID got 0
X src/math/special/tgamma.h:47: RN tgamma(0x1p-53) want 0x1.fffffffffffffp+52 got 0x1.ffffffffffffdp+52 ulperr -2.423 = -0x1p+1 + -0x1.b0ee6p-2
X src/math/special/tgamma.h:60: RN tgamma(-0x1.0000000000001p+0) want 0x1.fffffffffffffp+51 got 0x1.ffffffffffffdp+51 ulperr -2.154 = -0x1p+1 + -0x1.3c467ep-3
X src/math/special/tgamma.h:62: RN tgamma(-0x1.0000000000003p+0) want 0x1.5555555555554p+50 got 0x1.5555555555552p+50 ulperr -1.642 = -0x1p+1 + 0x1.6e642cp-2
X src/math/special/tgamma.h:66: RN tgamma(-0x1.ffffffffffffep+0) want 0x1.0000000000002p+50 got 0x1.0000000000004p+50 ulperr 2.154 = 0x1p+1 + 0x1.3c467ep-3
X src/math/special/tgamma.h:68: RN tgamma(-0x1.0000000000001p+1) want -0x1.ffffffffffffcp+49 got -0x1.ffffffffffff7p+49 ulperr 5.309 = 0x1.4p+2 + 0x1.3c467ep-2
X src/math/special/tgamma.h:72: RN tgamma(-0x1.7fffffffffffdp+1) want -0x1.c71c71c71c72ap+46 got -0x1.c71c71c71c72cp+46 ulperr -2.157 = -0x1p+1 + -0x1.4177f6p-3
X src/math/special/tgamma.h:82: RN tgamma(-0x1.59fffffffffffp+7) want -0x1.46b1fa841aaa6p-997 got -0x1.46b1fa841aaa8p-997 ulperr -1.801 = -0x1p+1 + 0x1.979e28p-3
X src/math/special/tgamma.h:83: RN tgamma(-0x1.5a00000000001p+7) want 0x1.46b1fa841a412p-997 got 0x1.46b1fa841a41p-997 ulperr -1.700 = -0x1p+1 + 0x1.333de2p-2
X src/math/special/tgamma.h:84: RN tgamma(-0x1.5bfffffffffffp+7) want 0x1.e0a7b14f99fdbp-1005 got 0x1.e0a7b14f99fddp-1005 ulperr 1.579 = 0x1p+1 + -0x1.af416ap-2
X src/math/special/tgamma.h:85: RN tgamma(-0x1.5c00000000001p+7) want -0x1.e0a7b14f9962ap-1005 got -0x1.e0a7b14f9962cp-1005 ulperr -1.685 = -0x1p+1 + 0x1.42ddc4p-2
X src/math/special/tgamma.h:88: RN tgamma(-0x1.5ffffffffffffp+7) want 0x1.ff5df5f533fd3p-1020 got 0x1.ff5df5f533fd6p-1020 ulperr 2.513 = 0x1.8p+1 + -0x1.f234a4p-2
X src/math/special/tgamma.h:119: RN tgamma(-0x1.8p+0) want 0x1.2e7fb0bcdf4f2p+1 got 0x1.2e7fb0bcdf4fp+1 ulperr -1.770 = -0x1p+1 + 0x1.d7697p-3
X src/math/special/tgamma.h:136: RN tgamma(-0x1.02p+6) want -0x1.912276590832ep-298 got -0x1.912276590833p-298 ulperr -1.662 = -0x1p+1 + 0x1.59f79ap-2
X src/math/special/tgamma.h:141: RN tgamma(-0x1.55p+7) want -0x1.7d2374dfcda7ap-1022 got -0x1.7d2374dfcda78p-1022 ulperr 1.778 = 0x1p+1 + -0x1.c68fa4p-3
FAIL src/math/tgamma.exe [status 1]
src/math/special/tgammaf.h:4: bad fp exception: RN tgammaf(-0x1p+0)=-nan, want INVALID got 0
src/math/special/tgammaf.h:6: bad fp exception: RN tgammaf(-0x1p+1)=-nan, want INVALID got 0
FAIL src/math/tgammaf.exe [status 1]
src/math/special/tgamma.h:5: bad fp exception: RN tgammal(-0x1p+0)=nan, want INVALID got 0
src/math/special/tgamma.h:7: bad fp exception: RN tgammal(-0x1p+1)=nan, want INVALID got 0
src/math/special/tgamma.h:47: RN tgammal(0x1p-53) want 0x1.fffffffffffffp+52 got 0x1.ffffffffffffdp+52 ulperr -2.423 = -0x1p+1 + -0x1.b0ee6p-2
src/math/special/tgamma.h:60: RN tgammal(-0x1.0000000000001p+0) want 0x1.fffffffffffffp+51 got 0x1.ffffffffffffdp+51 ulperr -2.154 = -0x1p+1 + -0x1.3c467ep-3
src/math/special/tgamma.h:66: RN tgammal(-0x1.ffffffffffffep+0) want 0x1.0000000000002p+50 got 0x1.0000000000004p+50 ulperr 2.154 = 0x1p+1 + 0x1.3c467ep-3
src/math/special/tgamma.h:68: RN tgammal(-0x1.0000000000001p+1) want -0x1.ffffffffffffcp+49 got -0x1.ffffffffffff7p+49 ulperr 5.309 = 0x1.4p+2 + 0x1.3c467ep-2
src/math/special/tgamma.h:72: RN tgammal(-0x1.7fffffffffffdp+1) want -0x1.c71c71c71c72ap+46 got -0x1.c71c71c71c72cp+46 ulperr -2.157 = -0x1p+1 + -0x1.4177f6p-3
src/math/special/tgamma.h:88: RN tgammal(-0x1.5ffffffffffffp+7) want 0x1.ff5df5f533fd3p-1020 got 0x1.ff5df5f533fd6p-1020 ulperr 2.513 = 0x1.8p+1 + -0x1.f234a4p-2
FAIL src/math/tgammal.exe [status 1]
src/math/sanity/y0.h:1: bad fp exception: RN y0(-0x1.02239f3c6a8f1p+3)=nan, want INVALID got 0
src/math/sanity/y0.h:3: bad fp exception: RN y0(-0x1.0c34b3e01e6e7p+3)=nan, want INVALID got 0
src/math/sanity/y0.h:4: bad fp exception: RN y0(-0x1.a206f0a19dcc4p+2)=nan, want INVALID got 0
src/math/sanity/y0.h:7: bad fp exception: RN y0(-0x1.a05cc754481d1p-2)=nan, want INVALID got 0
src/math/sanity/y0.h:10: bad fp exception: RN y0(-0x1.5b86ea8118a0ep-1)=nan, want INVALID got 0
src/math/special/y0.h:1: bad fp exception: RN y0(0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y0.h:2: bad fp exception: RN y0(-0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y0.h:3: bad fp exception: RN y0(-0x1p+0)=nan, want INVALID got 0
src/math/special/y0.h:5: bad fp exception: RN y0(-inf)=nan, want INVALID got 0
X src/math/special/y0.h:8: RN y0(0x1.c982eb8d417eap-1) want -0x1.af74bfa0f1304p-56 got -0x1p-55 ulperr -1416944204906496.000 = -0x1.422d02p+50 + 0x1.11721cp-2
X src/math/special/y0.h:9: RN y0(0x1.c982eb8d417ebp-1) want 0x1.5666419c0f3c9p-54 got 0x1.2p-54 ulperr -957005015547904.000 = -0x1.b3320cp+49 + 0x1.dc02a8p-2
X src/math/special/y0.h:10: RN y0(0x1.fa9534d98569bp+1) want 0x1.384a000f3fcecp-53 got 0x1.3004a968fceadp-53 ulperr -145502385471488.000 = -0x1.08aad4p+47 + 0x1.58e17p-6
X src/math/special/y0.h:11: RN y0(0x1.fa9534d98569cp+1) want -0x1.8fa8956b4b481p-55 got -0x1.8f4eb84cc2a33p-55 ulperr 6175389646848.000 = 0x1.67747ap+42 + 0x1.54cfbep-2
X src/math/special/y0.h:12: RN y0(0x1.c581dc4e72102p+2) want -0x1.14bb186dc408dp-52 got -0x1.16eb61aad4cacp-52 ulperr -38502565675008.000 = -0x1.18249ep+45 + -0x1.163cfp-2
X src/math/special/y0.h:13: RN y0(0x1.c581dc4e72103p+2) want 0x1.e91b198d39ce2p-56 got 0x1.dac1abb064c09p-56 ulperr -252436132397056.000 = -0x1.cb2dbcp+47 + -0x1.ee1b6ep-2
FAIL src/math/y0.exe [status 1]
src/math/sanity/y0f.h:1: bad fp exception: RN y0f(-0x1.0223ap+3)=-nan, want INVALID got 0
X src/math/sanity/y0f.h:2: RN y0f(0x1.161868p+2) want -0x1.293dbep-3 got -0x1.293dc2p-3 ulperr -1.910 = -0x1p+1 + 0x1.6ffc42p-4
src/math/sanity/y0f.h:3: bad fp exception: RN y0f(-0x1.0c34b4p+3)=-nan, want INVALID got 0
src/math/sanity/y0f.h:4: bad fp exception: RN y0f(-0x1.a206fp+2)=-nan, want INVALID got 0
src/math/sanity/y0f.h:7: bad fp exception: RN y0f(-0x1.a05cc8p-2)=-nan, want INVALID got 0
src/math/sanity/y0f.h:10: bad fp exception: RN y0f(-0x1.5b86eap-1)=-nan, want INVALID got 0
src/math/special/y0f.h:1: bad fp exception: RN y0f(0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y0f.h:2: bad fp exception: RN y0f(-0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y0f.h:3: bad fp exception: RN y0f(-0x1p+0)=-nan, want INVALID got 0
src/math/special/y0f.h:5: bad fp exception: RN y0f(-inf)=-nan, want INVALID got 0
X src/math/special/y0f.h:7: RN y0f(0x1.0c4a3ap+0) want 0x1.ff138ep-4 got 0x1.ff1386p-4 ulperr -4.180 = -0x1.fffffep+1 + -0x1.71585ap-3
X src/math/special/y0f.h:8: RN y0f(0x1.8ae5d4p-1) want -0x1.d88a5ap-4 got -0x1.d88a5p-4 ulperr 4.919 = 0x1.4p+2 + -0x1.4d601ap-4
X src/math/special/y0f.h:9: RN y0f(0x1.fa9536p+1) want -0x1.da2946p-25 got -0x1.c5c23p-25 ulperr 668554.625 = 0x1.46716p+19 + -0x1.88a2bcp-2
FAIL src/math/y0f.exe [status 1]
src/math/sanity/y1.h:1: bad fp exception: RN y1(-0x1.02239f3c6a8f1p+3)=nan, want INVALID got 0
src/math/sanity/y1.h:3: bad fp exception: RN y1(-0x1.0c34b3e01e6e7p+3)=nan, want INVALID got 0
src/math/sanity/y1.h:4: bad fp exception: RN y1(-0x1.a206f0a19dcc4p+2)=nan, want INVALID got 0
src/math/sanity/y1.h:7: bad fp exception: RN y1(-0x1.a05cc754481d1p-2)=nan, want INVALID got 0
src/math/sanity/y1.h:10: bad fp exception: RN y1(-0x1.5b86ea8118a0ep-1)=nan, want INVALID got 0
src/math/special/y1.h:1: bad fp exception: RN y1(0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y1.h:2: bad fp exception: RN y1(-0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y1.h:3: bad fp exception: RN y1(-0x1p+0)=nan, want INVALID got 0
src/math/special/y1.h:5: bad fp exception: RN y1(-inf)=nan, want INVALID got 0
FAIL src/math/y1.exe [status 1]
src/math/sanity/y1f.h:1: bad fp exception: RN y1f(-0x1.0223ap+3)=-nan, want INVALID got 0
src/math/sanity/y1f.h:3: bad fp exception: RN y1f(-0x1.0c34b4p+3)=-nan, want INVALID got 0
src/math/sanity/y1f.h:4: bad fp exception: RN y1f(-0x1.a206fp+2)=-nan, want INVALID got 0
src/math/sanity/y1f.h:7: bad fp exception: RN y1f(-0x1.a05cc8p-2)=-nan, want INVALID got 0
src/math/sanity/y1f.h:10: bad fp exception: RN y1f(-0x1.5b86eap-1)=-nan, want INVALID got 0
src/math/special/y1f.h:1: bad fp exception: RN y1f(0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y1f.h:2: bad fp exception: RN y1f(-0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y1f.h:3: bad fp exception: RN y1f(-0x1p+0)=-nan, want INVALID got 0
src/math/special/y1f.h:5: bad fp exception: RN y1f(-inf)=-nan, want INVALID got 0
FAIL src/math/y1f.exe [status 1]
src/math/sanity/yn.h:1: bad fp exception: RN yn(-2, -0x1.02239f3c6a8f1p+3)=nan, want INVALID got 0
src/math/sanity/yn.h:3: bad fp exception: RN yn(0, -0x1.0c34b3e01e6e7p+3)=nan, want INVALID got 0
src/math/sanity/yn.h:4: bad fp exception: RN yn(1, -0x1.a206f0a19dcc4p+2)=nan, want INVALID got 0
src/math/sanity/yn.h:7: bad fp exception: RN yn(4, -0x1.a05cc754481d1p-2)=nan, want INVALID got 0
src/math/sanity/yn.h:10: bad fp exception: RN yn(7, -0x1.5b86ea8118a0ep-1)=nan, want INVALID got 0
src/math/special/yn.h:1: bad fp exception: RN yn(0, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:2: bad fp exception: RN yn(0, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:3: bad fp exception: RN yn(0, -0x1p+0)=nan, want INVALID got 0
src/math/special/yn.h:5: bad fp exception: RN yn(0, -inf)=nan, want INVALID got 0
src/math/special/yn.h:7: bad fp exception: RN yn(1, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:8: bad fp exception: RN yn(1, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:9: bad fp exception: RN yn(1, -0x1p+0)=nan, want INVALID got 0
src/math/special/yn.h:11: bad fp exception: RN yn(1, -inf)=nan, want INVALID got 0
src/math/special/yn.h:13: bad fp exception: RN yn(-1, 0x0p+0)=inf, want DIVBYZERO got 0
src/math/special/yn.h:14: bad fp exception: RN yn(-1, -0x0p+0)=inf, want DIVBYZERO got 0
src/math/special/yn.h:15: bad fp exception: RN yn(-1, -0x1p+0)=nan, want INVALID got 0
src/math/special/yn.h:17: bad fp exception: RN yn(-1, -inf)=nan, want INVALID got 0
src/math/special/yn.h:19: bad fp exception: RN yn(2, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:20: bad fp exception: RN yn(2, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:21: bad fp exception: RN yn(2, -0x1p+0)=nan, want INVALID got 0
src/math/special/yn.h:23: bad fp exception: RN yn(2, -inf)=nan, want INVALID got 0
FAIL src/math/yn.exe [status 1]
src/math/sanity/ynf.h:1: bad fp exception: RN ynf(-2, -0x1.0223ap+3)=-nan, want INVALID got 0
src/math/sanity/ynf.h:3: bad fp exception: RN ynf(0, -0x1.0c34b4p+3)=-nan, want INVALID got 0
src/math/sanity/ynf.h:4: bad fp exception: RN ynf(1, -0x1.a206fp+2)=-nan, want INVALID got 0
X src/math/sanity/ynf.h:6: RN ynf(3, 0x1.52efdp-1) want -0x1.2935d2p+4 got -0x1.2935d6p+4, ulperr -1.920 = -0x1p+1 + 0x1.47d13p-4
src/math/sanity/ynf.h:7: bad fp exception: RN ynf(4, -0x1.a05cc8p-2)=-nan, want INVALID got 0
X src/math/sanity/ynf.h:9: RN ynf(6, 0x1.8c5dbp-1) want -0x1.6dbc1cp+13 got -0x1.6dbc18p+13, ulperr 2.115 = 0x1p+1 + 0x1.d597eep-4
src/math/sanity/ynf.h:10: bad fp exception: RN ynf(7, -0x1.5b86eap-1)=-nan, want INVALID got 0
src/math/special/ynf.h:1: bad fp exception: RN ynf(0, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:2: bad fp exception: RN ynf(0, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:3: bad fp exception: RN ynf(0, -0x1p+0)=-nan, want INVALID got 0
src/math/special/ynf.h:5: bad fp exception: RN ynf(0, -inf)=-nan, want INVALID got 0
src/math/special/ynf.h:7: bad fp exception: RN ynf(1, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:8: bad fp exception: RN ynf(1, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:9: bad fp exception: RN ynf(1, -0x1p+0)=-nan, want INVALID got 0
src/math/special/ynf.h:11: bad fp exception: RN ynf(1, -inf)=-nan, want INVALID got 0
src/math/special/ynf.h:13: bad fp exception: RN ynf(-1, 0x0p+0)=inf, want DIVBYZERO got 0
src/math/special/ynf.h:14: bad fp exception: RN ynf(-1, -0x0p+0)=inf, want DIVBYZERO got 0
src/math/special/ynf.h:15: bad fp exception: RN ynf(-1, -0x1p+0)=-nan, want INVALID got 0
src/math/special/ynf.h:17: bad fp exception: RN ynf(-1, -inf)=-nan, want INVALID got 0
src/math/special/ynf.h:19: bad fp exception: RN ynf(2, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:20: bad fp exception: RN ynf(2, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:21: bad fp exception: RN ynf(2, -0x1p+0)=-nan, want INVALID got 0
src/math/special/ynf.h:23: bad fp exception: RN ynf(2, -inf)=-nan, want INVALID got 0
FAIL src/math/ynf.exe [status 1]
src/regression/daemon-failure.c:56:24: warning: adding 'int' to a string does not append to the string [-Wstring-plus-int]
                if (write(fd[1], "1" + !t_status, 1) != 1)
                                 ~~~~^~~~~~~~~~~
src/regression/daemon-failure.c:56:24: note: use array indexing to silence this warning
                if (write(fd[1], "1" + !t_status, 1) != 1)
                                     ^
                                 &   [          ]
1 warning generated.
src/regression/malloc-brk-fail.c:41: malloc(10000) failed (eventhough 64k is available to mmap): Out of memory
FAIL src/regression/malloc-brk-fail-static.exe [status 1]
FAIL src/regression/malloc-brk-fail.exe [timed out]
src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==0) got 38 "Function not implemented" want 0 "No error information"
src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==0) got 110 "Operation timed out" want 130 "Previous owner died"
src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==1) got 38 "Function not implemented" want 0 "No error information"
src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==1) got 110 "Operation timed out" want 130 "Previous owner died"
FAIL src/regression/pthread-robust-detach-static.exe [status 1]
src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==0) got 38 "Function not implemented" want 0 "No error information"
src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==0) got 110 "Operation timed out" want 130 "Previous owner died"
src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==1) got 38 "Function not implemented" want 0 "No error information"
src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==1) got 110 "Operation timed out" want 130 "Previous owner died"
FAIL src/regression/pthread-robust-detach.exe [status 1]
src/regression/pthread_cond-smasher.c:140: main thread in phase 0 (0 threads inside), finished waiting: Operation timed out
FAIL src/regression/pthread_cond-smasher-static.exe [status 1]
src/regression/pthread_cond-smasher.c:104: thread 5 in phase 0 (0) finished waiting: Operation timed out
FAIL src/regression/pthread_cond-smasher.exe [status 1]
src/regression/pthread_cond_wait-cancel_ignored.c:52: pthread_cond_wait did not act on cancellation
FAIL src/regression/pthread_cond_wait-cancel_ignored-static.exe [status 1]
src/regression/pthread_once-deadlock.c:41: sem_timedwait(s,&ts) failed: Operation timed out
src/regression/pthread_once-deadlock.c:44: pthread_once deadlocked
FAIL src/regression/pthread_once-deadlock-static.exe [status 1]

^ permalink raw reply	[flat|nested] 43+ messages in thread

* Re: [musl] Hexagon DSP support
  2020-04-15 19:12         ` sidneym
@ 2020-04-15 19:29           ` 'Rich Felker'
  2020-04-30 22:44             ` sidneym
  0 siblings, 1 reply; 43+ messages in thread
From: 'Rich Felker' @ 2020-04-15 19:29 UTC (permalink / raw)
  To: sidneym; +Cc: musl

On Wed, Apr 15, 2020 at 02:12:12PM -0500, sidneym@codeaurora.org wrote:
> src/api/ftw.c:44:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]

Compiling libc-test with -Werror is invalid. It necessarily must
produce some warnings, and needs to be able to distinguish actual
errors from them.

> 8 errors generated.
> src/functional/dlopen.c:39: dlsym main failed: Symbol not found: main
> FAIL src/functional/dlopen.exe [status 1]
> clang-11: warning: argument unused during compilation: '-rdynamic' [-Wunused-command-line-argument]

This is a clang deficiency that's preventing the test from working.

> src/functional/ipc_msg.c:62: qid_ds.msg_lspid == 0 failed: got 100, want 0
> src/functional/ipc_msg.c:64: (long long)qid_ds.msg_stime == 0 failed: got 6815993655711498240, want 0
> src/functional/ipc_msg.c:67: qid_ds.msg_ctime >= t failed: got 70368744177664, want >= 154502684032321054
> src/functional/ipc_msg.c:71: qid_ds.msg_qbytes > 0 failed: got 0, want > 0
> src/functional/ipc_msg.c:76: qid_ds.msg_qnum == 1 failed: got 0, want 1
> src/functional/ipc_msg.c:77: qid_ds.msg_lspid == getpid() failed: got 100, want 185819
> src/functional/ipc_msg.c:81: msg_stime is 6815993655711498240 want <= 154502684032321059
> src/functional/ipc_msg.c:128: child exit status: 256
> FAIL src/functional/ipc_msg-static.exe [status 1]

This is the sysvipc bits headers issue I mentioned. Same with the
sem/shm ones.

> src/functional/pthread_mutex.c:145: PTHREAD_MUTEX_ERRORCHECK relock did not return EDEADLK, got deadlock
> src/functional/pthread_mutex.c:148: PTHREAD_MUTEX_RECURSIVE relock did not succed, got deadlock
> FAIL src/functional/pthread_mutex-static.exe [status 1]
> src/functional/pthread_mutex.c:145: PTHREAD_MUTEX_ERRORCHECK relock did not return EDEADLK, got 
> src/functional/pthread_mutex.c:148: PTHREAD_MUTEX_RECURSIVE relock did not succed, got deadlock
> FAIL src/functional/pthread_mutex.exe [status 1]

This suggests broken atomics. It doesn't look like anything qemu-user
could cause (unless it's just failing to emulate the atomics at all).

> src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
> src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
> src/functional/pthread_mutex_pi.c:148: PTHREAD_MUTEX_ERRORCHECK relock did not return EDEADLK, got deadlock
> src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
> FAIL src/functional/pthread_mutex_pi-static.exe [timed out]
> src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
> src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
> src/functional/pthread_mutex_pi.c:148: PTHREAD_MUTEX_ERRORCHECK relock did not return EDEADLK, got deadlock
> src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
> src/functional/pthread_mutex_pi.c:151: PTHREAD_MUTEX_RECURSIVE relock did not succed, got deadlock
> src/functional/pthread_mutex_pi.c:87: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
> src/functional/pthread_mutex_pi.c:24: pthread_mutex_unlock(a[0]) failed: Operation not permitted
> FAIL src/functional/pthread_mutex_pi.exe [signal Segmentation fault]
> src/functional/pthread_robust.c:39: pthread_mutexattr_setrobust(&mtx_a, PTHREAD_MUTEX_ROBUST) failed: (pshared==0, pi==0) Function not implemented (setting robust attribute)
> FAIL src/functional/pthread_robust-static.exe [timed out]
> src/functional/pthread_robust.c:39: pthread_mutexattr_setrobust(&mtx_a, PTHREAD_MUTEX_ROBUST) failed: (pshared==0, pi==0) Function not implemented (setting robust attribute)
> FAIL src/functional/pthread_robust.exe [timed out]

These are all expected on qemu-user: kernel prio-inherit and robust
features are not emulated by qemu.

> src/functional/sem_init.c:19: sem_timedwait(s+1, &ts) failed: Operation timed out
> src/functional/sem_init.c:19: sem_timedwait(s+1, &ts) failed: Operation timed out
> src/functional/sem_init.c:19: sem_timedwait(s+1, &ts) failed: Operation timed out
> src/functional/sem_init.c:49: sem value should be 0, got 3
> FAIL src/functional/sem_init-static.exe [status 1]
> src/functional/sem_init.c:19: sem_timedwait(s+1, &ts) failed: Operation timed out
> src/functional/sem_init.c:19: sem_timedwait(s+1, &ts) failed: Operation timed out
> src/functional/sem_init.c:19: sem_timedwait(s+1, &ts) failed: Operation timed out
> src/functional/sem_init.c:49: sem value should be 0, got 3
> FAIL src/functional/sem_init.exe [status 1]

This is probably broken atomics again.

> src/functional/strptime.c:23: "%F": failed to parse "1856-07-10"
> src/functional/strptime.c:23: "%s": failed to parse "683078400"
> src/functional/strptime.c:47: "%z": failed to parse "+0200"
> src/functional/strptime.c:47: "%z": failed to parse "-0530"
> src/functional/strptime.c:47: "%z": failed to parse "-06"
> FAIL src/functional/strptime-static.exe [status 1]
> src/functional/strptime.c:23: "%F": failed to parse "1856-07-10"
> src/functional/strptime.c:23: "%s": failed to parse "683078400"
> src/functional/strptime.c:47: "%z": failed to parse "+0200"
> src/functional/strptime.c:47: "%z": failed to parse "-0530"
> src/functional/strptime.c:47: "%z": failed to parse "-06"
> FAIL src/functional/strptime.exe [status 1]

These are expected, functionality musl does not yet support
(future-standard, I think).

> src/functional/utime.c:38: st.st_atim.tv_sec == 0 failed: 1
> src/functional/utime.c:40: st.st_mtim.tv_sec == 0 failed: 1073741822
> src/functional/utime.c:47: st.st_atim.tv_sec >= t failed: 0
> src/functional/utime.c:48: st.st_mtim.tv_sec == 0 failed: 1073741823
> src/functional/utime.c:55: st.st_mtim.tv_sec >= t failed: 1073741822
> src/functional/utime.c:59: st.st_atim.tv_sec >= t failed: 0
> src/functional/utime.c:60: st.st_mtim.tv_sec >= t failed: 1073741823
> src/functional/utime.c:65: st.st_atim.tv_sec == 1LL<<32 failed: 0
> src/functional/utime.c:66: st.st_mtim.tv_sec == 1LL<<32 failed: 0
> FAIL src/functional/utime-static.exe [status 1]
> src/functional/utime.c:38: st.st_atim.tv_sec == 0 failed: 1
> src/functional/utime.c:40: st.st_mtim.tv_sec == 0 failed: 1073741822
> src/functional/utime.c:47: st.st_atim.tv_sec >= t failed: 0
> src/functional/utime.c:48: st.st_mtim.tv_sec == 0 failed: 1073741823
> src/functional/utime.c:55: st.st_mtim.tv_sec >= t failed: 1073741822
> src/functional/utime.c:59: st.st_atim.tv_sec >= t failed: 0
> src/functional/utime.c:60: st.st_mtim.tv_sec >= t failed: 1073741823
> src/functional/utime.c:65: st.st_atim.tv_sec == 1LL<<32 failed: 0
> src/functional/utime.c:66: st.st_mtim.tv_sec == 1LL<<32 failed: 0
> FAIL src/functional/utime.exe [status 1]

Looks like something is wrong here, possibly wrong struct kstat, or it
could be a qemu bug.

> src/math/ucb/sqrt.h:47: bad fp exception: RN sqrt(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
> [...]
> src/math/special/sqrt.h:74: bad fp exception: RN sqrtl(0x1.9b294f88p-1015)=0x1.cad197e28e85bp-508, want INEXACT got 0
> FAIL src/math/sqrtl.exe [status 1]

These are likely all general (not arch-specific) clang floating point
bugs. We should see if they also happen compiling other archs without
asm versions of sqrt.

Alternatively it might be a qemu fpu emulation bug. I've seen this
kind of thing (inconsistent across arch) on other archs under
qemu-user.

> src/regression/malloc-brk-fail.c:41: malloc(10000) failed (eventhough 64k is available to mmap): Out of memory
> FAIL src/regression/malloc-brk-fail-static.exe [status 1]
> FAIL src/regression/malloc-brk-fail.exe [timed out]

This test does not seem to work on modern kernels much less qemu-user.

> src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==0) got 38 "Function not implemented" want 0 "No error information"
> src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==0) got 110 "Operation timed out" want 130 "Previous owner died"
> src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==1) got 38 "Function not implemented" want 0 "No error information"
> src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==1) got 110 "Operation timed out" want 130 "Previous owner died"
> FAIL src/regression/pthread-robust-detach-static.exe [status 1]
> src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==0) got 38 "Function not implemented" want 0 "No error information"
> src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==0) got 110 "Operation timed out" want 130 "Previous owner died"
> src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==1) got 38 "Function not implemented" want 0 "No error information"
> src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==1) got 110 "Operation timed out" want 130 "Previous owner died"
> FAIL src/regression/pthread-robust-detach.exe [status 1]

Expected on qemu-user.

> src/regression/pthread_cond-smasher.c:140: main thread in phase 0 (0 threads inside), finished waiting: Operation timed out
> FAIL src/regression/pthread_cond-smasher-static.exe [status 1]
> src/regression/pthread_cond-smasher.c:104: thread 5 in phase 0 (0) finished waiting: Operation timed out
> FAIL src/regression/pthread_cond-smasher.exe [status 1]

These could be atomic bugs or just emulation being slow.

> src/regression/pthread_cond_wait-cancel_ignored.c:52: pthread_cond_wait did not act on cancellation
> FAIL src/regression/pthread_cond_wait-cancel_ignored-static.exe [status 1]
> src/regression/pthread_once-deadlock.c:41: sem_timedwait(s,&ts) failed: Operation timed out
> src/regression/pthread_once-deadlock.c:44: pthread_once deadlocked
> FAIL src/regression/pthread_once-deadlock-static.exe [status 1]

These are definitely atomic bugs (either in the arch bits or in qemu).

Rich

^ permalink raw reply	[flat|nested] 43+ messages in thread

* Re: [musl] Hexagon DSP support
  2020-04-15 18:22       ` sidneym
@ 2020-04-16  9:36         ` Szabolcs Nagy
  2020-04-16 15:34           ` Rich Felker
  0 siblings, 1 reply; 43+ messages in thread
From: Szabolcs Nagy @ 2020-04-16  9:36 UTC (permalink / raw)
  To: sidneym; +Cc: musl

* sidneym@codeaurora.org <sidneym@codeaurora.org> [2020-04-15 13:22:29 -0500]:
> > sqrt/sqrtf should work too (you may want to implement them if there is a
> > single instruction) other math failures are not target specific.
> 
> In fact that does go away if I used the hardware accelerated routine that is
> part of compiler-rt.builtins (__hexagon_sqrt)   Creating an explicit
> reference to compiler-rt-builtins vs just copying the assembly, which is
> preferred?

the preferred is like on other targets an inline asm block.
i think using __builtin_sqrt may be fine too if you know that
all hexagon compilers support that and doesnt generate an
actual sqrt call (e.g. on gcc that needs -fno-math-errno).

^ permalink raw reply	[flat|nested] 43+ messages in thread

* Re: [musl] Hexagon DSP support
  2020-04-16  9:36         ` Szabolcs Nagy
@ 2020-04-16 15:34           ` Rich Felker
  2020-04-16 16:26             ` sidneym
  0 siblings, 1 reply; 43+ messages in thread
From: Rich Felker @ 2020-04-16 15:34 UTC (permalink / raw)
  To: sidneym, musl

On Thu, Apr 16, 2020 at 11:36:38AM +0200, Szabolcs Nagy wrote:
> * sidneym@codeaurora.org <sidneym@codeaurora.org> [2020-04-15 13:22:29 -0500]:
> > > sqrt/sqrtf should work too (you may want to implement them if there is a
> > > single instruction) other math failures are not target specific.
> > 
> > In fact that does go away if I used the hardware accelerated routine that is
> > part of compiler-rt.builtins (__hexagon_sqrt)   Creating an explicit
> > reference to compiler-rt-builtins vs just copying the assembly, which is
> > preferred?
> 
> the preferred is like on other targets an inline asm block.
> i think using __builtin_sqrt may be fine too if you know that
> all hexagon compilers support that and doesnt generate an
> actual sqrt call (e.g. on gcc that needs -fno-math-errno).

__builtin_sqrt is explicitly allowed to compile to an external call to
sqrt (at compiler discretion), and thus can't be used to implement the
sqrt function. If you're implementing a native sqrt it should be
inline asm. But the C sqrt should work too. If it's not working that
indicates a bug in the compiler, in the code in musl, or in qemu, and
whichever it is we should track that down and get it fixed.

Rich

^ permalink raw reply	[flat|nested] 43+ messages in thread

* RE: [musl] Hexagon DSP support
  2020-04-16 15:34           ` Rich Felker
@ 2020-04-16 16:26             ` sidneym
  2020-04-16 16:34               ` 'Rich Felker'
  0 siblings, 1 reply; 43+ messages in thread
From: sidneym @ 2020-04-16 16:26 UTC (permalink / raw)
  To: 'Rich Felker', musl



> -----Original Message-----
> From: Rich Felker <dalias@libc.org>
> Sent: Thursday, April 16, 2020 10:34 AM
> To: sidneym@codeaurora.org; musl@lists.openwall.com
> Subject: Re: [musl] Hexagon DSP support
> 
> On Thu, Apr 16, 2020 at 11:36:38AM +0200, Szabolcs Nagy wrote:
> > * sidneym@codeaurora.org <sidneym@codeaurora.org> [2020-04-15
> 13:22:29 -0500]:
> > > > sqrt/sqrtf should work too (you may want to implement them if
> > > > there is a single instruction) other math failures are not target
specific.
> > >
> > > In fact that does go away if I used the hardware accelerated routine
that
> is
> > > part of compiler-rt.builtins (__hexagon_sqrt)   Creating an explicit
> > > reference to compiler-rt-builtins vs just copying the assembly,
> > > which is preferred?
> >
> > the preferred is like on other targets an inline asm block.
> > i think using __builtin_sqrt may be fine too if you know that all
> > hexagon compilers support that and doesnt generate an actual sqrt call
> > (e.g. on gcc that needs -fno-math-errno).
> 
> __builtin_sqrt is explicitly allowed to compile to an external call to
sqrt (at
> compiler discretion), and thus can't be used to implement the sqrt
function.
> If you're implementing a native sqrt it should be inline asm. But the C
sqrt
> should work too. If it's not working that indicates a bug in the compiler,
in the
> code in musl, or in qemu, and whichever it is we should track that down
and
> get it fixed.

I will add the assembly version for sqrt. There was an issue in qemu when
using the assembly version but that is fixed.  FWIW when I use the soft
version with clang for hexagon I still see errors, mostly looking for
INEXACT but not seeing it.


> 
> Rich

^ permalink raw reply	[flat|nested] 43+ messages in thread

* Re: [musl] Hexagon DSP support
  2020-04-16 16:26             ` sidneym
@ 2020-04-16 16:34               ` 'Rich Felker'
  0 siblings, 0 replies; 43+ messages in thread
From: 'Rich Felker' @ 2020-04-16 16:34 UTC (permalink / raw)
  To: sidneym; +Cc: musl

On Thu, Apr 16, 2020 at 11:26:52AM -0500, sidneym@codeaurora.org wrote:
> 
> 
> > -----Original Message-----
> > From: Rich Felker <dalias@libc.org>
> > Sent: Thursday, April 16, 2020 10:34 AM
> > To: sidneym@codeaurora.org; musl@lists.openwall.com
> > Subject: Re: [musl] Hexagon DSP support
> > 
> > On Thu, Apr 16, 2020 at 11:36:38AM +0200, Szabolcs Nagy wrote:
> > > * sidneym@codeaurora.org <sidneym@codeaurora.org> [2020-04-15
> > 13:22:29 -0500]:
> > > > > sqrt/sqrtf should work too (you may want to implement them if
> > > > > there is a single instruction) other math failures are not target
> specific.
> > > >
> > > > In fact that does go away if I used the hardware accelerated routine
> that
> > is
> > > > part of compiler-rt.builtins (__hexagon_sqrt)   Creating an explicit
> > > > reference to compiler-rt-builtins vs just copying the assembly,
> > > > which is preferred?
> > >
> > > the preferred is like on other targets an inline asm block.
> > > i think using __builtin_sqrt may be fine too if you know that all
> > > hexagon compilers support that and doesnt generate an actual sqrt call
> > > (e.g. on gcc that needs -fno-math-errno).
> > 
> > __builtin_sqrt is explicitly allowed to compile to an external call to
> sqrt (at
> > compiler discretion), and thus can't be used to implement the sqrt
> function.
> > If you're implementing a native sqrt it should be inline asm. But the C
> sqrt
> > should work too. If it's not working that indicates a bug in the compiler,
> in the
> > code in musl, or in qemu, and whichever it is we should track that down
> and
> > get it fixed.
> 
> I will add the assembly version for sqrt. There was an issue in qemu when
> using the assembly version but that is fixed.  FWIW when I use the soft
> version with clang for hexagon I still see errors, mostly looking for
> INEXACT but not seeing it.

I saw errors that were actual incorrect results not just wrong
exception flags, like:

src/math/ucb/sqrt.h:49: RU sqrt(0x1.fffffffffffffp+1023) want 0x1p+512 got 0x1.fffffffffffffp+511 ulperr -0.250 = -0x1p-1 + 0x1p-2

At least they all seemed to be in non-default rounding modes though so
the impact is low-ish. These are probably all qemu bugs but hard to
say for sure...

Rich

^ permalink raw reply	[flat|nested] 43+ messages in thread

* RE: [musl] Hexagon DSP support
  2020-04-15 19:29           ` 'Rich Felker'
@ 2020-04-30 22:44             ` sidneym
  2020-04-30 23:51               ` Rich Felker
  0 siblings, 1 reply; 43+ messages in thread
From: sidneym @ 2020-04-30 22:44 UTC (permalink / raw)
  To: musl

[-- Attachment #1: Type: text/plain, Size: 12300 bytes --]

> -----Original Message-----
> From: 'Rich Felker' <dalias@libc.org>
> Sent: Wednesday, April 15, 2020 2:30 PM
> To: sidneym@codeaurora.org
> Cc: musl@lists.openwall.com
> Subject: Re: [musl] Hexagon DSP support
> 
> On Wed, Apr 15, 2020 at 02:12:12PM -0500, sidneym@codeaurora.org wrote:
> > src/api/ftw.c:44:1: error: switch condition has boolean value
> > [-Werror,-Wswitch-bool]
> 
> Compiling libc-test with -Werror is invalid. It necessarily must produce
some
> warnings, and needs to be able to distinguish actual errors from them.
> 
> > 8 errors generated.
> > src/functional/dlopen.c:39: dlsym main failed: Symbol not found: main
> > FAIL src/functional/dlopen.exe [status 1]
> > clang-11: warning: argument unused during compilation: '-rdynamic'
> > [-Wunused-command-line-argument]
> 
> This is a clang deficiency that's preventing the test from working.
> 
> > src/functional/ipc_msg.c:62: qid_ds.msg_lspid == 0 failed: got 100,
> > want 0
> > src/functional/ipc_msg.c:64: (long long)qid_ds.msg_stime == 0 failed:
> > got 6815993655711498240, want 0
> > src/functional/ipc_msg.c:67: qid_ds.msg_ctime >= t failed: got
> > 70368744177664, want >= 154502684032321054
> > src/functional/ipc_msg.c:71: qid_ds.msg_qbytes > 0 failed: got 0, want
> > > 0
> > src/functional/ipc_msg.c:76: qid_ds.msg_qnum == 1 failed: got 0, want
> > 1
> > src/functional/ipc_msg.c:77: qid_ds.msg_lspid == getpid() failed: got
> > 100, want 185819
> > src/functional/ipc_msg.c:81: msg_stime is 6815993655711498240 want <=
> > 154502684032321059
> > src/functional/ipc_msg.c:128: child exit status: 256 FAIL
> > src/functional/ipc_msg-static.exe [status 1]
> 
> This is the sysvipc bits headers issue I mentioned. Same with the sem/shm
> ones.

Passing with updated headers and qemu.

> 
> > src/functional/pthread_mutex.c:145: PTHREAD_MUTEX_ERRORCHECK relock
> > did not return EDEADLK, got deadlock
> > src/functional/pthread_mutex.c:148: PTHREAD_MUTEX_RECURSIVE relock
> did
> > not succed, got deadlock FAIL src/functional/pthread_mutex-static.exe
> > [status 1]
> > src/functional/pthread_mutex.c:145: PTHREAD_MUTEX_ERRORCHECK relock
> > did not return EDEADLK, got
> > src/functional/pthread_mutex.c:148: PTHREAD_MUTEX_RECURSIVE relock
> did
> > not succed, got deadlock FAIL src/functional/pthread_mutex.exe [status
> > 1]
> 
> This suggests broken atomics. It doesn't look like anything qemu-user
could
> cause (unless it's just failing to emulate the atomics at all).
> 
Updated QEMU to include time64 changes.  Passing now.

> > src/functional/pthread_mutex_pi.c:42:
> > pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed:
> > Function not implemented
> > src/functional/pthread_mutex_pi.c:42:
> > pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed:
> > Function not implemented
> > src/functional/pthread_mutex_pi.c:148: PTHREAD_MUTEX_ERRORCHECK
> relock
> > did not return EDEADLK, got deadlock
> > src/functional/pthread_mutex_pi.c:42:
> > pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed:
> > Function not implemented FAIL
> > src/functional/pthread_mutex_pi-static.exe [timed out]
> > src/functional/pthread_mutex_pi.c:42:
> > pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed:
> > Function not implemented
> > src/functional/pthread_mutex_pi.c:42:
> > pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed:
> > Function not implemented
> > src/functional/pthread_mutex_pi.c:148: PTHREAD_MUTEX_ERRORCHECK
> relock
> > did not return EDEADLK, got deadlock
> > src/functional/pthread_mutex_pi.c:42:
> > pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed:
> > Function not implemented
> > src/functional/pthread_mutex_pi.c:151: PTHREAD_MUTEX_RECURSIVE
> relock
> > did not succed, got deadlock
> > src/functional/pthread_mutex_pi.c:87:
> > pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed:
> > Function not implemented
> > src/functional/pthread_mutex_pi.c:24: pthread_mutex_unlock(a[0])
> > failed: Operation not permitted FAIL
> > src/functional/pthread_mutex_pi.exe [signal Segmentation fault]
> > src/functional/pthread_robust.c:39:
> > pthread_mutexattr_setrobust(&mtx_a, PTHREAD_MUTEX_ROBUST) failed:
> > (pshared==0, pi==0) Function not implemented (setting robust
> > attribute) FAIL src/functional/pthread_robust-static.exe [timed out]
> > src/functional/pthread_robust.c:39:
> > pthread_mutexattr_setrobust(&mtx_a, PTHREAD_MUTEX_ROBUST) failed:
> > (pshared==0, pi==0) Function not implemented (setting robust
> > attribute) FAIL src/functional/pthread_robust.exe [timed out]
> 
> These are all expected on qemu-user: kernel prio-inherit and robust
features
> are not emulated by qemu.
> 
> > src/functional/sem_init.c:19: sem_timedwait(s+1, &ts) failed:
> > Operation timed out
> > src/functional/sem_init.c:19: sem_timedwait(s+1, &ts) failed:
> > Operation timed out
> > src/functional/sem_init.c:19: sem_timedwait(s+1, &ts) failed:
> > Operation timed out
> > src/functional/sem_init.c:49: sem value should be 0, got 3 FAIL
> > src/functional/sem_init-static.exe [status 1]
> > src/functional/sem_init.c:19: sem_timedwait(s+1, &ts) failed:
> > Operation timed out
> > src/functional/sem_init.c:19: sem_timedwait(s+1, &ts) failed:
> > Operation timed out
> > src/functional/sem_init.c:19: sem_timedwait(s+1, &ts) failed:
> > Operation timed out
> > src/functional/sem_init.c:49: sem value should be 0, got 3 FAIL
> > src/functional/sem_init.exe [status 1]
> 
> This is probably broken atomics again.

Passed with updated headers and QEMU.

> 
> > src/functional/strptime.c:23: "%F": failed to parse "1856-07-10"
> > src/functional/strptime.c:23: "%s": failed to parse "683078400"
> > src/functional/strptime.c:47: "%z": failed to parse "+0200"
> > src/functional/strptime.c:47: "%z": failed to parse "-0530"
> > src/functional/strptime.c:47: "%z": failed to parse "-06"
> > FAIL src/functional/strptime-static.exe [status 1]
> > src/functional/strptime.c:23: "%F": failed to parse "1856-07-10"
> > src/functional/strptime.c:23: "%s": failed to parse "683078400"
> > src/functional/strptime.c:47: "%z": failed to parse "+0200"
> > src/functional/strptime.c:47: "%z": failed to parse "-0530"
> > src/functional/strptime.c:47: "%z": failed to parse "-06"
> > FAIL src/functional/strptime.exe [status 1]
> 
> These are expected, functionality musl does not yet support
(future-standard, I
> think).
> 
> > src/functional/utime.c:38: st.st_atim.tv_sec == 0 failed: 1
> > src/functional/utime.c:40: st.st_mtim.tv_sec == 0 failed: 1073741822
> > src/functional/utime.c:47: st.st_atim.tv_sec >= t failed: 0
> > src/functional/utime.c:48: st.st_mtim.tv_sec == 0 failed: 1073741823
> > src/functional/utime.c:55: st.st_mtim.tv_sec >= t failed: 1073741822
> > src/functional/utime.c:59: st.st_atim.tv_sec >= t failed: 0
> > src/functional/utime.c:60: st.st_mtim.tv_sec >= t failed: 1073741823
> > src/functional/utime.c:65: st.st_atim.tv_sec == 1LL<<32 failed: 0
> > src/functional/utime.c:66: st.st_mtim.tv_sec == 1LL<<32 failed: 0 FAIL
> > src/functional/utime-static.exe [status 1]
> > src/functional/utime.c:38: st.st_atim.tv_sec == 0 failed: 1
> > src/functional/utime.c:40: st.st_mtim.tv_sec == 0 failed: 1073741822
> > src/functional/utime.c:47: st.st_atim.tv_sec >= t failed: 0
> > src/functional/utime.c:48: st.st_mtim.tv_sec == 0 failed: 1073741823
> > src/functional/utime.c:55: st.st_mtim.tv_sec >= t failed: 1073741822
> > src/functional/utime.c:59: st.st_atim.tv_sec >= t failed: 0
> > src/functional/utime.c:60: st.st_mtim.tv_sec >= t failed: 1073741823
> > src/functional/utime.c:65: st.st_atim.tv_sec == 1LL<<32 failed: 0
> > src/functional/utime.c:66: st.st_mtim.tv_sec == 1LL<<32 failed: 0 FAIL
> > src/functional/utime.exe [status 1]
> 
> Looks like something is wrong here, possibly wrong struct kstat, or it
could be a
> qemu bug.

It seems like QEMU's TARGET_NR_utimensat needs to changes similar to those
done for clock_get/settime to account for 64bit time_t.   I made some
changes but the last 2 checks at 65 and 66 still fail.

> 
> > src/math/ucb/sqrt.h:47: bad fp exception: RN
> > sqrt(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got
> > 0 [...]
> > src/math/special/sqrt.h:74: bad fp exception: RN
> > sqrtl(0x1.9b294f88p-1015)=0x1.cad197e28e85bp-508, want INEXACT got 0
> > FAIL src/math/sqrtl.exe [status 1]
> 
> These are likely all general (not arch-specific) clang floating point
bugs. We
> should see if they also happen compiling other archs without asm versions
of
> sqrt.

Assembly version of sqrt does pass.

> 
> Alternatively it might be a qemu fpu emulation bug. I've seen this kind of
thing
> (inconsistent across arch) on other archs under qemu-user.
> 
> > src/regression/malloc-brk-fail.c:41: malloc(10000) failed (eventhough
> > 64k is available to mmap): Out of memory FAIL
> > src/regression/malloc-brk-fail-static.exe [status 1] FAIL
> > src/regression/malloc-brk-fail.exe [timed out]
> 
> This test does not seem to work on modern kernels much less qemu-user.
> 
> > src/regression/pthread-robust-detach.c:33:
> pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==0) got 38
> "Function not implemented" want 0 "No error information"
> > src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx,
> &ts) failed: (pshared==0) got 110 "Operation timed out" want 130 "Previous
> owner died"
> > src/regression/pthread-robust-detach.c:33:
> pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==1) got 38
> "Function not implemented" want 0 "No error information"
> > src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx,
> &ts) failed: (pshared==1) got 110 "Operation timed out" want 130 "Previous
> owner died"
> > FAIL src/regression/pthread-robust-detach-static.exe [status 1]
> > src/regression/pthread-robust-detach.c:33:
> pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==0) got 38
> "Function not implemented" want 0 "No error information"
> > src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx,
> &ts) failed: (pshared==0) got 110 "Operation timed out" want 130 "Previous
> owner died"
> > src/regression/pthread-robust-detach.c:33:
> pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==1) got 38
> "Function not implemented" want 0 "No error information"
> > src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx,
> &ts) failed: (pshared==1) got 110 "Operation timed out" want 130 "Previous
> owner died"
> > FAIL src/regression/pthread-robust-detach.exe [status 1]
> 
> Expected on qemu-user.
> 
> > src/regression/pthread_cond-smasher.c:140: main thread in phase 0 (0
> > threads inside), finished waiting: Operation timed out FAIL
> > src/regression/pthread_cond-smasher-static.exe [status 1]
> > src/regression/pthread_cond-smasher.c:104: thread 5 in phase 0 (0)
> > finished waiting: Operation timed out FAIL
> > src/regression/pthread_cond-smasher.exe [status 1]
> 
> These could be atomic bugs or just emulation being slow.

I bumped the timeout to 240 seconds it might have fixed these.

> 
> > src/regression/pthread_cond_wait-cancel_ignored.c:52:
> > pthread_cond_wait did not act on cancellation FAIL
> > src/regression/pthread_cond_wait-cancel_ignored-static.exe [status 1]
> > src/regression/pthread_once-deadlock.c:41: sem_timedwait(s,&ts)
> > failed: Operation timed out
> > src/regression/pthread_once-deadlock.c:44: pthread_once deadlocked
> > FAIL src/regression/pthread_once-deadlock-static.exe [status 1]
> 
> These are definitely atomic bugs (either in the arch bits or in qemu).

Also fixed, time64 change to QEMU was key to correcting a lot of these
issues.

> 
> Rich

Hi,

Updated libc-test REPORT and musl patch are attached.  I had to update QEMU,
pulling in 64bit time changes and routing the system calls to those
interfaces.  The routing of the syscalls to the 64bit interfaces is not
committed but the patch for it is here:
https://github.com/qemu/qemu/commit/b792b073e1042ca2668adb57142efba838620329

The Hexagon branch of musl is here:
https://github.com/quic/musl/tree/hexagon

The sqrt routine I added is from compiler-rt.builtins and it is more
involved than other target's versions.  I can see how sqrt might be excluded
from the c-library to keep the target specific complexity to a minimum.

Thanks,

[-- Attachment #2: winmail.dat --]
[-- Type: application/ms-tnef, Size: 277840 bytes --]

^ permalink raw reply	[flat|nested] 43+ messages in thread

* Re: [musl] Hexagon DSP support
  2020-04-30 22:44             ` sidneym
@ 2020-04-30 23:51               ` Rich Felker
  2020-05-05 23:37                 ` sidneym
  0 siblings, 1 reply; 43+ messages in thread
From: Rich Felker @ 2020-04-30 23:51 UTC (permalink / raw)
  To: sidneym; +Cc: musl

On Thu, Apr 30, 2020 at 05:44:07PM -0500, sidneym@codeaurora.org wrote:
> > -----Original Message-----
> > From: 'Rich Felker' <dalias@libc.org>
> > Sent: Wednesday, April 15, 2020 2:30 PM
> > To: sidneym@codeaurora.org
> > Cc: musl@lists.openwall.com
> > Subject: Re: [musl] Hexagon DSP support
> > 
> > On Wed, Apr 15, 2020 at 02:12:12PM -0500, sidneym@codeaurora.org wrote:
> > > src/api/ftw.c:44:1: error: switch condition has boolean value
> > > [-Werror,-Wswitch-bool]
> > 
> > Compiling libc-test with -Werror is invalid. It necessarily must produce
> some
> > warnings, and needs to be able to distinguish actual errors from them.
> > 
> > > 8 errors generated.
> > > src/functional/dlopen.c:39: dlsym main failed: Symbol not found: main
> > > FAIL src/functional/dlopen.exe [status 1]
> > > clang-11: warning: argument unused during compilation: '-rdynamic'
> > > [-Wunused-command-line-argument]
> > 
> > This is a clang deficiency that's preventing the test from working.
> > 
> > > src/functional/ipc_msg.c:62: qid_ds.msg_lspid == 0 failed: got 100,
> > > want 0
> > > src/functional/ipc_msg.c:64: (long long)qid_ds.msg_stime == 0 failed:
> > > got 6815993655711498240, want 0
> > > src/functional/ipc_msg.c:67: qid_ds.msg_ctime >= t failed: got
> > > 70368744177664, want >= 154502684032321054
> > > src/functional/ipc_msg.c:71: qid_ds.msg_qbytes > 0 failed: got 0, want
> > > > 0
> > > src/functional/ipc_msg.c:76: qid_ds.msg_qnum == 1 failed: got 0, want
> > > 1
> > > src/functional/ipc_msg.c:77: qid_ds.msg_lspid == getpid() failed: got
> > > 100, want 185819
> > > src/functional/ipc_msg.c:81: msg_stime is 6815993655711498240 want <=
> > > 154502684032321059
> > > src/functional/ipc_msg.c:128: child exit status: 256 FAIL
> > > src/functional/ipc_msg-static.exe [status 1]
> > 
> > This is the sysvipc bits headers issue I mentioned. Same with the sem/shm
> > ones.
> 
> Passing with updated headers and qemu.

Looking at https://github.com/quic/musl/commit/b710ae08dfa8c0841abed44d55eee5e042321bd6
there are new problems:

- Member mode in struct ipc_perm has wrong type. It must be mode_t.
  This can be fixed just by removing the padding. But is there a
  reason you're not using the generic arch-agnostic definition on both
  the kernel and libc side?

- The definitions in bits/msg.h, bits/sem.h, and bits/shm.h are not
  time64-compatible. In fact bits/sem.h is a regression; you had it
  right before and broke it.

- The definition in bits/stat.h is using the wrong types (you need to
  use libc type names for all the members; this is a policy
  requirement to ensure that none inadvertently mismatch). Note that
  there's not even really a need to use an arch-specific header here
  anymore; the kernel definition comes from arch/hexagon/kstat.h and
  the bits/stat.h can just be copied from aarch64 or something else
  with a clean layout.

Also math asm like sqrt.S is not acceptable for upstream.
Arch-specific math files should only be for use of fpu instructions
that perform the operation without the need for any high level flow
control.

> > > src/functional/pthread_mutex.c:145: PTHREAD_MUTEX_ERRORCHECK relock
> > > did not return EDEADLK, got deadlock
> > > src/functional/pthread_mutex.c:148: PTHREAD_MUTEX_RECURSIVE relock
> > did
> > > not succed, got deadlock FAIL src/functional/pthread_mutex-static.exe
> > > [status 1]
> > > src/functional/pthread_mutex.c:145: PTHREAD_MUTEX_ERRORCHECK relock
> > > did not return EDEADLK, got
> > > src/functional/pthread_mutex.c:148: PTHREAD_MUTEX_RECURSIVE relock
> > did
> > > not succed, got deadlock FAIL src/functional/pthread_mutex.exe [status
> > > 1]
> > 
> > This suggests broken atomics. It doesn't look like anything qemu-user
> could
> > cause (unless it's just failing to emulate the atomics at all).
> > 
> Updated QEMU to include time64 changes.  Passing now.

It should not be necessary to update qemu for time64 in order for this
to work. Any change you made to qemu to make this work is almost
certainly wrong. According to my reading of the upstream kernel, there
is an existing stable user-kernel syscall ABI for hexagon, so you
can't change any of the existing types or behavior of any of the
existing syscalls.

Looking at your port, I think I've found the real core problem. In:

https://github.com/quic/musl/blob/b710ae08dfa8c0841abed44d55eee5e042321bd6/arch/hexagon/bits/syscall.h.in

I don't see any of the time64 syscalls. Having them defined is
absolutely mandatory for an arch where the unadorned syscalls do not
use 64-bit time_t. If you add them and revert all the incorrect
changes, I think everything will work.

> > Looks like something is wrong here, possibly wrong struct kstat, or it
> could be a
> > qemu bug.
> 
> It seems like QEMU's TARGET_NR_utimensat needs to changes similar to those
> done for clock_get/settime to account for 64bit time_t.   I made some
> changes but the last 2 checks at 65 and 66 still fail.

No. It does not need any change, and any change to it is wrong. It is
implementing an existing ABI that's immutable and that's fine. What
needs to change is that your syscall.h.in needs to define the values
for the time64 syscalls. This will inform musl that the "plain"
syscalls use 32-bit time_t and get you a correct build. Right now you
just have a badly broken build where you've balanced brokenness in one
place with corresponding brokenness in other places until the right
thing comes out.

> > > src/math/ucb/sqrt.h:47: bad fp exception: RN
> > > sqrt(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got
> > > 0 [...]
> > > src/math/special/sqrt.h:74: bad fp exception: RN
> > > sqrtl(0x1.9b294f88p-1015)=0x1.cad197e28e85bp-508, want INEXACT got 0
> > > FAIL src/math/sqrtl.exe [status 1]
> > 
> > These are likely all general (not arch-specific) clang floating point
> bugs. We
> > should see if they also happen compiling other archs without asm versions
> of
> > sqrt.
> 
> Assembly version of sqrt does pass.

Yes but writing a large complex function in asm is not reviewable or
maintainable.

Rich

^ permalink raw reply	[flat|nested] 43+ messages in thread

* Re: [musl] Hexagon DSP support
  2020-04-30 23:51               ` Rich Felker
@ 2020-05-05 23:37                 ` sidneym
  2020-05-06  0:59                   ` Rich Felker
  0 siblings, 1 reply; 43+ messages in thread
From: sidneym @ 2020-05-05 23:37 UTC (permalink / raw)
  To: Rich Felker; +Cc: musl

[-- Attachment #1: Type: text/plain, Size: 6952 bytes --]

On 2020-04-30 18:51, Rich Felker wrote:
> On Thu, Apr 30, 2020 at 05:44:07PM -0500, sidneym@codeaurora.org wrote:
>> > -----Original Message-----
>> > From: 'Rich Felker' <dalias@libc.org>
>> > Sent: Wednesday, April 15, 2020 2:30 PM
>> > To: sidneym@codeaurora.org
>> > Cc: musl@lists.openwall.com
>> > Subject: Re: [musl] Hexagon DSP support
>> >
>> > On Wed, Apr 15, 2020 at 02:12:12PM -0500, sidneym@codeaurora.org
> wrote:
>> > > src/api/ftw.c:44:1: error: switch condition has boolean value
>> > > [-Werror,-Wswitch-bool]
>> >
>> > Compiling libc-test with -Werror is invalid. It necessarily must
> produce
>> some
>> > warnings, and needs to be able to distinguish actual errors from them.
>> >
>> > > 8 errors generated.
>> > > src/functional/dlopen.c:39: dlsym main failed: Symbol not found:
> main
>> > > FAIL src/functional/dlopen.exe [status 1]
>> > > clang-11: warning: argument unused during compilation: '-rdynamic'
>> > > [-Wunused-command-line-argument]
>> >
>> > This is a clang deficiency that's preventing the test from working.
>> >
>> > > src/functional/ipc_msg.c:62: qid_ds.msg_lspid == 0 failed: got 100,
>> > > want 0
>> > > src/functional/ipc_msg.c:64: (long long)qid_ds.msg_stime == 0
> failed:
>> > > got 6815993655711498240, want 0
>> > > src/functional/ipc_msg.c:67: qid_ds.msg_ctime >= t failed: got
>> > > 70368744177664, want >= 154502684032321054
>> > > src/functional/ipc_msg.c:71: qid_ds.msg_qbytes > 0 failed: got 0,
> want
>> > > > 0
>> > > src/functional/ipc_msg.c:76: qid_ds.msg_qnum == 1 failed: got 0,
> want
>> > > 1
>> > > src/functional/ipc_msg.c:77: qid_ds.msg_lspid == getpid() failed:
> got
>> > > 100, want 185819
>> > > src/functional/ipc_msg.c:81: msg_stime is 6815993655711498240 want
> <=
>> > > 154502684032321059
>> > > src/functional/ipc_msg.c:128: child exit status: 256 FAIL
>> > > src/functional/ipc_msg-static.exe [status 1]
>> >
>> > This is the sysvipc bits headers issue I mentioned. Same with the
> sem/shm
>> > ones.
>> 
>> Passing with updated headers and qemu.
> 
> Looking at
> https://github.com/quic/musl/commit/b710ae08dfa8c0841abed44d55eee5e042321b
> d6
> there are new problems:
> 
> - Member mode in struct ipc_perm has wrong type. It must be mode_t.
>   This can be fixed just by removing the padding. But is there a
>   reason you're not using the generic arch-agnostic definition on both
>   the kernel and libc side?

Updated that type

> 
> - The definitions in bits/msg.h, bits/sem.h, and bits/shm.h are not
>   time64-compatible. In fact bits/sem.h is a regression; you had it
>   right before and broke it.
As you point out below the core of the problem was the missing time64
calls.  I've updated the structures to use what I hope or the correct 
types.

> 
> - The definition in bits/stat.h is using the wrong types (you need to
>   use libc type names for all the members; this is a policy
>   requirement to ensure that none inadvertently mismatch). Note that
>   there's not even really a need to use an arch-specific header here
>   anymore; the kernel definition comes from arch/hexagon/kstat.h and
>   the bits/stat.h can just be copied from aarch64 or something else
>   with a clean layout.

I used OpenRISC's stat.h.

> 
> Also math asm like sqrt.S is not acceptable for upstream.
> Arch-specific math files should only be for use of fpu instructions
> that perform the operation without the need for any high level flow
> control.
This is what I expected and I removed the file.

> 
>> > > src/functional/pthread_mutex.c:145: PTHREAD_MUTEX_ERRORCHECK relock
>> > > did not return EDEADLK, got deadlock
>> > > src/functional/pthread_mutex.c:148: PTHREAD_MUTEX_RECURSIVE relock
>> > did
>> > > not succed, got deadlock FAIL
> src/functional/pthread_mutex-static.exe
>> > > [status 1]
>> > > src/functional/pthread_mutex.c:145: PTHREAD_MUTEX_ERRORCHECK relock
>> > > did not return EDEADLK, got
>> > > src/functional/pthread_mutex.c:148: PTHREAD_MUTEX_RECURSIVE relock
>> > did
>> > > not succed, got deadlock FAIL src/functional/pthread_mutex.exe
> [status
>> > > 1]
>> >
>> > This suggests broken atomics. It doesn't look like anything qemu-user
>> could
>> > cause (unless it's just failing to emulate the atomics at all).
>> >
>> Updated QEMU to include time64 changes.  Passing now.
> 
> It should not be necessary to update qemu for time64 in order for this
> to work. Any change you made to qemu to make this work is almost
> certainly wrong. According to my reading of the upstream kernel, there
> is an existing stable user-kernel syscall ABI for hexagon, so you
> can't change any of the existing types or behavior of any of the
> existing syscalls.
> 
> Looking at your port, I think I've found the real core problem. In:
> 
> https://github.com/quic/musl/blob/b710ae08dfa8c0841abed44d55eee5e042321bd6
> /arch/hexagon/bits/syscall.h.in
> 
> I don't see any of the time64 syscalls. Having them defined is
> absolutely mandatory for an arch where the unadorned syscalls do not
> use 64-bit time_t. If you add them and revert all the incorrect
> changes, I think everything will work.

Adding those calls helped and cleared up a lot of confusion on my part.


> 
>> > Looks like something is wrong here, possibly wrong struct kstat, or it
>> could be a
>> > qemu bug.
>> 
>> It seems like QEMU's TARGET_NR_utimensat needs to changes similar to
> those
>> done for clock_get/settime to account for 64bit time_t.   I made some
>> changes but the last 2 checks at 65 and 66 still fail.
> 
> No. It does not need any change, and any change to it is wrong. It is
> implementing an existing ABI that's immutable and that's fine. What
> needs to change is that your syscall.h.in needs to define the values
> for the time64 syscalls. This will inform musl that the "plain"
> syscalls use 32-bit time_t and get you a correct build. Right now you
> just have a badly broken build where you've balanced brokenness in one
> place with corresponding brokenness in other places until the right
> thing comes out.

In QEMU I have had to update hexagon/target_structs.h (target_shmid_ds 
and target_semid64_ds) to reflect the size of time_t from abi_ulong 
types to abi_ullong types.

I've attached a new REPORT and the code changes are here:
https://github.com/quic/musl/compare/hexagon

Thanks for your help.

> 
>> > > src/math/ucb/sqrt.h:47: bad fp exception: RN
>> > > sqrt(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT
> got
>> > > 0 [...]
>> > > src/math/special/sqrt.h:74: bad fp exception: RN
>> > > sqrtl(0x1.9b294f88p-1015)=0x1.cad197e28e85bp-508, want INEXACT got 0
>> > > FAIL src/math/sqrtl.exe [status 1]
>> >
>> > These are likely all general (not arch-specific) clang floating point
>> bugs. We
>> > should see if they also happen compiling other archs without asm
> versions
>> of
>> > sqrt.
>> 
>> Assembly version of sqrt does pass.
> 
> Yes but writing a large complex function in asm is not reviewable or
> maintainable.
> 
> Rich

[-- Attachment #2: REPORT --]
[-- Type: text/plain, Size: 253799 bytes --]

src/api/ftw.c:44:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISBLK(0))
^~~~~~~~~~~~~
src/api/ftw.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/ftw.c:45:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISCHR(0))
^~~~~~~~~~~~~
src/api/ftw.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/ftw.c:46:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISDIR(0))
^~~~~~~~~~~~~
src/api/ftw.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/ftw.c:47:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISFIFO(0))
^~~~~~~~~~~~~~
src/api/ftw.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/ftw.c:48:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISREG(0))
^~~~~~~~~~~~~
src/api/ftw.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/ftw.c:49:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISLNK(0))
^~~~~~~~~~~~~
src/api/ftw.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/ftw.c:50:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISSOCK(0))
^~~~~~~~~~~~~~
src/api/ftw.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
7 errors generated.
src/api/iso646.c:8:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(0 not_eq 1)
^~~~~~~~~~~~~
src/api/iso646.c:2:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/iso646.c:9:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(0 and 1)
^~~~~~~~~~
src/api/iso646.c:2:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/iso646.c:10:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(0 or 1)
^~~~~~~~~
src/api/iso646.c:2:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/iso646.c:14:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(not 0)
^~~~~~~~
src/api/iso646.c:2:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
4 errors generated.
FAIL src/api/main.exe [status 1]
clang-11: error: no such file or directory: 'src/api/ftw.o'
clang-11: error: no such file or directory: 'src/api/iso646.o'
clang-11: error: no such file or directory: 'src/api/stdlib.o'
clang-11: error: no such file or directory: 'src/api/sys_ipc.o'
clang-11: error: no such file or directory: 'src/api/sys_sem.o'
clang-11: error: no such file or directory: 'src/api/sys_shm.o'
clang-11: error: no such file or directory: 'src/api/sys_stat.o'
clang-11: error: no such file or directory: 'src/api/sys_wait.o'
clang-11: error: no such file or directory: 'src/api/unistd.o'
src/api/stdlib.c:20:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(WIFEXITED(0))
^~~~~~~~~~~~~~~
src/api/stdlib.c:4:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/stdlib.c:21:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(WIFSIGNALED(0))
^~~~~~~~~~~~~~~~~
src/api/stdlib.c:4:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/stdlib.c:22:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(WIFSTOPPED(0))
^~~~~~~~~~~~~~~~
src/api/stdlib.c:4:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
3 errors generated.
src/api/sys_ipc.c:13:1: error: initializing 'uid_t *' (aka 'unsigned int *') with an expression of type 'int *' converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
F(uid_t,uid)
^~~~~~~~~~~~
src/api/sys_ipc.c:3:20: note: expanded from macro 'F'
#define F(t,n) {t *y = &x.n;}
                   ^   ~~~~
src/api/sys_ipc.c:14:1: error: initializing 'gid_t *' (aka 'unsigned int *') with an expression of type 'int *' converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
F(gid_t,gid)
^~~~~~~~~~~~
src/api/sys_ipc.c:3:20: note: expanded from macro 'F'
#define F(t,n) {t *y = &x.n;}
                   ^   ~~~~
src/api/sys_ipc.c:15:1: error: initializing 'uid_t *' (aka 'unsigned int *') with an expression of type 'int *' converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
F(uid_t,cuid)
^~~~~~~~~~~~~
src/api/sys_ipc.c:3:20: note: expanded from macro 'F'
#define F(t,n) {t *y = &x.n;}
                   ^   ~~~~
src/api/sys_ipc.c:16:1: error: initializing 'gid_t *' (aka 'unsigned int *') with an expression of type 'int *' converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
F(gid_t,cgid)
^~~~~~~~~~~~~
src/api/sys_ipc.c:3:20: note: expanded from macro 'F'
#define F(t,n) {t *y = &x.n;}
                   ^   ~~~~
4 errors generated.
src/api/sys_sem.c:41:1: error: initializing 'uid_t *' (aka 'unsigned int *') with an expression of type 'int *' converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
F(uid_t,uid)
^~~~~~~~~~~~
src/api/sys_sem.c:3:20: note: expanded from macro 'F'
#define F(t,n) {t *y = &x.n;}
                   ^   ~~~~
src/api/sys_sem.c:42:1: error: initializing 'gid_t *' (aka 'unsigned int *') with an expression of type 'int *' converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
F(gid_t,gid)
^~~~~~~~~~~~
src/api/sys_sem.c:3:20: note: expanded from macro 'F'
#define F(t,n) {t *y = &x.n;}
                   ^   ~~~~
src/api/sys_sem.c:43:1: error: initializing 'uid_t *' (aka 'unsigned int *') with an expression of type 'int *' converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
F(uid_t,cuid)
^~~~~~~~~~~~~
src/api/sys_sem.c:3:20: note: expanded from macro 'F'
#define F(t,n) {t *y = &x.n;}
                   ^   ~~~~
src/api/sys_sem.c:44:1: error: initializing 'gid_t *' (aka 'unsigned int *') with an expression of type 'int *' converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
F(gid_t,cgid)
^~~~~~~~~~~~~
src/api/sys_sem.c:3:20: note: expanded from macro 'F'
#define F(t,n) {t *y = &x.n;}
                   ^   ~~~~
4 errors generated.
src/api/sys_shm.c:36:1: error: initializing 'uid_t *' (aka 'unsigned int *') with an expression of type 'int *' converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
F(uid_t,uid)
^~~~~~~~~~~~
src/api/sys_shm.c:3:20: note: expanded from macro 'F'
#define F(t,n) {t *y = &x.n;}
                   ^   ~~~~
src/api/sys_shm.c:37:1: error: initializing 'gid_t *' (aka 'unsigned int *') with an expression of type 'int *' converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
F(gid_t,gid)
^~~~~~~~~~~~
src/api/sys_shm.c:3:20: note: expanded from macro 'F'
#define F(t,n) {t *y = &x.n;}
                   ^   ~~~~
src/api/sys_shm.c:38:1: error: initializing 'uid_t *' (aka 'unsigned int *') with an expression of type 'int *' converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
F(uid_t,cuid)
^~~~~~~~~~~~~
src/api/sys_shm.c:3:20: note: expanded from macro 'F'
#define F(t,n) {t *y = &x.n;}
                   ^   ~~~~
src/api/sys_shm.c:39:1: error: initializing 'gid_t *' (aka 'unsigned int *') with an expression of type 'int *' converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
F(gid_t,cgid)
^~~~~~~~~~~~~
src/api/sys_shm.c:3:20: note: expanded from macro 'F'
#define F(t,n) {t *y = &x.n;}
                   ^   ~~~~
4 errors generated.
src/api/sys_stat.c:68:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISBLK(0))
^~~~~~~~~~~~~
src/api/sys_stat.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_stat.c:69:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISCHR(0))
^~~~~~~~~~~~~
src/api/sys_stat.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_stat.c:70:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISDIR(0))
^~~~~~~~~~~~~
src/api/sys_stat.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_stat.c:71:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISFIFO(0))
^~~~~~~~~~~~~~
src/api/sys_stat.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_stat.c:72:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISREG(0))
^~~~~~~~~~~~~
src/api/sys_stat.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_stat.c:73:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISLNK(0))
^~~~~~~~~~~~~
src/api/sys_stat.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_stat.c:74:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISSOCK(0))
^~~~~~~~~~~~~~
src/api/sys_stat.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
7 errors generated.
src/api/sys_wait.c:11:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(WIFEXITED(0))
^~~~~~~~~~~~~~~
src/api/sys_wait.c:4:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_wait.c:12:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(WIFSIGNALED(0))
^~~~~~~~~~~~~~~~~
src/api/sys_wait.c:4:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_wait.c:13:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(WIFSTOPPED(0))
^~~~~~~~~~~~~~~~
src/api/sys_wait.c:4:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_wait.c:20:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(WIFCONTINUED(0))
^~~~~~~~~~~~~~~~~~
src/api/sys_wait.c:4:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
4 errors generated.
src/api/unistd.c:87:3: error: use of undeclared identifier '_CS_POSIX_V7_THREADS_CFLAGS'
C(_CS_POSIX_V7_THREADS_CFLAGS)
  ^
src/api/unistd.c:88:3: error: use of undeclared identifier '_CS_POSIX_V7_THREADS_LDFLAGS'
C(_CS_POSIX_V7_THREADS_LDFLAGS)
  ^
src/api/unistd.c:117:3: error: use of undeclared identifier '_PC_TIMESTAMP_RESOLUTION'
C(_PC_TIMESTAMP_RESOLUTION)
  ^
src/api/unistd.c:238:3: error: use of undeclared identifier '_SC_XOPEN_UUCP'
C(_SC_XOPEN_UUCP)
  ^
src/api/unistd.c:87:3: error: use of undeclared identifier '_CS_POSIX_V7_THREADS_CFLAGS'
C(_CS_POSIX_V7_THREADS_CFLAGS)
  ^
src/api/unistd.c:88:3: error: use of undeclared identifier '_CS_POSIX_V7_THREADS_LDFLAGS'
C(_CS_POSIX_V7_THREADS_LDFLAGS)
  ^
src/api/unistd.c:117:3: error: use of undeclared identifier '_PC_TIMESTAMP_RESOLUTION'
C(_PC_TIMESTAMP_RESOLUTION)
  ^
src/api/unistd.c:238:3: error: use of undeclared identifier '_SC_XOPEN_UUCP'
C(_SC_XOPEN_UUCP)
  ^
8 errors generated.
src/functional/dlopen.c:39: dlsym main failed: Symbol not found: main
FAIL src/functional/dlopen.exe [status 1]
clang-11: warning: argument unused during compilation: '-rdynamic' [-Wunused-command-line-argument]
src/functional/ipc_msg.c:63: qid_ds.msg_qnum == 0 failed: got 16384, want 0
src/functional/ipc_msg.c:67: (long long)qid_ds.msg_rtime == 0 failed: got 6823500725968961536, want 0
src/functional/ipc_msg.c:69: qid_ds.msg_ctime >= t failed: got 69713, want >= 1588720066
src/functional/ipc_msg.c:73: qid_ds.msg_qbytes > 0 failed: got 0, want > 0
src/functional/ipc_msg.c:78: qid_ds.msg_qnum == 1 failed: got 16384, want 1
src/functional/ipc_msg.c:79: qid_ds.msg_lspid == getpid() failed: got 0, want 240818
src/functional/ipc_msg.c:81: msg_stime is 0 want >= 1588720066
src/functional/ipc_msg.c:130: child exit status: 256
FAIL src/functional/ipc_msg-static.exe [status 1]
src/functional/ipc_msg.c:63: qid_ds.msg_qnum == 0 failed: got 16384, want 0
src/functional/ipc_msg.c:67: (long long)qid_ds.msg_rtime == 0 failed: got 6823500725968961536, want 0
src/functional/ipc_msg.c:69: qid_ds.msg_ctime >= t failed: got 0, want >= 1588720066
src/functional/ipc_msg.c:73: qid_ds.msg_qbytes > 0 failed: got 0, want > 0
src/functional/ipc_msg.c:78: qid_ds.msg_qnum == 1 failed: got 16384, want 1
src/functional/ipc_msg.c:79: qid_ds.msg_lspid == getpid() failed: got 0, want 240786
src/functional/ipc_msg.c:81: msg_stime is 0 want >= 1588720066
src/functional/ipc_msg.c:130: child exit status: 256
FAIL src/functional/ipc_msg.exe [status 1]
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:87: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:87: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:108: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:108: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
FAIL src/functional/pthread_mutex_pi-static.exe [status 1]
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:87: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:87: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:108: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:108: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
FAIL src/functional/pthread_mutex_pi.exe [status 1]
src/functional/pthread_robust.c:39: pthread_mutexattr_setrobust(&mtx_a, PTHREAD_MUTEX_ROBUST) failed: (pshared==0, pi==0) Function not implemented (setting robust attribute)
FAIL src/functional/pthread_robust-static.exe [timed out]
src/functional/pthread_robust.c:39: pthread_mutexattr_setrobust(&mtx_a, PTHREAD_MUTEX_ROBUST) failed: (pshared==0, pi==0) Function not implemented (setting robust attribute)
FAIL src/functional/pthread_robust.exe [timed out]
src/functional/sscanf.c:73:9: warning: magnitude of floating-point constant too large for type 'double'; maximum is 1.7976931348623157E+308 [-Wliteral-range]
        TEST_F(1.234e1234);
               ^
src/functional/sscanf.c:73:9: warning: magnitude of floating-point constant too large for type 'double'; maximum is 1.7976931348623157E+308 [-Wliteral-range]
src/functional/sscanf.c:74:9: warning: magnitude of floating-point constant too small for type 'double'; minimum is 4.9406564584124654E-324 [-Wliteral-range]
        TEST_F(1.234e-1234);
               ^
src/functional/sscanf.c:74:9: warning: magnitude of floating-point constant too small for type 'double'; minimum is 4.9406564584124654E-324 [-Wliteral-range]
src/functional/sscanf.c:75:9: warning: magnitude of floating-point constant too large for type 'double'; maximum is 1.7976931348623157E+308 [-Wliteral-range]
        TEST_F(1.234e56789);
               ^
src/functional/sscanf.c:75:9: warning: magnitude of floating-point constant too large for type 'double'; maximum is 1.7976931348623157E+308 [-Wliteral-range]
src/functional/sscanf.c:76:9: warning: magnitude of floating-point constant too small for type 'double'; minimum is 4.9406564584124654E-324 [-Wliteral-range]
        TEST_F(1.234e-56789);
               ^
src/functional/sscanf.c:76:9: warning: magnitude of floating-point constant too small for type 'double'; minimum is 4.9406564584124654E-324 [-Wliteral-range]
8 warnings generated.
src/functional/strptime.c:23: "%F": failed to parse "1856-07-10"
src/functional/strptime.c:23: "%s": failed to parse "683078400"
src/functional/strptime.c:47: "%z": failed to parse "+0200"
src/functional/strptime.c:47: "%z": failed to parse "-0530"
src/functional/strptime.c:47: "%z": failed to parse "-06"
FAIL src/functional/strptime-static.exe [status 1]
src/functional/strptime.c:23: "%F": failed to parse "1856-07-10"
src/functional/strptime.c:23: "%s": failed to parse "683078400"
src/functional/strptime.c:47: "%z": failed to parse "+0200"
src/functional/strptime.c:47: "%z": failed to parse "-0530"
src/functional/strptime.c:47: "%z": failed to parse "-06"
FAIL src/functional/strptime.exe [status 1]
src/functional/utime.c:63: futimens(fd, ((struct timespec[2]){{.tv_sec=1LL<<32},{.tv_sec=1LL<<32}})) == 0 failed: Not supported
FAIL src/functional/utime-static.exe [status 1]
src/functional/utime.c:63: futimens(fd, ((struct timespec[2]){{.tv_sec=1LL<<32},{.tv_sec=1LL<<32}})) == 0 failed: Not supported
FAIL src/functional/utime.exe [status 1]
X src/math/special/acosh.h:9: RN acosh(0x1.001f1c62cf304p+0) want 0x1.f8d125ff71ccp-6 got 0x1.f8d125ff71cc2p-6 ulperr 1.853 = 0x1p+1 + -0x1.2d785ap-3
X src/math/special/acosh.h:10: RN acosh(0x1.00788c223616fp+0) want 0x1.f0cb8ee812621p-5 got 0x1.f0cb8ee812623p-5 ulperr 1.724 = 0x1p+1 + -0x1.1b0c1ap-2
X src/math/special/acosh.h:11: RN acosh(0x1.007b7a37c7606p+0) want 0x1.f6cb68859ae3p-5 got 0x1.f6cb68859ae2ep-5 ulperr -1.855 = -0x1p+1 + 0x1.280488p-3
X src/math/special/acosh.h:12: RN acosh(0x1.01d173033243cp+0) want 0x1.e7e1b18d99376p-4 got 0x1.e7e1b18d99378p-4 ulperr 1.930 = 0x1p+1 + -0x1.1f3d3ep-4
X src/math/special/acosh.h:13: RN acosh(0x1.01d8f20e90409p+0) want 0x1.ebca3eea5cda5p-4 got 0x1.ebca3eea5cda3p-4 ulperr -1.652 = -0x1p+1 + 0x1.648602p-2
X src/math/special/acosh.h:14: RN acosh(0x1.01ef6122e68bep+0) want 0x1.f74df150afc94p-4 got 0x1.f74df150afc92p-4 ulperr -1.762 = -0x1p+1 + 0x1.e79556p-3
X src/math/special/acosh.h:15: RN acosh(0x1.06822faf07879p+0) want 0x1.ccd73cbc4af78p-3 got 0x1.ccd73cbc4af7ap-3 ulperr 1.674 = 0x1p+1 + -0x1.4df79ep-2
X src/math/special/acosh.h:17: RN acosh(0x1.069d65411ec51p+0) want 0x1.d0928b08facbap-3 got 0x1.d0928b08facbcp-3 ulperr 1.785 = 0x1p+1 + -0x1.b83338p-3
X src/math/special/acosh.h:18: RN acosh(0x1.071d6b2713d08p+0) want 0x1.e1bc6a6c345fdp-3 got 0x1.e1bc6a6c345ffp-3 ulperr 1.818 = 0x1p+1 + -0x1.74a04ep-3
X src/math/special/acosh.h:19: RN acosh(0x1.0728405f5140cp+0) want 0x1.e328ebe92b32cp-3 got 0x1.e328ebe92b32ep-3 ulperr 1.790 = 0x1p+1 + -0x1.ae89ap-3
X src/math/special/acosh.h:20: RN acosh(0x1.07bd2c5c01bcbp+0) want 0x1.f6513c44c131p-3 got 0x1.f6513c44c1312p-3 ulperr 1.719 = 0x1p+1 + -0x1.203932p-2
X src/math/special/acosh.h:21: RN acosh(0x1.1aae7c452c859p+0) want 0x1.cf8d69288e386p-2 got 0x1.cf8d69288e384p-2 ulperr -1.723 = -0x1p+1 + 0x1.1b325ap-2
X src/math/special/acosh.h:23: RN acosh(0x1.1b50764626f1ep+0) want 0x1.d4ec67c71794p-2 got 0x1.d4ec67c717942p-2 ulperr 1.738 = 0x1p+1 + -0x1.0c09dap-2
src/math/special/acosh.h:9: RN acoshl(0x1.001f1c62cf304p+0) want 0x1.f8d125ff71ccp-6 got 0x1.f8d125ff71cc2p-6 ulperr 1.853 = 0x1p+1 + -0x1.2d785ap-3
src/math/special/acosh.h:10: RN acoshl(0x1.00788c223616fp+0) want 0x1.f0cb8ee812621p-5 got 0x1.f0cb8ee812623p-5 ulperr 1.724 = 0x1p+1 + -0x1.1b0c1ap-2
src/math/special/acosh.h:11: RN acoshl(0x1.007b7a37c7606p+0) want 0x1.f6cb68859ae3p-5 got 0x1.f6cb68859ae2ep-5 ulperr -1.855 = -0x1p+1 + 0x1.280488p-3
src/math/special/acosh.h:12: RN acoshl(0x1.01d173033243cp+0) want 0x1.e7e1b18d99376p-4 got 0x1.e7e1b18d99378p-4 ulperr 1.930 = 0x1p+1 + -0x1.1f3d3ep-4
src/math/special/acosh.h:13: RN acoshl(0x1.01d8f20e90409p+0) want 0x1.ebca3eea5cda5p-4 got 0x1.ebca3eea5cda3p-4 ulperr -1.652 = -0x1p+1 + 0x1.648602p-2
src/math/special/acosh.h:14: RN acoshl(0x1.01ef6122e68bep+0) want 0x1.f74df150afc94p-4 got 0x1.f74df150afc92p-4 ulperr -1.762 = -0x1p+1 + 0x1.e79556p-3
src/math/special/acosh.h:15: RN acoshl(0x1.06822faf07879p+0) want 0x1.ccd73cbc4af78p-3 got 0x1.ccd73cbc4af7ap-3 ulperr 1.674 = 0x1p+1 + -0x1.4df79ep-2
src/math/special/acosh.h:17: RN acoshl(0x1.069d65411ec51p+0) want 0x1.d0928b08facbap-3 got 0x1.d0928b08facbcp-3 ulperr 1.785 = 0x1p+1 + -0x1.b83338p-3
src/math/special/acosh.h:18: RN acoshl(0x1.071d6b2713d08p+0) want 0x1.e1bc6a6c345fdp-3 got 0x1.e1bc6a6c345ffp-3 ulperr 1.818 = 0x1p+1 + -0x1.74a04ep-3
src/math/special/acosh.h:19: RN acoshl(0x1.0728405f5140cp+0) want 0x1.e328ebe92b32cp-3 got 0x1.e328ebe92b32ep-3 ulperr 1.790 = 0x1p+1 + -0x1.ae89ap-3
src/math/special/acosh.h:20: RN acoshl(0x1.07bd2c5c01bcbp+0) want 0x1.f6513c44c131p-3 got 0x1.f6513c44c1312p-3 ulperr 1.719 = 0x1p+1 + -0x1.203932p-2
src/math/special/acosh.h:21: RN acoshl(0x1.1aae7c452c859p+0) want 0x1.cf8d69288e386p-2 got 0x1.cf8d69288e384p-2 ulperr -1.723 = -0x1p+1 + 0x1.1b325ap-2
src/math/special/acosh.h:23: RN acoshl(0x1.1b50764626f1ep+0) want 0x1.d4ec67c71794p-2 got 0x1.d4ec67c717942p-2 ulperr 1.738 = 0x1p+1 + -0x1.0c09dap-2
FAIL src/math/acoshl.exe [status 1]
X src/math/special/asinh.h:7: RN asinh(0x1.fbdd0eedf8143p-3) want 0x1.f6cc20d7a594ap-3 got 0x1.f6cc20d7a594cp-3 ulperr 1.513 = 0x1p+1 + -0x1.f327a8p-2
X src/math/special/asinh.h:8: RN asinh(0x1.df2723491f88fp-3) want 0x1.dae2c8444900cp-3 got 0x1.dae2c8444900ap-3 ulperr -1.551 = -0x1p+1 + 0x1.cb8b86p-2
X src/math/special/asinh.h:9: RN asinh(0x1.ef675c6541305p-3) want 0x1.eab20432c9598p-3 got 0x1.eab20432c959ap-3 ulperr 1.568 = 0x1p+1 + -0x1.ba9e34p-2
X src/math/special/asinh.h:10: RN asinh(0x1.f19df3a1722a9p-3) want 0x1.ecd8a7f621554p-3 got 0x1.ecd8a7f621552p-3 ulperr -1.535 = -0x1p+1 + 0x1.dbc1a8p-2
X src/math/special/asinh.h:11: RN asinh(0x1.f1af09dcfa7d6p-3) want 0x1.ece942815ceccp-3 got 0x1.ece942815cecap-3 ulperr -1.526 = -0x1p+1 + 0x1.e5bb5p-2
X src/math/special/asinh.h:12: RN asinh(0x1.f339ebbeac5bap-3) want 0x1.ee68f10a49c42p-3 got 0x1.ee68f10a49c44p-3 ulperr 1.529 = 0x1p+1 + -0x1.e28cbp-2
X src/math/special/asinh.h:13: RN asinh(0x1.f424275dc8787p-3) want 0x1.ef4c7fcb51c56p-3 got 0x1.ef4c7fcb51c54p-3 ulperr -1.642 = -0x1p+1 + 0x1.6e4e9p-2
X src/math/special/asinh.h:14: RN asinh(0x1.f60d54a133665p-3) want 0x1.f127a8dec0c2p-3 got 0x1.f127a8dec0c1ep-3 ulperr -1.512 = -0x1p+1 + 0x1.f3c9eap-2
X src/math/special/asinh.h:15: RN asinh(0x1.fdccdaf285ffdp-3) want 0x1.f8ad4bed7af4cp-3 got 0x1.f8ad4bed7af4ap-3 ulperr -1.576 = -0x1p+1 + 0x1.b1f1f8p-2
X src/math/special/asinh.h:16: RN asinh(0x1.ff5bec94924c7p-3) want 0x1.fa30836c3949ap-3 got 0x1.fa30836c39498p-3 ulperr -1.533 = -0x1p+1 + 0x1.de989p-2
X src/math/special/asinh.h:17: RN asinh(0x1.028e8fd61c8a5p-2) want 0x1.ffc55bd02e9dep-3 got 0x1.ffc55bd02e9ep-3 ulperr 1.670 = 0x1p+1 + -0x1.523c08p-2
X src/math/special/asinh.h:18: RN asinh(0x1.dc71794e1f137p-2) want 0x1.ccbd41a7d058ap-2 got 0x1.ccbd41a7d0588p-2 ulperr -1.585 = -0x1p+1 + 0x1.a944b8p-2
X src/math/special/asinh.h:19: RN asinh(0x1.df308e177c3cbp-2) want 0x1.cf3a638145d7ap-2 got 0x1.cf3a638145d78p-2 ulperr -1.505 = -0x1p+1 + 0x1.fb3684p-2
X src/math/special/asinh.h:20: RN asinh(0x1.ea94e1e267746p-2) want 0x1.d9862533f65f6p-2 got 0x1.d9862533f65f4p-2 ulperr -1.579 = -0x1p+1 + 0x1.af51ecp-2
X src/math/special/asinh.h:21: RN asinh(0x1.ecd4f07608dc7p-2) want 0x1.db8d6fdcc6d74p-2 got 0x1.db8d6fdcc6d76p-2 ulperr 1.517 = 0x1p+1 + -0x1.eeb48p-2
X src/math/special/asinh.h:22: RN asinh(0x1.f30656c78ee7ep-2) want 0x1.e1204e364a186p-2 got 0x1.e1204e364a188p-2 ulperr 1.576 = 0x1p+1 + -0x1.b23ffp-2
X src/math/special/asinh.h:23: RN asinh(0x1.f5c0c6e41b969p-2) want 0x1.e393d3dc3b70ap-2 got 0x1.e393d3dc3b70cp-2 ulperr 1.562 = 0x1p+1 + -0x1.c06dbep-2
X src/math/special/asinh.h:24: RN asinh(0x1.09c58725300e7p-1) want 0x1.fe2c7f25fb172p-2 got 0x1.fe2c7f25fb174p-2 ulperr 1.579 = 0x1p+1 + -0x1.ae9df6p-2
src/math/special/asinh.h:7: RN asinhl(0x1.fbdd0eedf8143p-3) want 0x1.f6cc20d7a594ap-3 got 0x1.f6cc20d7a594cp-3 ulperr 1.513 = 0x1p+1 + -0x1.f327a8p-2
src/math/special/asinh.h:8: RN asinhl(0x1.df2723491f88fp-3) want 0x1.dae2c8444900cp-3 got 0x1.dae2c8444900ap-3 ulperr -1.551 = -0x1p+1 + 0x1.cb8b86p-2
src/math/special/asinh.h:9: RN asinhl(0x1.ef675c6541305p-3) want 0x1.eab20432c9598p-3 got 0x1.eab20432c959ap-3 ulperr 1.568 = 0x1p+1 + -0x1.ba9e34p-2
src/math/special/asinh.h:10: RN asinhl(0x1.f19df3a1722a9p-3) want 0x1.ecd8a7f621554p-3 got 0x1.ecd8a7f621552p-3 ulperr -1.535 = -0x1p+1 + 0x1.dbc1a8p-2
src/math/special/asinh.h:11: RN asinhl(0x1.f1af09dcfa7d6p-3) want 0x1.ece942815ceccp-3 got 0x1.ece942815cecap-3 ulperr -1.526 = -0x1p+1 + 0x1.e5bb5p-2
src/math/special/asinh.h:12: RN asinhl(0x1.f339ebbeac5bap-3) want 0x1.ee68f10a49c42p-3 got 0x1.ee68f10a49c44p-3 ulperr 1.529 = 0x1p+1 + -0x1.e28cbp-2
src/math/special/asinh.h:13: RN asinhl(0x1.f424275dc8787p-3) want 0x1.ef4c7fcb51c56p-3 got 0x1.ef4c7fcb51c54p-3 ulperr -1.642 = -0x1p+1 + 0x1.6e4e9p-2
src/math/special/asinh.h:14: RN asinhl(0x1.f60d54a133665p-3) want 0x1.f127a8dec0c2p-3 got 0x1.f127a8dec0c1ep-3 ulperr -1.512 = -0x1p+1 + 0x1.f3c9eap-2
src/math/special/asinh.h:15: RN asinhl(0x1.fdccdaf285ffdp-3) want 0x1.f8ad4bed7af4cp-3 got 0x1.f8ad4bed7af4ap-3 ulperr -1.576 = -0x1p+1 + 0x1.b1f1f8p-2
src/math/special/asinh.h:16: RN asinhl(0x1.ff5bec94924c7p-3) want 0x1.fa30836c3949ap-3 got 0x1.fa30836c39498p-3 ulperr -1.533 = -0x1p+1 + 0x1.de989p-2
src/math/special/asinh.h:17: RN asinhl(0x1.028e8fd61c8a5p-2) want 0x1.ffc55bd02e9dep-3 got 0x1.ffc55bd02e9ep-3 ulperr 1.670 = 0x1p+1 + -0x1.523c08p-2
src/math/special/asinh.h:18: RN asinhl(0x1.dc71794e1f137p-2) want 0x1.ccbd41a7d058ap-2 got 0x1.ccbd41a7d0588p-2 ulperr -1.585 = -0x1p+1 + 0x1.a944b8p-2
src/math/special/asinh.h:19: RN asinhl(0x1.df308e177c3cbp-2) want 0x1.cf3a638145d7ap-2 got 0x1.cf3a638145d78p-2 ulperr -1.505 = -0x1p+1 + 0x1.fb3684p-2
src/math/special/asinh.h:20: RN asinhl(0x1.ea94e1e267746p-2) want 0x1.d9862533f65f6p-2 got 0x1.d9862533f65f4p-2 ulperr -1.579 = -0x1p+1 + 0x1.af51ecp-2
src/math/special/asinh.h:21: RN asinhl(0x1.ecd4f07608dc7p-2) want 0x1.db8d6fdcc6d74p-2 got 0x1.db8d6fdcc6d76p-2 ulperr 1.517 = 0x1p+1 + -0x1.eeb48p-2
src/math/special/asinh.h:22: RN asinhl(0x1.f30656c78ee7ep-2) want 0x1.e1204e364a186p-2 got 0x1.e1204e364a188p-2 ulperr 1.576 = 0x1p+1 + -0x1.b23ffp-2
src/math/special/asinh.h:23: RN asinhl(0x1.f5c0c6e41b969p-2) want 0x1.e393d3dc3b70ap-2 got 0x1.e393d3dc3b70cp-2 ulperr 1.562 = 0x1p+1 + -0x1.c06dbep-2
src/math/special/asinh.h:24: RN asinhl(0x1.09c58725300e7p-1) want 0x1.fe2c7f25fb172p-2 got 0x1.fe2c7f25fb174p-2 ulperr 1.579 = 0x1p+1 + -0x1.ae9df6p-2
FAIL src/math/asinhl.exe [status 1]
X src/math/special/erfc.h:6: RN erfc(0x1.5db559fe5c0bap+0) want 0x1.b53cf571d328fp-5 got 0x1.b53cf571d328cp-5 ulperr -2.609 = -0x1.8p+1 + 0x1.900982p-2
src/math/special/erfc.h:6: RN erfcl(0x1.5db559fe5c0bap+0) want 0x1.b53cf571d328fp-5 got 0x1.b53cf571d328cp-5 ulperr -2.609 = -0x1.8p+1 + 0x1.900982p-2
FAIL src/math/erfcl.exe [status 1]
X src/math/special/exp2.h:12: bad fp exception: RN exp2(-0x1.ff8p+9)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/special/exp2.h:18: bad fp exception: RN exp2(-0x1.ff8p+9)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/special/exp2.h:20: bad fp exception: RN exp2(-0x1p+10)=0x1p-1024, want 0 got INEXACT|UNDERFLOW
X src/math/special/exp2.h:21: bad fp exception: RN exp2(-0x1.004p+10)=0x1p-1025, want 0 got INEXACT|UNDERFLOW
X src/math/special/exp2.h:22: bad fp exception: RN exp2(-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:12: bad fp exception: RN exp2l(-0x1.ff8p+9)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:18: bad fp exception: RN exp2l(-0x1.ff8p+9)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:20: bad fp exception: RN exp2l(-0x1p+10)=0x1p-1024, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:21: bad fp exception: RN exp2l(-0x1.004p+10)=0x1p-1025, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:22: bad fp exception: RN exp2l(-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
FAIL src/math/exp2l.exe [status 1]
src/math/sanity/fma.h:1: RN fmal(-0x1.02239f3c6a8f1p+3,0x1.22484b9ef31fp+2,0x1.52fb12ef638a1p-1) want -0x1.1f69545c32effp+5 got -0x1.9ee52705ep+4 ulperr 1406739496828928.000 = 0x1.3fdb04p+50 + -0x1.759846p-3
src/math/sanity/fma.h:2: RN fmal(0x1.161868e18bc67p+2,-0x1.1c6a6cdce75e8p+3,0x1.ab3ff8575b21dp-5) want -0x1.348be0b9d32d3p+5 got -0x1.c8a99f416p+3 ulperr 3419582362550272.000 = 0x1.84c2f2p+51 + 0x1.b43916p-3
src/math/sanity/fma.h:3: RN fmal(-0x1.0c34b3e01e6e7p+3,-0x1.61bde29e83f6dp+1,0x1.eb4a2e7ce0693p+2) want 0x1.ed6e27fca81b7p+4 got 0x1.487be8a56cp+2 ulperr -7235829650948096.000 = -0x1.9b4f2ep+52 + -0x1.f11488p-2
src/math/sanity/fma.h:4: RN fmal(-0x1.a206f0a19dcc4p+2,0x1.24527f7b576acp+2,-0x1.95882b433fad3p-1) want -0x1.ea02e2365f336p+4 got 0x1.2e3092a8ap+3 ulperr 11278458491502592.000 = 0x1.408d96p+53 + 0x1.41da3ap-2
src/math/sanity/fma.h:5: RN fmal(0x1.288bbb0d6a1e6p+3,0x1.33edd910a3c01p+2,-0x1.1e159e36313eep-1) want 0x1.603abfa620e23p+5 got -0x1.7341dbb0dp+2 ulperr -7012890246643712.000 = -0x1.8ea2fcp+52 + -0x1.7be8ccp-3
src/math/special/fma.h:42: RN fmal(0x1p+0,0x1p+0,-0x1p-1074) want 0x1p+0 got -0x1.fffffp-43 ulperr -4503599627370496.000 = -0x1p+52 + 0x0p+0
src/math/special/fma.h:43: bad fp exception: RN fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022)=0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:43: RN fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.fffffffffffffp-1022 got 0x1p-1074 ulperr -9007199254740992.000 = -0x1p+53 + 0x0p+0
src/math/special/fma.h:44: bad fp exception: RN fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022)=0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:44: RN fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.fffffffffffffp-1022 got -0x0p+0 ulperr -9007199254740992.000 = -0x1p+53 + 0x0p+0
src/math/special/fma.h:45: bad fp exception: RN fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:45: RN fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.fffffffffffffp-1022 got -0x1p-1074 ulperr 9007199254740992.000 = 0x1p+53 + 0x0p+0
src/math/special/fma.h:46: bad fp exception: RN fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:46: RN fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.fffffffffffffp-1022 got 0x0p+0 ulperr 9007199254740992.000 = 0x1p+53 + 0x0p+0
src/math/special/fma.h:47: RN fmal(0x1p-1074,-0x1p-1074,0x1p-1074) want 0x1p-1074 got -0x0p+0 ulperr -1.000 = -0x1p+0 + 0x0p+0
src/math/special/fma.h:48: RN fmal(0x1p-1074,-0x1p-1074,-0x1p-1074) want -0x1p-1074 got -0x0p+0 ulperr 1.000 = 0x1p+0 + 0x0p+0
src/math/special/fma.h:49: RN fmal(0x1.0000000000001p+0,0x1p+0,0x1p+53) want 0x1.0000000000001p+53 got 0x1.000008p+12 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:50: RN fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p+53) want 0x1.0000000000001p+53 got 0x1.ffc02p+10 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:51: RN fmal(0x1p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp+53) want 0x1.fffffffffffffp+53 got -0x1.ffffep+10 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:52: RN fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep+53) want 0x1.fffffffffffffp+53 got 0x1.ffc02p+10 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:53: RN fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p-52) want 0x1.0000000000001p+0 got -0x1.fffffp-42 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:54: RN fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp-53) want 0x1.0000000000001p+0 got -0x1.fffff8p-41 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:55: RN fmal(0x1.0000000000005p+0,0x1.ffffffffffffbp-1,0x1p-52) want 0x1.0000000000003p+0 got -0x1.8fffff8p-37 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:56: RN fmal(0x1.0000000000006p+0,0x1.ffffffffffffdp-1,0x1p-52) want 0x1.0000000000005p+0 got -0x1.1fffff8p-37 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:75: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff5p+0 got 0x1.6800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:76: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1p+0) want 0x1.ffffffffffff9p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:77: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffff7p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:78: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffff5p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:79: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffff7p+0 got 0x1.f800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:80: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffff5p+0 got 0x1.f800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:81: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffff7p+0 got 0x1.2000004p-36 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:82: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffff5p+0 got 0x1.2000004p-36 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:83: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.fffffffffffffp-1) want 0x1.ffffffffffff7p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:84: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffff5p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:85: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff3p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:86: RN fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep-1) want 0x1.fffffffffffffp+0 got -0x1.fffffp-42 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:87: RN fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffp-42 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:88: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.fffffffffffffp-1) want 0x1.fffffffffffffp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:89: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:90: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:91: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1p+0) want 0x1.fffffffffffffp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:92: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:93: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:94: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:95: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:96: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffffdp+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:97: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffbp+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:98: RN fmal(0x1.5872449b765b9p+0,0x1.c9acf91f8de2bp+0,0x1.9265607e4d168p+0) want 0x1.fd190c77c2a67p+1 got -0x1.b3fc37bedp-4 ulperr -9195829923414016.000 = -0x1.055c78p+53 + -0x1.fffc98p-2
src/math/special/fma.h:99: RN fmal(0x1.81d010b146d0ep+0,0x1.2d3c680dc9071p+0,0x1.a80b69538754cp+0) want 0x1.b7040b44973a7p+1 got 0x1.4d0cb20197p+1 ulperr -1864177270390784.000 = -0x1.a7dd66p+50 + 0x1.ffacbcp-2
src/math/special/fma.h:100: RN fmal(0x1.6a44f2252b6a2p+0,0x1.da452a378b832p+0,0x1.1fe2ce329104p+0) want 0x1.df842b6f48b13p+1 got 0x1.12e95c1ba4p+0 ulperr -6017592242208768.000 = -0x1.560f7ep+52 + 0x1.ffdda2p-2
src/math/special/fma.h:101: RN fmal(0x1.096b1d26463eep+0,0x1.d846d3e34333p+0,0x1.721e3480922b8p+0) want 0x1.ade2909c0269fp+1 got -0x1.a139d9b2cp-1 ulperr -9397596749561856.000 = -0x1.0b1884p+53 + -0x1.ffe5ecp-2
src/math/special/fma.h:102: RN fmal(0x1.99bd3434c454bp+0,0x1.03cb8e4115bdep+0,0x1.109f107188b08p+0) want 0x1.5837a47d37fafp+1 got 0x1.cfdec0c00ap+0 ulperr -1975290892910592.000 = -0x1.c1211p+50 + 0x1.ffc604p-2
src/math/special/fma.h:103: RN fmal(0x1.ba930a0a78ed2p+0,0x1.8c24e8d67f636p+0,0x1.ac49dbfbf8affp+0) want 0x1.164947ae6a5d9p+2 got -0x1.33e3b04edp-2 ulperr -5234191281160192.000 = -0x1.298782p+52 + -0x1.fffb3p-2
src/math/special/fma.h:104: RN fmal(0x1.be224ad773191p+0,0x1.d96b77169731fp+0,0x1.662cfb75d8edep+0) want 0x1.27cd67e720f79p+2 got 0x1.e4711611c78p+1 ulperr -942615600037888.000 = -0x1.aca6e6p+49 + 0x1.ffc372p-2
src/math/special/fma.h:105: RN fmal(0x1.59e7a1b0bdb3cp+0,0x1.2decba4d46421p+0,0x1.88f4062e96df5p+0) want 0x1.90749e4794f79p+1 got -0x1.b3c84a9a88p-1 ulperr -8961479327875072.000 = -0x1.fd66bp+52 + -0x1.ffe4c4p-2
src/math/special/fma.h:106: RN fmal(0x1.22edf4b4da9a7p+0,0x1.dfa8d65f506cdp+0,0x1.2799208da2fbap+0) want 0x1.a45a1e99ed7a9p+1 got 0x1.a0bdfb8976p-1 ulperr -5562059957731328.000 = -0x1.3c2aap+52 + 0x1.ffe5f4p-2
src/math/special/fma.h:107: RN fmal(0x1.ad5b991a2a279p+0,0x1.f02fd26706024p+0,0x1.831cdd5c8797cp+0) want 0x1.30d3a2ac90a61p+2 got 0x1.c7c15e1c82p+1 ulperr -1353701616779264.000 = -0x1.33cbcep+50 + 0x1.ffc708p-2
src/math/special/fma.h:108: RN fmal(0x1.531f9620e764ap+0,0x1.cad61b54d4425p+0,0x1.df817cae8a9afp+0) want 0x1.0fd4e7f8671ddp+2 got 0x1.8e74e26059p+1 ulperr -1277252138434560.000 = -0x1.2269dcp+50 + 0x1.ffce32p-2
src/math/special/fma.h:109: RN fmal(0x1.629a5ad79494fp+0,0x1.049e58693f4c4p+0,0x1.45b0109e4d00cp+0) want 0x1.5758154e14965p+1 got -0x1.01173c9c2p-3 ulperr -6322847379095552.000 = -0x1.67698ap+52 + -0x1.fffbfcp-2
src/math/special/fma.h:110: RN fmal(0x1.2f52b53f9240ap+0,0x1.1d5c686dbb0dap+0,0x1.6da3e392a4fd4p+0) want 0x1.5fe03a6795913p+1 got 0x1.5bdb7d9084p+0 ulperr -3130480329228288.000 = -0x1.63e4f8p+51 + 0x1.ffd484p-2
src/math/special/fma.h:111: RN fmal(0x1.058667552b49ep+0,0x1.23307bacc1c42p+0,0x1.5b059b47cd8f5p+0) want 0x1.423f752486d13p+1 got -0x1.4bfb042744p+0 ulperr -8589176530272256.000 = -0x1.e83cf8p+52 + -0x1.ffd68p-2
src/math/special/fma.h:112: RN fmal(0x1.a717d95337ed8p+0,0x1.2b1c37846aaadp+0,0x1.be65672f885b1p+0) want 0x1.d65e72303c075p+1 got -0x1.7e0573ec04p+1 ulperr -14995408015065088.000 = -0x1.aa31f4p+53 + -0x1.ffa07ep-2
src/math/special/fma.h:113: RN fmal(0x1.deb79287b3d32p+0,0x1.62776b829babap+0,0x1.67daf18bd2eb1p+0) want 0x1.ff5a0d45c69d7p+1 got 0x1.ad881652ap-3 ulperr -8523520438960128.000 = -0x1.e4818cp+52 + 0x1.fff94ap-2
src/math/special/fma.h:114: RN fmal(0x1.fbf12d3a6de91p+0,0x1.879fe6124f11p+0,0x1.9f3f1247a8641p+0) want 0x1.2a126c6980019p+2 got 0x1.45e3d61a84p+2 ulperr 489379780886528.000 = 0x1.bd169cp+48 + 0x1.ffae88p-2
src/math/special/fma.h:115: RN fmal(0x1.c589628460e01p+0,0x1.e1bec1c797533p+0,0x1.349f30cdb84bbp+0) want 0x1.2286118b6f6e5p+2 got -0x1.8e9d95e0668p+1 ulperr -8617206560587776.000 = -0x1.e9d4dcp+52 + -0x1.ffce2cp-2
src/math/special/fma.h:116: RN fmal(0x1.46fd6c2c924ebp+0,0x1.65e2f02e730a1p+0,0x1.37739d2751098p+0) want 0x1.804a71c1f1273p+1 got 0x1.855d7947cbp+0 ulperr -3335623268106240.000 = -0x1.7b376ap+51 + 0x1.ffcf54p-2
src/math/special/fma.h:117: RN fmal(0x1.f99e595ae11fdp+0,0x1.bd33d9a1d81bp+0,0x1.932a2a2e244c1p+0) want 0x1.409e34f8f2f89p+2 got -0x1.7a49668944p+2 ulperr -12295261934059520.000 = -0x1.5d73cep+53 + -0x1.ffa16ep-2
src/math/special/fma.h:118: RN fmal(0x1.59ea1e56bfe55p+0,0x1.6f46b7d412a44p+0,0x1.80f2bc9a32cc3p+0) want 0x1.b89c7640e32ffp+1 got -0x1.ca180bfb6p-3 ulperr -8254993714905088.000 = -0x1.d53df8p+52 + -0x1.fff8d8p-2
src/math/special/fma.h:119: RN fmal(0x1.61490fcb44129p+0,0x1.0038ec4fc35c2p+0,0x1.df7436ed7a7b7p+0) want 0x1.a085ea68d05cfp+1 got -0x1.5ed2c690f7p+1 ulperr -13499301254660096.000 = -0x1.7fac58p+53 + -0x1.ffa84cp-2
src/math/special/fma.h:120: RN fmal(0x1.d41b98788502bp+0,0x1.1a7b77843aca6p+0,0x1.05be891837d36p+0) want 0x1.8523596ceced9p+1 got -0x1.48c8fc403cp-1 ulperr -8291801584631808.000 = -0x1.d75598p+52 + -0x1.ffeb74p-2
src/math/special/fma.h:121: RN fmal(0x1.3153cf6f69af9p+0,0x1.aaa947e38e57ap+0,0x1.8519f9b590645p+0) want 0x1.c0fcab7b46369p+1 got 0x1.25f4f4bd5p-3 ulperr -7575453653008384.000 = -0x1.ae9d5cp+52 + 0x1.fffb68p-2
src/math/special/fma.h:122: RN fmal(0x1.c25a1f73581aap+0,0x1.0a51ffca372ap+0,0x1.0c77e3ebac5f3p+0) want 0x1.707ce48c7d72dp+1 got -0x1.3261c9a0ep+1 ulperr -11872436362412032.000 = -0x1.516f58p+53 + -0x1.ffb368p-2
src/math/special/fma.h:123: RN fmal(0x1.829c2cde44b7p+0,0x1.f692e86d8cb36p+0,0x1.455e72d264bfp+0) want 0x1.0f16a3b8b3f97p+2 got -0x1.684386466p+0 ulperr -6353495191977984.000 = -0x1.692786p+52 + -0x1.ffe97cp-2
src/math/special/fma.h:124: RN fmal(0x1.94729588dcc69p+0,0x1.c3bb794c6edf8p+0,0x1.9da4e94d262d2p+0) want 0x1.19d4bd84d9fd3p+2 got 0x1.e1b9a2757p-1 ulperr -3898698849320960.000 = -0x1.bb3b12p+51 + 0x1.fff0f2p-2
src/math/special/fma.h:125: RN fmal(0x1.e6a5e7e39c3d5p+0,0x1.1b69af2bdd978p+0,0x1.e7ef1eafa119cp+0) want 0x1.00ac5b44c9f31p+2 got -0x1.6777d5d394p+1 ulperr -7677358731427840.000 = -0x1.b46846p+52 + -0x1.ffd312p-2
src/math/special/fma.h:126: RN fmal(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022) want 0x1.b594d0e4368efp-1022 got -0x1.9dedc9561p-1023 ulperr -11338968138252288.000 = -0x1.4245dap+53 + -0x1.ffcc42p-2
src/math/special/fma.h:127: RN fmal(0x1.022db53c98d14p-1022,0x1.21157eef74848p-2,0x1.2f880432b1bc1p-1022) want 0x1.786ad60a02b3dp-1022 got -0x1.150255ac98p-1022 ulperr -11495199721127936.000 = -0x1.46b696p+53 + -0x1.ffbacp-2
src/math/special/fma.h:128: RN fmal(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022) want 0x1.cbb085199a3f5p-1022 got -0x1.6ed115da2f8p-1023 ulperr -11313497908445184.000 = -0x1.418c88p+53 + -0x1.ffd226p-2
src/math/special/fma.h:129: RN fmal(0x1.adbc3a9d816dep-1022,0x1.e039d4431e3cdp-2,0x1.93ceef6fe18a2p-1022) want 0x1.2eabb7dc0e2f1p-1021 got 0x1.ef7b6794e3p-1023 ulperr -3145487481831424.000 = -0x1.6599bcp+51 + 0x1.ffe108p-2
src/math/special/fma.h:130: RN fmal(0x1.645aa5c2df3afp-1022,0x1.649edfcad854fp-2,0x1.8b43e0bbaeb01p-1022) want 0x1.03af571d2b505p-1021 got 0x1.0ce86163c02p-1021 ulperr 162249436037120.000 = 0x1.272148p+47 + 0x1.ffbcc6p-2
src/math/special/fma.h:131: RN fmal(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022) want 0x1.ad9ce7fcefa3fp-1022 got -0x1.12bc4931e6p-1025 ulperr -8161980292530176.000 = -0x1.cff472p+52 + -0x1.fff76ap-2
src/math/special/fma.h:132: RN fmal(0x1.8ee3feb00c3e7p-1022,0x1.53bd9353313bcp-2,0x1.5501b57dc3b6fp-1022) want 0x1.d9598906f0bb3p-1022 got -0x1.4660b83f57p-1022 ulperr -14068955652030464.000 = -0x1.8fdd2p+53 + -0x1.ffae68p-2
src/math/special/fma.h:133: RN fmal(0x1.161225cfa61e2p-1022,0x1.b6dd69a0af5bp-2,0x1.924ffc3ead5c3p-1022) want 0x1.04be6fc25367bp-1021 got -0x1.f3ab56daa8p-1022 ulperr -8982192881401856.000 = -0x1.fe941cp+52 + -0x1.ffc18ap-2
src/math/special/fma.h:134: RN fmal(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022) want 0x1.70b6c3169f043p-1022 got -0x1.a779baefbe8p-1023 ulperr -10211413595258880.000 = -0x1.2239dp+53 + -0x1.ffcb1p-2
src/math/special/fma.h:135: RN fmal(0x1.ce0e2ea55040ep-1022,0x1.ce5a55fa3828dp-2,0x1.f2f444d50ce59p-1022) want 0x1.61ca36f5a8a79p-1021 got -0x1.173f0cea128p-1022 ulperr -8680214267691008.000 = -0x1.ed69bep+52 + -0x1.ffdd18p-2
src/math/special/fma.h:136: RN fmal(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022) want 0x1.1440cf1c105ebp-1021 got -0x1.f88fda6p-1030 ulperr -4877233864835072.000 = -0x1.153d18p+52 + -0x1.ffffcp-2
src/math/special/fma.h:137: RN fmal(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022) want 0x1.1186e1f77012dp-1021 got -0x1.2ffba526fcp-1025 ulperr -5146168610783232.000 = -0x1.24869cp+52 + -0x1.fffb4p-2
src/math/special/fma.h:138: RN fmal(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022) want 0x1.8d86310bad175p-1022 got -0x1.1b755c367f8p-1023 ulperr -9486646453993472.000 = -0x1.0da07p+53 + -0x1.ffdc92p-2
src/math/special/fma.h:139: RN fmal(0x1.fb3391a4b1d23p-1022,0x1.4d8705b057caep-2,0x1.d026cb6dae73bp-1022) want 0x1.3aad18b424c67p-1021 got -0x1.0a1784c7c6cp-1021 ulperr -10216978799132672.000 = -0x1.22624ep+53 + -0x1.ffbd7ap-2
src/math/special/fma.h:140: RN fmal(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022) want 0x1.c0048fd33a417p-1022 got -0x1.d026e457f1p-1024 ulperr -9922974329077760.000 = -0x1.1a0724p+53 + -0x1.ffe2fep-2
src/math/special/fma.h:141: RN fmal(0x1.aa9eff070281cp-1022,0x1.fab05661b48ebp-2,0x1.cbe2af6c69c6ep-1022) want 0x1.4f7ddbe122765p-1021 got 0x1.9e529858dap-1023 ulperr -4079821109854208.000 = -0x1.cfd26cp+51 + 0x1.ffe61ap-2
src/math/special/fma.h:142: RN fmal(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022) want 0x1.e0e762ee2e7c5p-1022 got -0x1.e2fe0f96ecp-1023 ulperr -12708596701724672.000 = -0x1.693336p+53 + -0x1.ffc3ap-2
src/math/special/fma.h:143: RN fmal(0x1.4dab43918a9a8p-1022,0x1.ed667442b4751p-2,0x1.3f25f82e02e3ep-1022) want 0x1.dfec0ee732dcbp-1022 got 0x1.6a41c4d18ap-1022 ulperr -2069987942465536.000 = -0x1.d6a928p+50 + 0x1.ffa57p-2
src/math/special/fma.h:144: RN fmal(0x1.7943735951931p-1022,0x1.fa6a357c5c9ddp-2,0x1.0bed44b0b71b4p-1022) want 0x1.c6803a6059abfp-1022 got 0x1.0e970cce134p-1022 ulperr -3235394032238592.000 = -0x1.6fd25cp+51 + 0x1.ffbc5ap-2
src/math/special/fma.h:145: RN fmal(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022) want 0x1.8640492c45959p-1022 got -0x1.3271a1b38p-1027 ulperr -7033839486500864.000 = -0x1.8fd3d6p+52 + -0x1.fffd9cp-2
src/math/special/fma.h:146: RN fmal(0x1.f52172c56bdf5p-1022,0x1.672b2de422734p-2,0x1.7bc5d708e5a34p-1022) want 0x1.15c5b95145cc7p-1021 got 0x1.3cf4f71d188p-1021 ulperr 689341647028224.000 = 0x1.3979eep+49 + 0x1.ffb0c2p-2
src/math/special/fma.h:147: RN fmal(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022) want 0x1.e7fa0dd76fbefp-1022 got -0x1.60a5d541bp-1024 ulperr -10135539776749568.000 = -0x1.2011c2p+53 + -0x1.ffe9f6p-2
src/math/special/fma.h:148: RN fmal(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022) want 0x1.b63a7f56fce1fp-1022 got -0x1.497a9bc52p-1024 ulperr -9158461560455168.000 = -0x1.044c94p+53 + -0x1.ffeb68p-2
src/math/special/fma.h:149: RN fmal(0x1.f73d5f4e81fd8p-1022,0x1.7ccff2642124ap-2,0x1.e7d836a0c8308p-1022) want 0x1.517f1763126d3p-1021 got -0x1.06939f3372p-1021 ulperr -10556597969354752.000 = -0x1.2c095cp+53 + -0x1.ffbe5cp-2
src/math/special/fma.h:150: RN fmal(0x1.b4328925969fbp-1022,0x1.8fa02832a22d5p-2,0x1.2084598e2f8c6p-1022) want 0x1.cabf43838dc51p-1022 got -0x1.7c61d65f0a4p-1022 ulperr -14762118276448256.000 = -0x1.a3908cp+53 + -0x1.ffa0e8p-2
src/math/special/fma.h:151: RN fmal(0x1.66ee60a92676fp-1022,0x1.eddd2e7681ce4p-2,0x1.b81d57daeb3a7p-1022) want 0x1.329c918ffb683p-1021 got 0x1.cd379885b8p-1025 ulperr -4886854591578112.000 = -0x1.15c918p+52 + 0x1.fff8ccp-2
src/math/special/fma.h:152: RN fmal(0x1.ff2737585895dp-1022,0x1.fb4bf3828ae4ap-2,0x1.4a866847740fp-1022) want 0x1.23e07e4dbbeabp-1021 got 0x1.46c53f7571p-1023 ulperr -3697601232764928.000 = -0x1.a45e5cp+51 + 0x1.ffeb94p-2
src/math/special/fma.h:153: RN fmal(0x1.5e2008d269a86p-1022,0x1.507bbbe4d78eep-2,0x1.6220c6f83f636p-1022) want 0x1.d52d9874f1c75p-1022 got 0x1.eda0503c4ap-1023 ulperr -3911886277967872.000 = -0x1.bcbaep+51 + 0x1.ffc24cp-2
src/math/special/fma.h:154: RN fmal(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022) want 0x1.9864925e2fb0fp-1022 got -0x1.53ae580e8cp-1025 ulperr -7931489798848512.000 = -0x1.c2da5ep+52 + -0x1.fff562p-2
src/math/special/fma.h:155: RN fmal(0x1.7b353b81e793dp-1022,0x1.82b426f874c6dp-2,0x1.d92b19d21fd5cp-1022) want 0x1.342fb0c544a79p-1021 got 0x1.2af4c8aebe4p-1022 ulperr -2792024021401600.000 = -0x1.3d6a98p+51 + 0x1.ffdaa2p-2
src/math/special/fma.h:156: RN fmal(0x1.5be667823370ap-1022,0x1.a8a99b163869bp-2,0x1.95456b68dc3bcp-1022) want 0x1.12c638de03c71p-1021 got 0x1.49af7fc787p-1023 ulperr -3383908364189696.000 = -0x1.80b4b2p+51 + 0x1.ffeb66p-2
src/math/special/fma.h:157: RN fmal(0x1.17b0fc6c850e5p-1022,0x1.d1d0a4853c315p-2,0x1.36b79f7c0c24p-1022) want 0x1.b5f2baff5635dp-1022 got 0x1.6a19304724p-1026 ulperr -7306334223466496.000 = -0x1.9f5128p+52 + 0x1.fffa58p-2
src/math/special/fma.h:158: RN fmal(0x1.bd97819bacfd8p-1022,0x1.2c25f267ba4eep-2,0x1.804b5204a3f3ap-1022) want 0x1.01739c190fd97p-1021 got 0x1.b9e166e6b4p-1022 ulperr -642314707927040.000 = -0x1.241746p+49 + 0x1.ffc8c4p-2
src/math/special/fma.h:159: RN fmal(0x1.596577053873dp-1022,0x1.3562ab2d29949p-2,0x1.b3f1ee75db6e7p-1022) want 0x1.0e268a498009bp-1021 got 0x1.e8136bc1594p-1022 ulperr -459377991483392.000 = -0x1.a1cd46p+48 + 0x1.ffc2fep-2
src/math/special/fma.h:160: RN fmal(0x1.3c7a68cf0f7b3p-1022,0x1.9a55c15b167bdp-2,0x1.7635b7b163c07p-1022) want 0x1.f5073b93b7b81p-1022 got 0x1.75f9a972138p-1023 ulperr -5524660993130496.000 = -0x1.3a0a66p+52 + 0x1.ffd14p-2
src/math/special/fma.h:161: RN fmal(0x1.5825164bc4068p-1022,0x1.dcbb6e5ff3245p-2,0x1.52fc3be0e84dap-1022) want 0x1.f334771c2dcfbp-1022 got 0x1.2b86ba6b02p-1022 ulperr -3512784226615296.000 = -0x1.8f5b7ap+51 + 0x1.ffb51ep-2
src/math/special/fma.h:162: RN fmal(0x1.139ea77b760ecp+1022,0x1.9b25f2fd017eap+2,-0x1.bc16788922b6fp+1023) want 0x1.b93aac527380fp+1023 got 0x1.c3ec4f2eep+1022 ulperr -3787028625883136.000 = -0x1.ae890ap+51 + 0x1.ffc782p-2
src/math/special/fma.h:163: RN fmal(0x1.0e6f9c1657d7cp+1022,0x1.4d5c6b55ab5f1p+2,-0x1.e027dd5742e2cp+1023) want 0x1.c0538372b4bbfp+1022 got 0x1.54dede6dep+1021 ulperr -4888708943708160.000 = -0x1.15e414p+52 + 0x1.ffd564p-2
src/math/special/fma.h:164: RN fmal(0x1.1182524fa411cp+1022,0x1.a3dba56842d19p+2,-0x1.c1ad59474d71fp+1023) want 0x1.bf78969300a77p+1023 got 0x1.8651491efp+1022 ulperr -4438724683235328.000 = -0x1.f89fe4p+51 + 0x1.ffcf36p-2
src/math/special/fma.h:165: RN fmal(0x1.1cbf4fb8ec82p+1022,0x1.5e32019a84fbbp+2,-0x1.985af08f32edep+1023) want 0x1.72af6bbad4a29p+1023 got 0x1.a68c1c1ecp+1023 ulperr 912367152005120.000 = 0x1.9ee584p+49 + 0x1.ff965cp-2
src/math/special/fma.h:166: RN fmal(0x1.311e25c6db346p+1022,0x1.4e30db6c4b51dp+2,-0x1.7681f7a9786a7p+1023) want 0x1.a61d29434fc13p+1023 got -0x1.791d1989p+1017 ulperr -7529566759288832.000 = -0x1.ac019ep+52 + -0x1.fffe86p-2
src/math/special/fma.h:167: RN fmal(0x1.1201cf577052fp+1022,0x1.59730b2db7a16p+2,-0x1.56f1a64a078d5p+1023) want 0x1.8c8d801df34d9p+1023 got -0x1.3048609fd8p+1022 ulperr -inf = -inf + -0x1.ffd9f6p-2
src/math/special/fma.h:168: RN fmal(0x1.3e52335b76e81p+1022,0x1.4dbd56f857479p+2,-0x1.509340c11bd2ep+1023) want 0x1.ed6576837f653p+1023 got -0x1.e498d5441cp+1022 ulperr -inf = -inf + -0x1.ffc36cp-2
src/math/special/fma.h:169: RN fmal(0x1.18566b4f843cbp+1022,0x1.444fba10eaf29p+2,-0x1.f927beae57f0ap+1023) want 0x1.9a433b9796559p+1022 got 0x1.a048d2820cp+1022 ulperr 105937222238208.000 = 0x1.8165bap+46 + -0x1.ff6812p-2
src/math/special/fma.h:170: RN fmal(0x1.3fbe544fe1be8p+1022,0x1.2d2a5fda03639p+2,-0x1.007407dbfd03cp+1023) want 0x1.efdb644b613e5p+1023 got -0x1.e14223656p+1022 ulperr -inf = -inf + -0x1.ffc3d8p-2
src/math/special/fma.h:171: RN fmal(0x1.263a0d3bc2e4p+1022,0x1.4cc198adbc651p+2,-0x1.734b1c1f7fdb8p+1023) want 0x1.899878afc0fa3p+1023 got 0x1.a13620448p+1023 ulperr 415454233362432.000 = 0x1.79da7ap+48 + 0x1.ff97b2p-2
src/math/special/fma.h:172: RN fmal(0x1.5bf4aec8efc8ep+1022,0x1.555f0341516c9p+2,-0x1.c706408acd14cp+1023) want 0x1.d8f5e18b868bdp+1023 got 0x1.3e5679fdf8p+1022 ulperr -5520279589617664.000 = -0x1.39caa4p+52 + 0x1.ffd836p-2
src/math/special/fma.h:173: RN fmal(0x1.1e57f1af78279p+1022,0x1.34bc0c7f082b3p+2,-0x1.497b92c1365edp+1023) want 0x1.692cb7ec68a93p+1023 got -0x1.c0a1f29b28p+1021 ulperr -8326959113175040.000 = -0x1.d95534p+52 + -0x1.ffe3f6p-2
src/math/special/fma.h:174: RN fmal(0x1.1d9824cd73511p+1022,0x1.1d557ddfe47ffp+2,-0x1.556cdb1d20a72p+1023) want 0x1.2736a6b6e35f3p+1023 got 0x1.bc6f9c9778p+1021 ulperr -3238800478175232.000 = -0x1.70358p+51 + 0x1.ffe43ap-2
src/math/special/fma.h:175: RN fmal(0x1.1ff85a24aff31p+1022,0x1.39ab374b2680dp+2,-0x1.35e6b07b651b8p+1023) want 0x1.8bc7ce2087081p+1023 got 0x1.84b319bafap+1023 ulperr -124568119279616.000 = -0x1.c52d1ap+46 + 0x1.ff9ed4p-2
src/math/special/fma.h:176: RN fmal(0x1.0449b3965227ep+1022,0x1.4430d4441f9f2p+2,-0x1.a6966c96307ep+1023) want 0x1.d94eda8c81771p+1022 got -0x1.992ed6b72p+1021 ulperr -11925733685329920.000 = -0x1.52f322p+53 + -0x1.ffccdap-2
src/math/special/fma.h:177: RN fmal(0x1.3c91fa00fd0c7p+1022,0x1.1b6661c0b0303p+2,-0x1.f1f2846b64483p+1023) want 0x1.95eae0d2644d3p+1022 got 0x1.9985d8eaap+1019 ulperr -6240425882943488.000 = -0x1.62ba26p+52 + -0x1.ff0cccp-2
src/math/special/fma.h:178: RN fmal(0x1.0979b36d46534p+1022,0x1.12fa205f41f7fp+2,-0x1.a83ecf4544a63p+1023) want 0x1.2420f34e2aa3dp+1022 got -0x1.335a0fe68p+1019 ulperr -5815056616914944.000 = -0x1.4a8c36p+52 + 0x1.ff099ap-2
src/math/special/fma.h:179: RN fmal(0x1.4c89df582a599p+1022,0x1.55f3dc473ea8fp+2,-0x1.e35037292ddfp+1023) want 0x1.95109fdbc3771p+1023 got -0x1.afa3b29624p+1022 ulperr -inf = -inf + -0x1.ffca0cp-2
src/math/special/fma.h:180: RN fmal(0x1.35ee0a669c4fbp+1022,0x1.2263cb63f386ap+2,-0x1.449218ae35ac7p+1023) want 0x1.7a8ed977d817bp+1023 got 0x1.47da9ddfb8p+1022 ulperr -3775828961787904.000 = -0x1.ad4316p+51 + 0x1.ffd704p-2
src/math/special/fma.h:181: RN fmal(0x1.117cc860f61bcp+1022,0x1.440985b25d994p+2,-0x1.d7a7d82000449p+1023) want 0x1.b960b7088e74fp+1022 got 0x1.ddfba372cp+1022 ulperr 643964982001664.000 = 0x1.24d764p+49 + -0x1.ff777ep-2
src/math/special/fma.h:182: RN fmal(0x1.1e78a37be320fp+1022,0x1.0db0fce62287bp+2,-0x1.376337da5eb53p+1023) want 0x1.24326b9956dfbp+1023 got -0x1.d2881b3596p+1023 ulperr -inf = -inf + -0x1.ff8b5ep-2
src/math/special/fma.h:183: RN fmal(0x1.0c79b5c8331c2p+1022,0x1.0aba6ea746b5p+2,-0x1.c86f1fcaf0741p+1023) want 0x1.9c135bb2cff85p+1021 got -0x1.cc298bacp+1019 ulperr -9273126449840128.000 = -0x1.078eep+53 + 0x1.fe1cc2p-2
src/math/special/fma.h:184: RN fmal(0x1.556c4c072f272p+1022,0x1.347758d7d4eb5p+2,-0x1.c6fe4f24b248dp+1023) want 0x1.6fcc9f756df6dp+1023 got -0x1.f6f4c76598p+1022 ulperr -inf = -inf + -0x1.ffc122p-2
src/math/special/fma.h:185: RN fmal(-0x1.e8349b891b2fp-1,0x1.4a6dec9b72578p-1,0x1.3b6151ce809ddp-1) want 0x1.3a62fe330b355p-11 got -0x1.d97121p-11 ulperr -13859627535958016.000 = -0x1.89ea1p+53 + -0x1.ff89a4p-2
src/math/special/fma.h:186: RN fmal(0x1.2996632ac7d74p-1,-0x1.bb3c58b654d94p-1,0x1.01a6660e64a31p-1) want 0x1.ed045bb956a8ep-15 got -0x1.070d62p-15 ulperr -13300911346548736.000 = -0x1.7a08dep+53 + -0x1.eabe3cp-2
src/math/special/fma.h:187: RN fmal(-0x1.c602e894c1df8p-1,0x1.a1c980e7d3f94p-1,0x1.7271244b43386p-1) want -0x1.ba251fe026e5bp-15 got -0x1.af2b6cp-15 ulperr 193081294979072.000 = 0x1.5f367cp+47 + 0x1.fa6bcap-2
src/math/special/fma.h:188: RN fmal(-0x1.c84baf47e85cp-1,0x1.770b5149ef2ep-1,0x1.4d80f139320bap-1) want -0x1.79277433b9e23p-10 got 0x1.d4b6fp-11 ulperr 10757822555881472.000 = 0x1.31c176p+53 + 0x1.ffc56ap-2
src/math/special/fma.h:189: RN fmal(-0x1.36e667dcf9c6p-1,0x1.2591f82556b88p-1,0x1.2452a0f795f95p-1) want 0x1.c83c8e63c159fp-3 got -0x1.221cccp-12 ulperr -8036166204915712.000 = -0x1.c8cd9cp+52 + -0x1.ffffdcp-2
src/math/special/fma.h:190: RN fmal(0x1.88b2cede61e4cp-1,-0x1.71dcab5ad9e9p-3,0x1.32b27fea2ae97p-3) want 0x1.70461909b25e2p-7 got -0x1.affe57fffffffp-17 ulperr -6486162973655040.000 = -0x1.70b218p+52 + -0x1.ffffe6p-2
src/math/special/fma.h:191: RN fmal(0x1.8d1e44002c98p-3,-0x1.af9fdfb347834p-1,0x1.e280942fb4146p-4) want -0x1.761ac23896dfdp-5 got 0x1.0bec48p-14 ulperr 6590522089013248.000 = 0x1.76a0b8p+52 + 0x1.ffffdep-2
src/math/special/fma.h:192: RN fmal(0x1.236e8cb9492c8p-1,-0x1.d37443a57f1c4p-1,0x1.ca10df801aabcp-4) want -0x1.a1a2cdf0138f9p-2 got 0x1.f090cab7p-5 ulperr 8439088898113536.000 = 0x1.dfb4e8p+52 + 0x1.fff07cp-2
src/math/special/fma.h:193: RN fmal(-0x1.6ad943e610fb8p-1,-0x1.cef92a7bb18bcp-1,0x1.f28587d8fb0ep-4) want 0x1.866b5204b9aecp-1 got -0x1.8c9eb9a7p-5 ulperr -7304415983697920.000 = -0x1.9f353ep+52 + -0x1.fff9cep-2
src/math/special/fma.h:194: RN fmal(-0x1.60a8569a5d894p-1,-0x1.ca07e29dd171cp-1,0x1.b6c475ace09ecp-4) want 0x1.72549291e2f7ap-1 got -0x1.b6fd181e8p-5 ulperr -6997593720619008.000 = -0x1.8dc464p+52 + -0x1.fff924p-2
src/math/special/fma.h:195: RN fmal(0x1.d1962720d678cp-1,-0x1.4548ee45c4084p-1,0x1.f416ab193d75cp-4) want -0x1.d2929879dc853p-2 got 0x1.fc38e6f4p-8 ulperr 8347731722502144.000 = 0x1.da837cp+52 + 0x1.fffe04p-2
src/math/special/fma.h:196: RN fmal(-0x1.9ddcb295a7d64p-1,0x1.67fb3a2068a78p-1,0x1.da9cd4597fe0ap-4) want -0x1.cf4f6eb4fc5d8p-2 got 0x1.59da5512p-6 ulperr 8530909930192896.000 = 0x1.e4ed14p+52 + 0x1.fffa98p-2
src/math/special/fma.h:197: RN fmal(0x1.c00d16ed45b88p+0,0x1.c787eddda3664p+0,0x1.1e3e6f0cc1802p-5) want 0x1.931b8f379dcc3p+1 got -0x1.63fb63b8p-6 ulperr -7140470639558656.000 = -0x1.95e386p+52 + -0x1.ffff4ep-2
src/math/special/fma.h:198: RN fmal(0x1.19c2a2372c184p+0,-0x1.cb506961c19fp+0,0x1.db1abf3f7ba3ap-6) want -0x1.f21c0eab0bc18p+0 got 0x1.a29607ffffff8p-13 ulperr 8763735812341760.000 = 0x1.f22924p+52 + 0x1.fffffcp-2
src/math/special/fma.h:199: RN fmal(-0x1.3a263218ccd1cp+0,-0x1.e818d390df27cp+0,0x1.2a81ed71785f5p-5) want 0x1.3025ab0f63925p+1 got -0x1.bfdf0b9cp-6 ulperr -5412168283455488.000 = -0x1.33a56ap+52 + -0x1.ffff2p-2
src/math/special/fma.h:200: RN fmal(0x1.b0b041fbaca58p+0,-0x1.9d5f76d178e6p+0,0x1.0215c7bb84cf9p-6) want -0x1.5b52aec7ef4p+1 got 0x1.6be7a78p-7 ulperr 6135177709355008.000 = 0x1.5cbe96p+52 + 0x1.ffffa6p-2
src/math/special/fma.h:201: RN fmal(-0x1.377549d9a87f4p+0,-0x1.a13d4a03dd6d8p+0,0x1.f190388bc5cc6p-7) want 0x1.ff83bebbd6fe4p+0 got -0x1.e5a6a44p-9 ulperr -9015347881443328.000 = -0x1.003b4ap+53 + -0x1.ffffc4p-2
src/math/special/fma.h:202: RN fmal(0x1.6a726c0762ac8p-1,-0x1.d32f2d30e483cp+0,0x1.f953eb70fbde6p-7) want -0x1.46c61b3070332p+0 got 0x1.e556e47fffffep-11 ulperr 5752835425697792.000 = 0x1.4702c6p+52 + 0x1.fffffp-2
src/math/special/fma.h:203: RN fmal(0x1.94cf2509d40cp-1,0x1.721976af6dfbp+0,0x1.f51a456921c3ep-7) want 0x1.28880842acc6p+0 got -0x1.effe1ep-8 ulperr -5250719389057024.000 = -0x1.2a7806p+52 + -0x1.ffff84p-2
src/math/special/fma.h:204: RN fmal(0x1.b128eb0ad8728p-1,0x1.7682566a54268p+0,0x1.bd4122a074cafp-8) want 0x1.3e9469530e762p+0 got -0x1.6fe0c7cp-9 ulperr -5617154187591680.000 = -0x1.3f4c5ap+52 + -0x1.ffffd2p-2
src/math/special/fma.h:205: RN fmal(0x1.c4ae75976e35cp+0,-0x1.11c329dd1160cp+0,0x1.9993f5e13c9bdp-8) want -0x1.e27d925b07cf1p+0 got 0x1.198edf6p-9 ulperr 8497737213411328.000 = 0x1.e30a5ap+52 + 0x1.ffffdcp-2
src/math/special/fma.h:206: RN fmal(-0x1.85f81f88fa3c4p+0,-0x1.17648a494fa18p-1,0x1.37d305113b48p-10) want 0x1.aa367b7490e57p-1 got -0x1.7a59ecffffffep-12 ulperr -7501265072291840.000 = -0x1.aa65c6p+52 + -0x1.fffff4p-2
src/math/special/fma.h:207: RN fmal(-0x1.311f2b4319efcp+0,0x1.abbb5272e3d18p-1,0x1.35841b7bdbcfep-10) want -0x1.fd337f24b39ep-1 got 0x1.4cbc317ffffffp-11 ulperr 8963677814259712.000 = 0x1.fd86aep+52 + 0x1.ffffecp-2
src/math/special/fma.h:208: RN fmal(0x1.ab94369a9a0dp-1,0x1.9d1e0e0aa3bacp+0,0x1.0a63ca87cfa78p-11) want 0x1.592173ee296b6p+0 got -0x1.fd8043ffffff8p-13 ulperr -6072697209487360.000 = -0x1.59316p+52 + -0x1.fffffcp-2
src/math/special/fma.h:250: RZ fmal(0x1p+0,0x1p+0,-0x1p-1074) want 0x1.fffffffffffffp-1 got -0x1.fffffp-43 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p+0
src/math/special/fma.h:251: bad fp exception: RZ fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022)=0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:251: RZ fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.fffffffffffffp-1022 got 0x0p+0 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x0p+0
src/math/special/fma.h:252: bad fp exception: RZ fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022)=0x1.ffffffffffffep-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:252: RZ fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.ffffffffffffep-1022 got -0x0p+0 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p+0
src/math/special/fma.h:253: bad fp exception: RZ fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:253: RZ fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.fffffffffffffp-1022 got -0x0p+0 ulperr 9007198717870080.000 = 0x1.fffffep+52 + 0x0p+0
src/math/special/fma.h:254: bad fp exception: RZ fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.ffffffffffffep-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:254: RZ fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.ffffffffffffep-1022 got 0x0p+0 ulperr 9007198717870080.000 = 0x1.fffffcp+52 + 0x1p+0
src/math/special/fma.h:255: RZ fmal(0x1p-1074,-0x1p-1074,0x1p-1074) want 0x0p+0 got -0x0p+0 ulperr inf = inf + -0x1p+0
src/math/special/fma.h:256: RZ fmal(0x1p-1074,-0x1p-1074,-0x1p-1074) want -0x1p-1074 got -0x0p+0 ulperr 1.000 = 0x1p+0 + 0x0p+0
src/math/special/fma.h:257: RZ fmal(0x1.0000000000001p+0,0x1p+0,0x1p+53) want 0x1p+53 got 0x1.000008p+12 ulperr -4503599358935040.000 = -0x1.fffffcp+51 + -0x1p-1
src/math/special/fma.h:258: RZ fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p+53) want 0x1p+53 got 0x1.ffc02p+10 ulperr -4503599358935040.000 = -0x1.fffffcp+51 + -0x1p-1
src/math/special/fma.h:259: RZ fmal(0x1p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp+53) want 0x1.fffffffffffffp+53 got -0x1.ffffep+10 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:260: RZ fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep+53) want 0x1.ffffffffffffep+53 got 0x1.ffc02p+10 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:261: RZ fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p-52) want 0x1.0000000000001p+0 got -0x1.fffffp-42 ulperr -4503599627370496.000 = -0x1.fffffep+51 + -0x1p-1
src/math/special/fma.h:262: RZ fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp-53) want 0x1.0000000000001p+0 got -0x1.fffff8p-41 ulperr -4503599627370496.000 = -0x1.fffffep+51 + -0x1p-1
src/math/special/fma.h:263: RZ fmal(0x1.0000000000005p+0,0x1.ffffffffffffbp-1,0x1p-52) want 0x1.0000000000003p+0 got -0x1.8fffff8p-37 ulperr -4503599627370496.000 = -0x1.fffffep+51 + -0x1p-1
src/math/special/fma.h:264: RZ fmal(0x1.0000000000006p+0,0x1.ffffffffffffdp-1,0x1p-52) want 0x1.0000000000005p+0 got -0x1.1fffff8p-37 ulperr -4503599627370496.000 = -0x1.fffffep+51 + -0x1p-1
src/math/special/fma.h:283: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff4p+0 got 0x1.6800008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:284: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1p+0) want 0x1.ffffffffffff8p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:285: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffff6p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:286: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffff4p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:287: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffff6p+0 got 0x1.f800008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:288: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffff4p+0 got 0x1.f800008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:289: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffff6p+0 got 0x1.2000004p-36 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:290: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffff4p+0 got 0x1.2000004p-36 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:291: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.fffffffffffffp-1) want 0x1.ffffffffffff6p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:292: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffff4p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:293: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff2p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:294: RZ fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep-1) want 0x1.fffffffffffffp+0 got -0x1.fffffp-42 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:295: RZ fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffp-42 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:296: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.fffffffffffffp-1) want 0x1.fffffffffffffp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:297: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:298: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:299: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1p+0) want 0x1.fffffffffffffp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:300: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:301: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:302: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:303: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:304: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffffdp+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:305: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffbp+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:306: RZ fmal(0x1.5872449b765b9p+0,0x1.c9acf91f8de2bp+0,0x1.9265607e4d168p+0) want 0x1.fd190c77c2a67p+1 got -0x1.b3fc37becffffp-4 ulperr -9195828849672192.000 = -0x1.055c74p+53 + -0x1.fffc98p-2
src/math/special/fma.h:307: RZ fmal(0x1.81d010b146d0ep+0,0x1.2d3c680dc9071p+0,0x1.a80b69538754cp+0) want 0x1.b7040b44973a6p+1 got 0x1.4d0cb20197p+1 ulperr -1864177136173056.000 = -0x1.a7dd62p+50 + -0x1.0029a2p-1
src/math/special/fma.h:308: RZ fmal(0x1.6a44f2252b6a2p+0,0x1.da452a378b832p+0,0x1.1fe2ce329104p+0) want 0x1.df842b6f48b12p+1 got 0x1.12e95c1ba4p+0 ulperr -6017591705337856.000 = -0x1.560f7ap+52 + -0x1.00112ep-1
src/math/special/fma.h:309: RZ fmal(0x1.096b1d26463eep+0,0x1.d846d3e34333p+0,0x1.721e3480922b8p+0) want 0x1.ade2909c0269fp+1 got -0x1.a139d9b2bffffp-1 ulperr -9397595675820032.000 = -0x1.0b188p+53 + -0x1.ffe5ecp-2
src/math/special/fma.h:310: RZ fmal(0x1.99bd3434c454bp+0,0x1.03cb8e4115bdep+0,0x1.109f107188b08p+0) want 0x1.5837a47d37faep+1 got 0x1.cfdec0c00ap+0 ulperr -1975290892910592.000 = -0x1.c1210ep+50 + -0x1.001cfep-1
src/math/special/fma.h:311: RZ fmal(0x1.ba930a0a78ed2p+0,0x1.8c24e8d67f636p+0,0x1.ac49dbfbf8affp+0) want 0x1.164947ae6a5d9p+2 got -0x1.33e3b04ecffffp-2 ulperr -5234191281160192.000 = -0x1.29878p+52 + -0x1.fffb3p-2
src/math/special/fma.h:312: RZ fmal(0x1.be224ad773191p+0,0x1.d96b77169731fp+0,0x1.662cfb75d8edep+0) want 0x1.27cd67e720f78p+2 got 0x1.e4711611c78p+1 ulperr -942615600037888.000 = -0x1.aca6e4p+49 + -0x1.001e48p-1
src/math/special/fma.h:313: RZ fmal(0x1.59e7a1b0bdb3cp+0,0x1.2decba4d46421p+0,0x1.88f4062e96df5p+0) want 0x1.90749e4794f79p+1 got -0x1.b3c84a9a87fffp-1 ulperr -8961479327875072.000 = -0x1.fd66aep+52 + -0x1.ffe4c4p-2
src/math/special/fma.h:314: RZ fmal(0x1.22edf4b4da9a7p+0,0x1.dfa8d65f506cdp+0,0x1.2799208da2fbap+0) want 0x1.a45a1e99ed7a8p+1 got 0x1.a0bdfb8976p-1 ulperr -5562059420860416.000 = -0x1.3c2a9cp+52 + -0x1.000d06p-1
src/math/special/fma.h:315: RZ fmal(0x1.ad5b991a2a279p+0,0x1.f02fd26706024p+0,0x1.831cdd5c8797cp+0) want 0x1.30d3a2ac90a6p+2 got 0x1.c7c15e1c82p+1 ulperr -1353701616779264.000 = -0x1.33cbccp+50 + -0x1.001c7cp-1
src/math/special/fma.h:316: RZ fmal(0x1.531f9620e764ap+0,0x1.cad61b54d4425p+0,0x1.df817cae8a9afp+0) want 0x1.0fd4e7f8671dcp+2 got 0x1.8e74e26059p+1 ulperr -1277252004216832.000 = -0x1.2269d8p+50 + -0x1.0018e8p-1
src/math/special/fma.h:317: RZ fmal(0x1.629a5ad79494fp+0,0x1.049e58693f4c4p+0,0x1.45b0109e4d00cp+0) want 0x1.5758154e14965p+1 got -0x1.01173c9c1ffffp-3 ulperr -6322846842224640.000 = -0x1.676986p+52 + -0x1.fffbfcp-2
src/math/special/fma.h:318: RZ fmal(0x1.2f52b53f9240ap+0,0x1.1d5c686dbb0dap+0,0x1.6da3e392a4fd4p+0) want 0x1.5fe03a6795912p+1 got 0x1.5bdb7d9084p+0 ulperr -3130480060792832.000 = -0x1.63e4f4p+51 + -0x1.0015bep-1
src/math/special/fma.h:319: RZ fmal(0x1.058667552b49ep+0,0x1.23307bacc1c42p+0,0x1.5b059b47cd8f5p+0) want 0x1.423f752486d13p+1 got -0x1.4bfb042743fffp+0 ulperr -8589175993401344.000 = -0x1.e83cf4p+52 + -0x1.ffd68p-2
src/math/special/fma.h:320: RZ fmal(0x1.a717d95337ed8p+0,0x1.2b1c37846aaadp+0,0x1.be65672f885b1p+0) want 0x1.d65e72303c075p+1 got -0x1.7e0573ec03fffp+1 ulperr -14995406941323264.000 = -0x1.aa31fp+53 + -0x1.ffa07ep-2
src/math/special/fma.h:321: RZ fmal(0x1.deb79287b3d32p+0,0x1.62776b829babap+0,0x1.67daf18bd2eb1p+0) want 0x1.ff5a0d45c69d6p+1 got 0x1.ad881652ap-3 ulperr -8523519902089216.000 = -0x1.e48188p+52 + -0x1.00035cp-1
src/math/special/fma.h:322: RZ fmal(0x1.fbf12d3a6de91p+0,0x1.879fe6124f11p+0,0x1.9f3f1247a8641p+0) want 0x1.2a126c6980018p+2 got 0x1.45e3d61a84p+2 ulperr 489379747332096.000 = 0x1.bd169ap+48 + -0x1.0028bcp-1
src/math/special/fma.h:323: RZ fmal(0x1.c589628460e01p+0,0x1.e1bec1c797533p+0,0x1.349f30cdb84bbp+0) want 0x1.2286118b6f6e5p+2 got -0x1.8e9d95e0667ffp+1 ulperr -8617206560587776.000 = -0x1.e9d4dap+52 + -0x1.ffce2cp-2
src/math/special/fma.h:324: RZ fmal(0x1.46fd6c2c924ebp+0,0x1.65e2f02e730a1p+0,0x1.37739d2751098p+0) want 0x1.804a71c1f1272p+1 got 0x1.855d7947cbp+0 ulperr -3335623268106240.000 = -0x1.7b3768p+51 + -0x1.001856p-1
src/math/special/fma.h:325: RZ fmal(0x1.f99e595ae11fdp+0,0x1.bd33d9a1d81bp+0,0x1.932a2a2e244c1p+0) want 0x1.409e34f8f2f89p+2 got -0x1.7a49668943fffp+2 ulperr -12295260860317696.000 = -0x1.5d73cap+53 + -0x1.ffa16ep-2
src/math/special/fma.h:326: RZ fmal(0x1.59ea1e56bfe55p+0,0x1.6f46b7d412a44p+0,0x1.80f2bc9a32cc3p+0) want 0x1.b89c7640e32ffp+1 got -0x1.ca180bfb5ffffp-3 ulperr -8254993178034176.000 = -0x1.d53df4p+52 + -0x1.fff8d8p-2
src/math/special/fma.h:327: RZ fmal(0x1.61490fcb44129p+0,0x1.0038ec4fc35c2p+0,0x1.df7436ed7a7b7p+0) want 0x1.a085ea68d05cfp+1 got -0x1.5ed2c690f6fffp+1 ulperr -13499301254660096.000 = -0x1.7fac56p+53 + -0x1.ffa84cp-2
src/math/special/fma.h:328: RZ fmal(0x1.d41b98788502bp+0,0x1.1a7b77843aca6p+0,0x1.05be891837d36p+0) want 0x1.8523596ceced9p+1 got -0x1.48c8fc403bfffp-1 ulperr -8291801584631808.000 = -0x1.d75596p+52 + -0x1.ffeb74p-2
src/math/special/fma.h:329: RZ fmal(0x1.3153cf6f69af9p+0,0x1.aaa947e38e57ap+0,0x1.8519f9b590645p+0) want 0x1.c0fcab7b46368p+1 got 0x1.25f4f4bd5p-3 ulperr -7575453653008384.000 = -0x1.ae9d5ap+52 + -0x1.00024cp-1
src/math/special/fma.h:330: RZ fmal(0x1.c25a1f73581aap+0,0x1.0a51ffca372ap+0,0x1.0c77e3ebac5f3p+0) want 0x1.707ce48c7d72dp+1 got -0x1.3261c9a0dffffp+1 ulperr -11872435288670208.000 = -0x1.516f54p+53 + -0x1.ffb368p-2
src/math/special/fma.h:331: RZ fmal(0x1.829c2cde44b7p+0,0x1.f692e86d8cb36p+0,0x1.455e72d264bfp+0) want 0x1.0f16a3b8b3f97p+2 got -0x1.684386465ffffp+0 ulperr -6353494655107072.000 = -0x1.692782p+52 + -0x1.ffe97cp-2
src/math/special/fma.h:332: RZ fmal(0x1.94729588dcc69p+0,0x1.c3bb794c6edf8p+0,0x1.9da4e94d262d2p+0) want 0x1.19d4bd84d9fd2p+2 got 0x1.e1b9a2757p-1 ulperr -3898698849320960.000 = -0x1.bb3b1p+51 + -0x1.000786p-1
src/math/special/fma.h:333: RZ fmal(0x1.e6a5e7e39c3d5p+0,0x1.1b69af2bdd978p+0,0x1.e7ef1eafa119cp+0) want 0x1.00ac5b44c9f31p+2 got -0x1.6777d5d393fffp+1 ulperr -7677358731427840.000 = -0x1.b46844p+52 + -0x1.ffd312p-2
src/math/special/fma.h:334: bad fp exception: RZ fmal(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022)=0x1.b594d0e4368efp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:334: RZ fmal(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022) want 0x1.b594d0e4368efp-1022 got -0x1.9dedc9560fffep-1023 ulperr -11338968138252288.000 = -0x1.4245d8p+53 + -0x1.ffcc42p-2
src/math/special/fma.h:335: RZ fmal(0x1.022db53c98d14p-1022,0x1.21157eef74848p-2,0x1.2f880432b1bc1p-1022) want 0x1.786ad60a02b3dp-1022 got -0x1.150255ac97fffp-1022 ulperr -11495198647386112.000 = -0x1.46b692p+53 + -0x1.ffbacp-2
src/math/special/fma.h:336: bad fp exception: RZ fmal(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022)=0x1.cbb085199a3f5p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:336: RZ fmal(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022) want 0x1.cbb085199a3f5p-1022 got -0x1.6ed115da2f7fep-1023 ulperr -11313497908445184.000 = -0x1.418c86p+53 + -0x1.ffd226p-2
src/math/special/fma.h:337: RZ fmal(0x1.adbc3a9d816dep-1022,0x1.e039d4431e3cdp-2,0x1.93ceef6fe18a2p-1022) want 0x1.2eabb7dc0e2fp-1021 got 0x1.ef7b6794e3p-1023 ulperr -3145487213395968.000 = -0x1.6599b8p+51 + -0x1.000f7cp-1
src/math/special/fma.h:338: RZ fmal(0x1.645aa5c2df3afp-1022,0x1.649edfcad854fp-2,0x1.8b43e0bbaeb01p-1022) want 0x1.03af571d2b504p-1021 got 0x1.0ce86163c02p-1021 ulperr 162249436037120.000 = 0x1.272148p+47 + -0x1.00219ep-1
src/math/special/fma.h:339: bad fp exception: RZ fmal(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022)=0x1.ad9ce7fcefa3fp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:339: RZ fmal(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022) want 0x1.ad9ce7fcefa3fp-1022 got -0x1.12bc4931e5ff8p-1025 ulperr -8161979755659264.000 = -0x1.cff46ep+52 + -0x1.fff76ap-2
src/math/special/fma.h:340: RZ fmal(0x1.8ee3feb00c3e7p-1022,0x1.53bd9353313bcp-2,0x1.5501b57dc3b6fp-1022) want 0x1.d9598906f0bb3p-1022 got -0x1.4660b83f56fffp-1022 ulperr -14068955652030464.000 = -0x1.8fdd1ep+53 + -0x1.ffae68p-2
src/math/special/fma.h:341: RZ fmal(0x1.161225cfa61e2p-1022,0x1.b6dd69a0af5bp-2,0x1.924ffc3ead5c3p-1022) want 0x1.04be6fc25367bp-1021 got -0x1.f3ab56daa7fffp-1022 ulperr -8982192344530944.000 = -0x1.fe9418p+52 + -0x1.ffc18ap-2
src/math/special/fma.h:342: bad fp exception: RZ fmal(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022)=0x1.70b6c3169f043p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:342: RZ fmal(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022) want 0x1.70b6c3169f043p-1022 got -0x1.a779baefbe7fep-1023 ulperr -10211413595258880.000 = -0x1.2239cep+53 + -0x1.ffcb1p-2
src/math/special/fma.h:343: RZ fmal(0x1.ce0e2ea55040ep-1022,0x1.ce5a55fa3828dp-2,0x1.f2f444d50ce59p-1022) want 0x1.61ca36f5a8a79p-1021 got -0x1.173f0cea127ffp-1022 ulperr -8680213730820096.000 = -0x1.ed69bap+52 + -0x1.ffdd18p-2
src/math/special/fma.h:344: bad fp exception: RZ fmal(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022)=0x1.1440cf1c105ebp-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:344: RZ fmal(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022) want 0x1.1440cf1c105ebp-1021 got -0x1.f88fda5ffffp-1030 ulperr -4877233327964160.000 = -0x1.153d14p+52 + -0x1.ffffcp-2
src/math/special/fma.h:345: bad fp exception: RZ fmal(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022)=0x1.1186e1f77012dp-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:345: RZ fmal(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022) want 0x1.1186e1f77012dp-1021 got -0x1.2ffba526fbff8p-1025 ulperr -5146168610783232.000 = -0x1.24869ap+52 + -0x1.fffb4p-2
src/math/special/fma.h:346: bad fp exception: RZ fmal(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022)=0x1.8d86310bad175p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:346: RZ fmal(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022) want 0x1.8d86310bad175p-1022 got -0x1.1b755c367f7fep-1023 ulperr -9486645380251648.000 = -0x1.0da06cp+53 + -0x1.ffdc92p-2
src/math/special/fma.h:347: RZ fmal(0x1.fb3391a4b1d23p-1022,0x1.4d8705b057caep-2,0x1.d026cb6dae73bp-1022) want 0x1.3aad18b424c67p-1021 got -0x1.0a1784c7c6bffp-1021 ulperr -10216978799132672.000 = -0x1.22624cp+53 + -0x1.ffbd7ap-2
src/math/special/fma.h:348: bad fp exception: RZ fmal(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022)=0x1.c0048fd33a417p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:348: RZ fmal(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022) want 0x1.c0048fd33a417p-1022 got -0x1.d026e457f0ffcp-1024 ulperr -9922974329077760.000 = -0x1.1a0722p+53 + -0x1.ffe2fep-2
src/math/special/fma.h:349: RZ fmal(0x1.aa9eff070281cp-1022,0x1.fab05661b48ebp-2,0x1.cbe2af6c69c6ep-1022) want 0x1.4f7ddbe122764p-1021 got 0x1.9e529858dap-1023 ulperr -4079820841418752.000 = -0x1.cfd268p+51 + -0x1.000cf2p-1
src/math/special/fma.h:350: bad fp exception: RZ fmal(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022)=0x1.e0e762ee2e7c5p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:350: RZ fmal(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022) want 0x1.e0e762ee2e7c5p-1022 got -0x1.e2fe0f96ebffep-1023 ulperr -12708595627982848.000 = -0x1.693332p+53 + -0x1.ffc3ap-2
src/math/special/fma.h:351: RZ fmal(0x1.4dab43918a9a8p-1022,0x1.ed667442b4751p-2,0x1.3f25f82e02e3ep-1022) want 0x1.dfec0ee732dcap-1022 got 0x1.6a41c4d18ap-1022 ulperr -2069987942465536.000 = -0x1.d6a926p+50 + -0x1.002d48p-1
src/math/special/fma.h:352: RZ fmal(0x1.7943735951931p-1022,0x1.fa6a357c5c9ddp-2,0x1.0bed44b0b71b4p-1022) want 0x1.c6803a6059abep-1022 got 0x1.0e970cce134p-1022 ulperr -3235393763803136.000 = -0x1.6fd258p+51 + -0x1.0021d2p-1
src/math/special/fma.h:353: bad fp exception: RZ fmal(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022)=0x1.8640492c45959p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:353: RZ fmal(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022) want 0x1.8640492c45959p-1022 got -0x1.3271a1b37ffep-1027 ulperr -7033839486500864.000 = -0x1.8fd3d4p+52 + -0x1.fffd9cp-2
src/math/special/fma.h:354: RZ fmal(0x1.f52172c56bdf5p-1022,0x1.672b2de422734p-2,0x1.7bc5d708e5a34p-1022) want 0x1.15c5b95145cc6p-1021 got 0x1.3cf4f71d188p-1021 ulperr 689341647028224.000 = 0x1.3979eep+49 + -0x1.00279ep-1
src/math/special/fma.h:355: bad fp exception: RZ fmal(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022)=0x1.e7fa0dd76fbefp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:355: RZ fmal(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022) want 0x1.e7fa0dd76fbefp-1022 got -0x1.60a5d541afffcp-1024 ulperr -10135538703007744.000 = -0x1.2011bep+53 + -0x1.ffe9f6p-2
src/math/special/fma.h:356: bad fp exception: RZ fmal(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022)=0x1.b63a7f56fce1fp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:356: RZ fmal(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022) want 0x1.b63a7f56fce1fp-1022 got -0x1.497a9bc51fffcp-1024 ulperr -9158460486713344.000 = -0x1.044c9p+53 + -0x1.ffeb68p-2
src/math/special/fma.h:357: RZ fmal(0x1.f73d5f4e81fd8p-1022,0x1.7ccff2642124ap-2,0x1.e7d836a0c8308p-1022) want 0x1.517f1763126d3p-1021 got -0x1.06939f3371fffp-1021 ulperr -10556596895612928.000 = -0x1.2c0958p+53 + -0x1.ffbe5cp-2
src/math/special/fma.h:358: RZ fmal(0x1.b4328925969fbp-1022,0x1.8fa02832a22d5p-2,0x1.2084598e2f8c6p-1022) want 0x1.cabf43838dc51p-1022 got -0x1.7c61d65f0a3ffp-1022 ulperr -14762118276448256.000 = -0x1.a3908ap+53 + -0x1.ffa0e8p-2
src/math/special/fma.h:359: RZ fmal(0x1.66ee60a92676fp-1022,0x1.eddd2e7681ce4p-2,0x1.b81d57daeb3a7p-1022) want 0x1.329c918ffb682p-1021 got 0x1.cd379885b8p-1025 ulperr -4886854591578112.000 = -0x1.15c916p+52 + -0x1.00039ap-1
src/math/special/fma.h:360: RZ fmal(0x1.ff2737585895dp-1022,0x1.fb4bf3828ae4ap-2,0x1.4a866847740fp-1022) want 0x1.23e07e4dbbeaap-1021 got 0x1.46c53f7571p-1023 ulperr -3697601232764928.000 = -0x1.a45e5ap+51 + -0x1.000a36p-1
src/math/special/fma.h:361: RZ fmal(0x1.5e2008d269a86p-1022,0x1.507bbbe4d78eep-2,0x1.6220c6f83f636p-1022) want 0x1.d52d9874f1c74p-1022 got 0x1.eda0503c4ap-1023 ulperr -3911886277967872.000 = -0x1.bcbadep+51 + -0x1.001edap-1
src/math/special/fma.h:362: bad fp exception: RZ fmal(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022)=0x1.9864925e2fb0fp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:362: RZ fmal(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022) want 0x1.9864925e2fb0fp-1022 got -0x1.53ae580e8bff8p-1025 ulperr -7931489261977600.000 = -0x1.c2da5ap+52 + -0x1.fff562p-2
src/math/special/fma.h:363: RZ fmal(0x1.7b353b81e793dp-1022,0x1.82b426f874c6dp-2,0x1.d92b19d21fd5cp-1022) want 0x1.342fb0c544a78p-1021 got 0x1.2af4c8aebe4p-1022 ulperr -2792024021401600.000 = -0x1.3d6a96p+51 + -0x1.0012bp-1
src/math/special/fma.h:364: RZ fmal(0x1.5be667823370ap-1022,0x1.a8a99b163869bp-2,0x1.95456b68dc3bcp-1022) want 0x1.12c638de03c7p-1021 got 0x1.49af7fc787p-1023 ulperr -3383908095754240.000 = -0x1.80b4aep+51 + -0x1.000a4ep-1
src/math/special/fma.h:365: RZ fmal(0x1.17b0fc6c850e5p-1022,0x1.d1d0a4853c315p-2,0x1.36b79f7c0c24p-1022) want 0x1.b5f2baff5635cp-1022 got 0x1.6a19304724p-1026 ulperr -7306333686595584.000 = -0x1.9f5124p+52 + -0x1.0002d4p-1
src/math/special/fma.h:366: RZ fmal(0x1.bd97819bacfd8p-1022,0x1.2c25f267ba4eep-2,0x1.804b5204a3f3ap-1022) want 0x1.01739c190fd96p-1021 got 0x1.b9e166e6b4p-1022 ulperr -642314640818176.000 = -0x1.241742p+49 + -0x1.001b9ep-1
src/math/special/fma.h:367: RZ fmal(0x1.596577053873dp-1022,0x1.3562ab2d29949p-2,0x1.b3f1ee75db6e7p-1022) want 0x1.0e268a498009ap-1021 got 0x1.e8136bc1594p-1022 ulperr -459377991483392.000 = -0x1.a1cd44p+48 + -0x1.001e82p-1
src/math/special/fma.h:368: RZ fmal(0x1.3c7a68cf0f7b3p-1022,0x1.9a55c15b167bdp-2,0x1.7635b7b163c07p-1022) want 0x1.f5073b93b7b8p-1022 got 0x1.75f9a972138p-1023 ulperr -5524660993130496.000 = -0x1.3a0a64p+52 + -0x1.00176p-1
src/math/special/fma.h:369: RZ fmal(0x1.5825164bc4068p-1022,0x1.dcbb6e5ff3245p-2,0x1.52fc3be0e84dap-1022) want 0x1.f334771c2dcfap-1022 got 0x1.2b86ba6b02p-1022 ulperr -3512783958179840.000 = -0x1.8f5b76p+51 + -0x1.00257p-1
src/math/special/fma.h:370: RZ fmal(0x1.139ea77b760ecp+1022,0x1.9b25f2fd017eap+2,-0x1.bc16788922b6fp+1023) want 0x1.b93aac527380ep+1023 got 0x1.c3ec4f2eep+1022 ulperr -3787028357447680.000 = -0x1.ae8906p+51 + -0x1.001c3ep-1
src/math/special/fma.h:371: RZ fmal(0x1.0e6f9c1657d7cp+1022,0x1.4d5c6b55ab5f1p+2,-0x1.e027dd5742e2cp+1023) want 0x1.c0538372b4bbep+1022 got 0x1.54dede6dep+1021 ulperr -4888708943708160.000 = -0x1.15e412p+52 + -0x1.00154ep-1
src/math/special/fma.h:372: RZ fmal(0x1.1182524fa411cp+1022,0x1.a3dba56842d19p+2,-0x1.c1ad59474d71fp+1023) want 0x1.bf78969300a76p+1023 got 0x1.8651491efp+1022 ulperr -4438724683235328.000 = -0x1.f89fe2p+51 + -0x1.001866p-1
src/math/special/fma.h:373: RZ fmal(0x1.1cbf4fb8ec82p+1022,0x1.5e32019a84fbbp+2,-0x1.985af08f32edep+1023) want 0x1.72af6bbad4a28p+1023 got 0x1.a68c1c1ecp+1023 ulperr 912367084896256.000 = 0x1.9ee582p+49 + -0x1.0034d2p-1
src/math/special/fma.h:374: RZ fmal(0x1.311e25c6db346p+1022,0x1.4e30db6c4b51dp+2,-0x1.7681f7a9786a7p+1023) want 0x1.a61d29434fc13p+1023 got -0x1.791d1988fffffp+1017 ulperr -7529566222417920.000 = -0x1.ac019ap+52 + -0x1.fffe86p-2
src/math/special/fma.h:375: RZ fmal(0x1.1201cf577052fp+1022,0x1.59730b2db7a16p+2,-0x1.56f1a64a078d5p+1023) want 0x1.8c8d801df34d9p+1023 got -0x1.3048609fd7fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ffd9f6p-2
src/math/special/fma.h:376: RZ fmal(0x1.3e52335b76e81p+1022,0x1.4dbd56f857479p+2,-0x1.509340c11bd2ep+1023) want 0x1.ed6576837f653p+1023 got -0x1.e498d5441bfffp+1022 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ffc36cp-2
src/math/special/fma.h:377: RZ fmal(0x1.18566b4f843cbp+1022,0x1.444fba10eaf29p+2,-0x1.f927beae57f0ap+1023) want 0x1.9a433b9796559p+1022 got 0x1.a048d2820cp+1022 ulperr 105937222238208.000 = 0x1.8165bap+46 + -0x1.ff6812p-2
src/math/special/fma.h:378: RZ fmal(0x1.3fbe544fe1be8p+1022,0x1.2d2a5fda03639p+2,-0x1.007407dbfd03cp+1023) want 0x1.efdb644b613e5p+1023 got -0x1.e14223655ffffp+1022 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ffc3d8p-2
src/math/special/fma.h:379: RZ fmal(0x1.263a0d3bc2e4p+1022,0x1.4cc198adbc651p+2,-0x1.734b1c1f7fdb8p+1023) want 0x1.899878afc0fa2p+1023 got 0x1.a13620448p+1023 ulperr 415454199808000.000 = 0x1.79da78p+48 + -0x1.003426p-1
src/math/special/fma.h:380: RZ fmal(0x1.5bf4aec8efc8ep+1022,0x1.555f0341516c9p+2,-0x1.c706408acd14cp+1023) want 0x1.d8f5e18b868bcp+1023 got 0x1.3e5679fdf8p+1022 ulperr -5520279589617664.000 = -0x1.39caa2p+52 + -0x1.0013e6p-1
src/math/special/fma.h:381: RZ fmal(0x1.1e57f1af78279p+1022,0x1.34bc0c7f082b3p+2,-0x1.497b92c1365edp+1023) want 0x1.692cb7ec68a93p+1023 got -0x1.c0a1f29b27fffp+1021 ulperr -8326959113175040.000 = -0x1.d95532p+52 + -0x1.ffe3f6p-2
src/math/special/fma.h:382: RZ fmal(0x1.1d9824cd73511p+1022,0x1.1d557ddfe47ffp+2,-0x1.556cdb1d20a72p+1023) want 0x1.2736a6b6e35f2p+1023 got 0x1.bc6f9c9778p+1021 ulperr -3238800209739776.000 = -0x1.70357cp+51 + -0x1.000de4p-1
src/math/special/fma.h:383: RZ fmal(0x1.1ff85a24aff31p+1022,0x1.39ab374b2680dp+2,-0x1.35e6b07b651b8p+1023) want 0x1.8bc7ce208708p+1023 got 0x1.84b319bafap+1023 ulperr -124568110891008.000 = -0x1.c52d16p+46 + -0x1.003096p-1
src/math/special/fma.h:384: RZ fmal(0x1.0449b3965227ep+1022,0x1.4430d4441f9f2p+2,-0x1.a6966c96307ep+1023) want 0x1.d94eda8c81771p+1022 got -0x1.992ed6b71ffffp+1021 ulperr -11925733685329920.000 = -0x1.52f32p+53 + -0x1.ffccdap-2
src/math/special/fma.h:385: RZ fmal(0x1.3c91fa00fd0c7p+1022,0x1.1b6661c0b0303p+2,-0x1.f1f2846b64483p+1023) want 0x1.95eae0d2644d3p+1022 got 0x1.9985d8eaap+1019 ulperr -6240425346072576.000 = -0x1.62ba22p+52 + -0x1.ff0cccp-2
src/math/special/fma.h:386: RZ fmal(0x1.0979b36d46534p+1022,0x1.12fa205f41f7fp+2,-0x1.a83ecf4544a63p+1023) want 0x1.2420f34e2aa3cp+1022 got -0x1.335a0fe67ffffp+1019 ulperr -5815056080044032.000 = -0x1.4a8c32p+52 + -0x1.007b32p-1
src/math/special/fma.h:387: RZ fmal(0x1.4c89df582a599p+1022,0x1.55f3dc473ea8fp+2,-0x1.e35037292ddfp+1023) want 0x1.95109fdbc3771p+1023 got -0x1.afa3b29623fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ffca0cp-2
src/math/special/fma.h:388: RZ fmal(0x1.35ee0a669c4fbp+1022,0x1.2263cb63f386ap+2,-0x1.449218ae35ac7p+1023) want 0x1.7a8ed977d817ap+1023 got 0x1.47da9ddfb8p+1022 ulperr -3775828693352448.000 = -0x1.ad4312p+51 + -0x1.00147ep-1
src/math/special/fma.h:389: RZ fmal(0x1.117cc860f61bcp+1022,0x1.440985b25d994p+2,-0x1.d7a7d82000449p+1023) want 0x1.b960b7088e74fp+1022 got 0x1.ddfba372cp+1022 ulperr 643964914892800.000 = 0x1.24d762p+49 + -0x1.ff777ep-2
src/math/special/fma.h:390: RZ fmal(0x1.1e78a37be320fp+1022,0x1.0db0fce62287bp+2,-0x1.376337da5eb53p+1023) want 0x1.24326b9956dfbp+1023 got -0x1.d2881b3595fffp+1023 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ff8b5ep-2
src/math/special/fma.h:391: RZ fmal(0x1.0c79b5c8331c2p+1022,0x1.0aba6ea746b5p+2,-0x1.c86f1fcaf0741p+1023) want 0x1.9c135bb2cff84p+1021 got -0x1.cc298babfffffp+1019 ulperr -9273125376098304.000 = -0x1.078edcp+53 + -0x1.00f19ep-1
src/math/special/fma.h:392: RZ fmal(0x1.556c4c072f272p+1022,0x1.347758d7d4eb5p+2,-0x1.c6fe4f24b248dp+1023) want 0x1.6fcc9f756df6dp+1023 got -0x1.f6f4c76597fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ffc122p-2
src/math/special/fma.h:393: RZ fmal(-0x1.e8349b891b2fp-1,0x1.4a6dec9b72578p-1,0x1.3b6151ce809ddp-1) want 0x1.3a62fe330b355p-11 got -0x1.d97120fffffffp-11 ulperr -13859626462216192.000 = -0x1.89ea0cp+53 + -0x1.ff89a4p-2
src/math/special/fma.h:394: RZ fmal(0x1.2996632ac7d74p-1,-0x1.bb3c58b654d94p-1,0x1.01a6660e64a31p-1) want 0x1.ed045bb956a8ep-15 got -0x1.070d61fffffffp-15 ulperr -13300911346548736.000 = -0x1.7a08dcp+53 + -0x1.eabe3cp-2
src/math/special/fma.h:395: RZ fmal(-0x1.c602e894c1df8p-1,0x1.a1c980e7d3f94p-1,0x1.7271244b43386p-1) want -0x1.ba251fe026e5bp-15 got -0x1.af2b6cp-15 ulperr 193081294979072.000 = 0x1.5f367ap+47 + 0x1.fa6bcap-2
src/math/special/fma.h:396: RZ fmal(-0x1.c84baf47e85cp-1,0x1.770b5149ef2ep-1,0x1.4d80f139320bap-1) want -0x1.79277433b9e23p-10 got 0x1.d4b6effffffffp-11 ulperr 10757822555881472.000 = 0x1.31c174p+53 + 0x1.ffc56ap-2
src/math/special/fma.h:397: RZ fmal(-0x1.36e667dcf9c6p-1,0x1.2591f82556b88p-1,0x1.2452a0f795f95p-1) want 0x1.c83c8e63c159fp-3 got -0x1.221ccbfffffffp-12 ulperr -8036166204915712.000 = -0x1.c8cd9ap+52 + -0x1.ffffdcp-2
src/math/special/fma.h:398: RZ fmal(0x1.88b2cede61e4cp-1,-0x1.71dcab5ad9e9p-3,0x1.32b27fea2ae97p-3) want 0x1.70461909b25e2p-7 got -0x1.affe57fffffffp-17 ulperr -6486162973655040.000 = -0x1.70b216p+52 + -0x1.ffffe6p-2
src/math/special/fma.h:399: RZ fmal(0x1.8d1e44002c98p-3,-0x1.af9fdfb347834p-1,0x1.e280942fb4146p-4) want -0x1.761ac23896dfdp-5 got 0x1.0bec47fffffffp-14 ulperr 6590522089013248.000 = 0x1.76a0b6p+52 + 0x1.ffffdep-2
src/math/special/fma.h:400: RZ fmal(0x1.236e8cb9492c8p-1,-0x1.d37443a57f1c4p-1,0x1.ca10df801aabcp-4) want -0x1.a1a2cdf0138f9p-2 got 0x1.f090cab6fffffp-5 ulperr 8439088361242624.000 = 0x1.dfb4e4p+52 + 0x1.fff07cp-2
src/math/special/fma.h:401: RZ fmal(-0x1.6ad943e610fb8p-1,-0x1.cef92a7bb18bcp-1,0x1.f28587d8fb0ep-4) want 0x1.866b5204b9aecp-1 got -0x1.8c9eb9a6fffffp-5 ulperr -7304415446827008.000 = -0x1.9f353ap+52 + -0x1.fff9cep-2
src/math/special/fma.h:402: RZ fmal(-0x1.60a8569a5d894p-1,-0x1.ca07e29dd171cp-1,0x1.b6c475ace09ecp-4) want 0x1.72549291e2f7ap-1 got -0x1.b6fd181e7ffffp-5 ulperr -6997593720619008.000 = -0x1.8dc462p+52 + -0x1.fff924p-2
src/math/special/fma.h:403: RZ fmal(0x1.d1962720d678cp-1,-0x1.4548ee45c4084p-1,0x1.f416ab193d75cp-4) want -0x1.d2929879dc853p-2 got 0x1.fc38e6f3fffffp-8 ulperr 8347731722502144.000 = 0x1.da837ap+52 + 0x1.fffe04p-2
src/math/special/fma.h:404: RZ fmal(-0x1.9ddcb295a7d64p-1,0x1.67fb3a2068a78p-1,0x1.da9cd4597fe0ap-4) want -0x1.cf4f6eb4fc5d8p-2 got 0x1.59da5511fffffp-6 ulperr 8530909930192896.000 = 0x1.e4ed12p+52 + 0x1.fffa98p-2
src/math/special/fma.h:405: RZ fmal(0x1.c00d16ed45b88p+0,0x1.c787eddda3664p+0,0x1.1e3e6f0cc1802p-5) want 0x1.931b8f379dcc3p+1 got -0x1.63fb63b7fffffp-6 ulperr -7140470102687744.000 = -0x1.95e382p+52 + -0x1.ffff4ep-2
src/math/special/fma.h:406: RZ fmal(0x1.19c2a2372c184p+0,-0x1.cb506961c19fp+0,0x1.db1abf3f7ba3ap-6) want -0x1.f21c0eab0bc18p+0 got 0x1.a29607ffffff8p-13 ulperr 8763735275470848.000 = 0x1.f2292p+52 + 0x1.fffffcp-2
src/math/special/fma.h:407: RZ fmal(-0x1.3a263218ccd1cp+0,-0x1.e818d390df27cp+0,0x1.2a81ed71785f5p-5) want 0x1.3025ab0f63925p+1 got -0x1.bfdf0b9bfffffp-6 ulperr -5412167746584576.000 = -0x1.33a566p+52 + -0x1.ffff2p-2
src/math/special/fma.h:408: RZ fmal(0x1.b0b041fbaca58p+0,-0x1.9d5f76d178e6p+0,0x1.0215c7bb84cf9p-6) want -0x1.5b52aec7ef4p+1 got 0x1.6be7a77ffffffp-7 ulperr 6135177709355008.000 = 0x1.5cbe94p+52 + 0x1.ffffa6p-2
src/math/special/fma.h:409: RZ fmal(-0x1.377549d9a87f4p+0,-0x1.a13d4a03dd6d8p+0,0x1.f190388bc5cc6p-7) want 0x1.ff83bebbd6fe4p+0 got -0x1.e5a6a43ffffffp-9 ulperr -9015346807701504.000 = -0x1.003b46p+53 + -0x1.ffffc4p-2
src/math/special/fma.h:410: RZ fmal(0x1.6a726c0762ac8p-1,-0x1.d32f2d30e483cp+0,0x1.f953eb70fbde6p-7) want -0x1.46c61b3070332p+0 got 0x1.e556e47fffffep-11 ulperr 5752835425697792.000 = 0x1.4702c4p+52 + 0x1.fffffp-2
src/math/special/fma.h:411: RZ fmal(0x1.94cf2509d40cp-1,0x1.721976af6dfbp+0,0x1.f51a456921c3ep-7) want 0x1.28880842acc6p+0 got -0x1.effe1dfffffffp-8 ulperr -5250719389057024.000 = -0x1.2a7804p+52 + -0x1.ffff84p-2
src/math/special/fma.h:412: RZ fmal(0x1.b128eb0ad8728p-1,0x1.7682566a54268p+0,0x1.bd4122a074cafp-8) want 0x1.3e9469530e762p+0 got -0x1.6fe0c7bffffffp-9 ulperr -5617153650720768.000 = -0x1.3f4c56p+52 + -0x1.ffffd2p-2
src/math/special/fma.h:413: RZ fmal(0x1.c4ae75976e35cp+0,-0x1.11c329dd1160cp+0,0x1.9993f5e13c9bdp-8) want -0x1.e27d925b07cf1p+0 got 0x1.198edf5ffffffp-9 ulperr 8497736676540416.000 = 0x1.e30a56p+52 + 0x1.ffffdcp-2
src/math/special/fma.h:414: RZ fmal(-0x1.85f81f88fa3c4p+0,-0x1.17648a494fa18p-1,0x1.37d305113b48p-10) want 0x1.aa367b7490e57p-1 got -0x1.7a59ecffffffep-12 ulperr -7501265072291840.000 = -0x1.aa65c4p+52 + -0x1.fffff4p-2
src/math/special/fma.h:415: RZ fmal(-0x1.311f2b4319efcp+0,0x1.abbb5272e3d18p-1,0x1.35841b7bdbcfep-10) want -0x1.fd337f24b39ep-1 got 0x1.4cbc317ffffffp-11 ulperr 8963677814259712.000 = 0x1.fd86acp+52 + 0x1.ffffecp-2
src/math/special/fma.h:416: RZ fmal(0x1.ab94369a9a0dp-1,0x1.9d1e0e0aa3bacp+0,0x1.0a63ca87cfa78p-11) want 0x1.592173ee296b6p+0 got -0x1.fd8043ffffff8p-13 ulperr -6072696672616448.000 = -0x1.59315cp+52 + -0x1.fffffcp-2
src/math/special/fma.h:458: RD fmal(0x1p+0,0x1p+0,-0x1p-1074) want 0x1.fffffffffffffp-1 got -0x1.fffffp-43 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p+0
src/math/special/fma.h:459: bad fp exception: RD fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022)=0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:459: RD fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.fffffffffffffp-1022 got 0x0p+0 ulperr -9007199254740992.000 = -0x1p+53 + 0x0p+0
src/math/special/fma.h:460: bad fp exception: RD fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022)=0x1.ffffffffffffep-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:460: RD fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.ffffffffffffep-1022 got -0x1p-1074 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p+0
src/math/special/fma.h:461: bad fp exception: RD fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:461: RD fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1p-1021 got -0x1p-1074 ulperr 4503599358935040.000 = 0x1.fffffep+51 + -0x1p-1
src/math/special/fma.h:462: bad fp exception: RD fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:462: RD fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.fffffffffffffp-1022 got 0x0p+0 ulperr 9007198717870080.000 = 0x1.fffffep+52 + 0x0p+0
src/math/special/fma.h:463: RD fmal(0x1p-1074,-0x1p-1074,0x1p-1074) want 0x0p+0 got -0x1p-1074 ulperr -2.000 = -0x1p+0 + -0x1p+0
src/math/special/fma.h:464: RD fmal(0x1p-1074,-0x1p-1074,-0x1p-1074) want -0x1p-1073 got -0x1p-1074 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/special/fma.h:465: RD fmal(0x1.0000000000001p+0,0x1p+0,0x1p+53) want 0x1p+53 got 0x1.000008p+12 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:466: RD fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p+53) want 0x1p+53 got 0x1.ffc02p+10 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:467: RD fmal(0x1p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp+53) want 0x1.fffffffffffffp+53 got -0x1.ffffep+10 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:468: RD fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep+53) want 0x1.ffffffffffffep+53 got 0x1.ffc02p+10 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:469: RD fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p-52) want 0x1.0000000000001p+0 got -0x1.fffffp-42 ulperr -4503600164241408.000 = -0x1.000002p+52 + -0x1p-1
src/math/special/fma.h:470: RD fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp-53) want 0x1.0000000000001p+0 got -0x1.fffff8p-41 ulperr -4503600164241408.000 = -0x1.000002p+52 + -0x1p-1
src/math/special/fma.h:471: RD fmal(0x1.0000000000005p+0,0x1.ffffffffffffbp-1,0x1p-52) want 0x1.0000000000003p+0 got -0x1.8fffff8p-37 ulperr -4503600164241408.000 = -0x1.000002p+52 + -0x1p-1
src/math/special/fma.h:472: RD fmal(0x1.0000000000006p+0,0x1.ffffffffffffdp-1,0x1p-52) want 0x1.0000000000005p+0 got -0x1.1fffff8p-37 ulperr -4503600164241408.000 = -0x1.000002p+52 + -0x1p-1
src/math/special/fma.h:491: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff4p+0 got 0x1.6800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:492: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1p+0) want 0x1.ffffffffffff8p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:493: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffff6p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:494: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffff4p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:495: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffff6p+0 got 0x1.f800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:496: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffff4p+0 got 0x1.f800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:497: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffff6p+0 got 0x1.2000004p-36 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:498: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffff4p+0 got 0x1.2000004p-36 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:499: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.fffffffffffffp-1) want 0x1.ffffffffffff6p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:500: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffff4p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:501: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff2p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:502: RD fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep-1) want 0x1.fffffffffffffp+0 got -0x1.fffffp-42 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:503: RD fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffp-42 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:504: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.fffffffffffffp-1) want 0x1.fffffffffffffp+0 got -0x1.fffff8p-41 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:505: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffff8p-41 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:506: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffff8p-41 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:507: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1p+0) want 0x1.fffffffffffffp+0 got -0x1.7ffffcp-40 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:508: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp+0 got -0x1.7ffffcp-40 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:509: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp+0 got -0x1.7ffffcp-40 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:510: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffcp-40 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:511: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffffcp-40 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:512: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffffdp+0 got -0x1.3ffffep-39 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:513: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffbp+0 got -0x1.3ffffep-39 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:514: RD fmal(0x1.5872449b765b9p+0,0x1.c9acf91f8de2bp+0,0x1.9265607e4d168p+0) want 0x1.fd190c77c2a67p+1 got -0x1.b3fc37bedp-4 ulperr -9195829923414016.000 = -0x1.055c78p+53 + -0x1.fffc98p-2
src/math/special/fma.h:515: RD fmal(0x1.81d010b146d0ep+0,0x1.2d3c680dc9071p+0,0x1.a80b69538754cp+0) want 0x1.b7040b44973a6p+1 got 0x1.4d0cb20197p+1 ulperr -1864177270390784.000 = -0x1.a7dd66p+50 + -0x1.0029a2p-1
src/math/special/fma.h:516: RD fmal(0x1.6a44f2252b6a2p+0,0x1.da452a378b832p+0,0x1.1fe2ce329104p+0) want 0x1.df842b6f48b12p+1 got 0x1.12e95c1ba4p+0 ulperr -6017592242208768.000 = -0x1.560f7ep+52 + -0x1.00112ep-1
src/math/special/fma.h:517: RD fmal(0x1.096b1d26463eep+0,0x1.d846d3e34333p+0,0x1.721e3480922b8p+0) want 0x1.ade2909c0269fp+1 got -0x1.a139d9b2cp-1 ulperr -9397596749561856.000 = -0x1.0b1884p+53 + -0x1.ffe5ecp-2
src/math/special/fma.h:518: RD fmal(0x1.99bd3434c454bp+0,0x1.03cb8e4115bdep+0,0x1.109f107188b08p+0) want 0x1.5837a47d37faep+1 got 0x1.cfdec0c00ap+0 ulperr -1975291027128320.000 = -0x1.c12112p+50 + -0x1.001cfep-1
src/math/special/fma.h:519: RD fmal(0x1.ba930a0a78ed2p+0,0x1.8c24e8d67f636p+0,0x1.ac49dbfbf8affp+0) want 0x1.164947ae6a5d9p+2 got -0x1.33e3b04edp-2 ulperr -5234191818031104.000 = -0x1.298784p+52 + -0x1.fffb3p-2
src/math/special/fma.h:520: RD fmal(0x1.be224ad773191p+0,0x1.d96b77169731fp+0,0x1.662cfb75d8edep+0) want 0x1.27cd67e720f78p+2 got 0x1.e4711611c78p+1 ulperr -942615667146752.000 = -0x1.aca6e8p+49 + -0x1.001e48p-1
src/math/special/fma.h:521: RD fmal(0x1.59e7a1b0bdb3cp+0,0x1.2decba4d46421p+0,0x1.88f4062e96df5p+0) want 0x1.90749e4794f79p+1 got -0x1.b3c84a9a88p-1 ulperr -8961479864745984.000 = -0x1.fd66b2p+52 + -0x1.ffe4c4p-2
src/math/special/fma.h:522: RD fmal(0x1.22edf4b4da9a7p+0,0x1.dfa8d65f506cdp+0,0x1.2799208da2fbap+0) want 0x1.a45a1e99ed7a8p+1 got 0x1.a0bdfb8976p-1 ulperr -5562059957731328.000 = -0x1.3c2aap+52 + -0x1.000d06p-1
src/math/special/fma.h:523: RD fmal(0x1.ad5b991a2a279p+0,0x1.f02fd26706024p+0,0x1.831cdd5c8797cp+0) want 0x1.30d3a2ac90a6p+2 got 0x1.c7c15e1c82p+1 ulperr -1353701750996992.000 = -0x1.33cbdp+50 + -0x1.001c7cp-1
src/math/special/fma.h:524: RD fmal(0x1.531f9620e764ap+0,0x1.cad61b54d4425p+0,0x1.df817cae8a9afp+0) want 0x1.0fd4e7f8671dcp+2 got 0x1.8e74e26059p+1 ulperr -1277252138434560.000 = -0x1.2269dcp+50 + -0x1.0018e8p-1
src/math/special/fma.h:525: RD fmal(0x1.629a5ad79494fp+0,0x1.049e58693f4c4p+0,0x1.45b0109e4d00cp+0) want 0x1.5758154e14965p+1 got -0x1.01173c9c2p-3 ulperr -6322847379095552.000 = -0x1.67698ap+52 + -0x1.fffbfcp-2
src/math/special/fma.h:526: RD fmal(0x1.2f52b53f9240ap+0,0x1.1d5c686dbb0dap+0,0x1.6da3e392a4fd4p+0) want 0x1.5fe03a6795912p+1 got 0x1.5bdb7d9084p+0 ulperr -3130480329228288.000 = -0x1.63e4f8p+51 + -0x1.0015bep-1
src/math/special/fma.h:527: RD fmal(0x1.058667552b49ep+0,0x1.23307bacc1c42p+0,0x1.5b059b47cd8f5p+0) want 0x1.423f752486d13p+1 got -0x1.4bfb042744p+0 ulperr -8589176530272256.000 = -0x1.e83cf8p+52 + -0x1.ffd68p-2
src/math/special/fma.h:528: RD fmal(0x1.a717d95337ed8p+0,0x1.2b1c37846aaadp+0,0x1.be65672f885b1p+0) want 0x1.d65e72303c075p+1 got -0x1.7e0573ec04p+1 ulperr -14995408015065088.000 = -0x1.aa31f4p+53 + -0x1.ffa07ep-2
src/math/special/fma.h:529: RD fmal(0x1.deb79287b3d32p+0,0x1.62776b829babap+0,0x1.67daf18bd2eb1p+0) want 0x1.ff5a0d45c69d6p+1 got 0x1.ad881652ap-3 ulperr -8523520438960128.000 = -0x1.e4818cp+52 + -0x1.00035cp-1
src/math/special/fma.h:530: RD fmal(0x1.fbf12d3a6de91p+0,0x1.879fe6124f11p+0,0x1.9f3f1247a8641p+0) want 0x1.2a126c6980018p+2 got 0x1.45e3d61a84p+2 ulperr 489379747332096.000 = 0x1.bd169ap+48 + -0x1.0028bcp-1
src/math/special/fma.h:531: RD fmal(0x1.c589628460e01p+0,0x1.e1bec1c797533p+0,0x1.349f30cdb84bbp+0) want 0x1.2286118b6f6e5p+2 got -0x1.8e9d95e0668p+1 ulperr -8617207097458688.000 = -0x1.e9d4dep+52 + -0x1.ffce2cp-2
src/math/special/fma.h:532: RD fmal(0x1.46fd6c2c924ebp+0,0x1.65e2f02e730a1p+0,0x1.37739d2751098p+0) want 0x1.804a71c1f1272p+1 got 0x1.855d7947cbp+0 ulperr -3335623536541696.000 = -0x1.7b376cp+51 + -0x1.001856p-1
src/math/special/fma.h:533: RD fmal(0x1.f99e595ae11fdp+0,0x1.bd33d9a1d81bp+0,0x1.932a2a2e244c1p+0) want 0x1.409e34f8f2f89p+2 got -0x1.7a49668944p+2 ulperr -12295261934059520.000 = -0x1.5d73cep+53 + -0x1.ffa16ep-2
src/math/special/fma.h:534: RD fmal(0x1.59ea1e56bfe55p+0,0x1.6f46b7d412a44p+0,0x1.80f2bc9a32cc3p+0) want 0x1.b89c7640e32ffp+1 got -0x1.ca180bfb6p-3 ulperr -8254993714905088.000 = -0x1.d53df8p+52 + -0x1.fff8d8p-2
src/math/special/fma.h:535: RD fmal(0x1.61490fcb44129p+0,0x1.0038ec4fc35c2p+0,0x1.df7436ed7a7b7p+0) want 0x1.a085ea68d05cfp+1 got -0x1.5ed2c690f7p+1 ulperr -13499302328401920.000 = -0x1.7fac5ap+53 + -0x1.ffa84cp-2
src/math/special/fma.h:536: RD fmal(0x1.d41b98788502bp+0,0x1.1a7b77843aca6p+0,0x1.05be891837d36p+0) want 0x1.8523596ceced9p+1 got -0x1.48c8fc403cp-1 ulperr -8291802121502720.000 = -0x1.d7559ap+52 + -0x1.ffeb74p-2
src/math/special/fma.h:537: RD fmal(0x1.3153cf6f69af9p+0,0x1.aaa947e38e57ap+0,0x1.8519f9b590645p+0) want 0x1.c0fcab7b46368p+1 got 0x1.25f4f4bd5p-3 ulperr -7575454189879296.000 = -0x1.ae9d5ep+52 + -0x1.00024cp-1
src/math/special/fma.h:538: RD fmal(0x1.c25a1f73581aap+0,0x1.0a51ffca372ap+0,0x1.0c77e3ebac5f3p+0) want 0x1.707ce48c7d72dp+1 got -0x1.3261c9a0ep+1 ulperr -11872436362412032.000 = -0x1.516f58p+53 + -0x1.ffb368p-2
src/math/special/fma.h:539: RD fmal(0x1.829c2cde44b7p+0,0x1.f692e86d8cb36p+0,0x1.455e72d264bfp+0) want 0x1.0f16a3b8b3f97p+2 got -0x1.684386466p+0 ulperr -6353495191977984.000 = -0x1.692786p+52 + -0x1.ffe97cp-2
src/math/special/fma.h:540: RD fmal(0x1.94729588dcc69p+0,0x1.c3bb794c6edf8p+0,0x1.9da4e94d262d2p+0) want 0x1.19d4bd84d9fd2p+2 got 0x1.e1b9a2757p-1 ulperr -3898699117756416.000 = -0x1.bb3b14p+51 + -0x1.000786p-1
src/math/special/fma.h:541: RD fmal(0x1.e6a5e7e39c3d5p+0,0x1.1b69af2bdd978p+0,0x1.e7ef1eafa119cp+0) want 0x1.00ac5b44c9f31p+2 got -0x1.6777d5d394p+1 ulperr -7677359268298752.000 = -0x1.b46848p+52 + -0x1.ffd312p-2
src/math/special/fma.h:542: RD fmal(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022) want 0x1.b594d0e4368efp-1022 got -0x1.9dedc9561p-1023 ulperr -11338969211994112.000 = -0x1.4245dcp+53 + -0x1.ffcc42p-2
src/math/special/fma.h:543: RD fmal(0x1.022db53c98d14p-1022,0x1.21157eef74848p-2,0x1.2f880432b1bc1p-1022) want 0x1.786ad60a02b3dp-1022 got -0x1.150255ac98p-1022 ulperr -11495199721127936.000 = -0x1.46b696p+53 + -0x1.ffbacp-2
src/math/special/fma.h:544: RD fmal(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022) want 0x1.cbb085199a3f5p-1022 got -0x1.6ed115da2f8p-1023 ulperr -11313498982187008.000 = -0x1.418c8ap+53 + -0x1.ffd226p-2
src/math/special/fma.h:545: RD fmal(0x1.adbc3a9d816dep-1022,0x1.e039d4431e3cdp-2,0x1.93ceef6fe18a2p-1022) want 0x1.2eabb7dc0e2fp-1021 got 0x1.ef7b6794e3p-1023 ulperr -3145487481831424.000 = -0x1.6599bcp+51 + -0x1.000f7cp-1
src/math/special/fma.h:546: RD fmal(0x1.645aa5c2df3afp-1022,0x1.649edfcad854fp-2,0x1.8b43e0bbaeb01p-1022) want 0x1.03af571d2b504p-1021 got 0x1.0ce86163c02p-1021 ulperr 162249436037120.000 = 0x1.272148p+47 + -0x1.00219ep-1
src/math/special/fma.h:547: RD fmal(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022) want 0x1.ad9ce7fcefa3fp-1022 got -0x1.12bc4931e6p-1025 ulperr -8161980292530176.000 = -0x1.cff472p+52 + -0x1.fff76ap-2
src/math/special/fma.h:548: RD fmal(0x1.8ee3feb00c3e7p-1022,0x1.53bd9353313bcp-2,0x1.5501b57dc3b6fp-1022) want 0x1.d9598906f0bb3p-1022 got -0x1.4660b83f57p-1022 ulperr -14068956725772288.000 = -0x1.8fdd22p+53 + -0x1.ffae68p-2
src/math/special/fma.h:549: RD fmal(0x1.161225cfa61e2p-1022,0x1.b6dd69a0af5bp-2,0x1.924ffc3ead5c3p-1022) want 0x1.04be6fc25367bp-1021 got -0x1.f3ab56daa8p-1022 ulperr -8982192881401856.000 = -0x1.fe941cp+52 + -0x1.ffc18ap-2
src/math/special/fma.h:550: RD fmal(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022) want 0x1.70b6c3169f043p-1022 got -0x1.a779baefbe8p-1023 ulperr -10211414669000704.000 = -0x1.2239d2p+53 + -0x1.ffcb1p-2
src/math/special/fma.h:551: RD fmal(0x1.ce0e2ea55040ep-1022,0x1.ce5a55fa3828dp-2,0x1.f2f444d50ce59p-1022) want 0x1.61ca36f5a8a79p-1021 got -0x1.173f0cea128p-1022 ulperr -8680214267691008.000 = -0x1.ed69bep+52 + -0x1.ffdd18p-2
src/math/special/fma.h:552: RD fmal(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022) want 0x1.1440cf1c105ebp-1021 got -0x1.f88fda6p-1030 ulperr -4877233864835072.000 = -0x1.153d18p+52 + -0x1.ffffcp-2
src/math/special/fma.h:553: RD fmal(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022) want 0x1.1186e1f77012dp-1021 got -0x1.2ffba526fcp-1025 ulperr -5146169147654144.000 = -0x1.24869ep+52 + -0x1.fffb4p-2
src/math/special/fma.h:554: RD fmal(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022) want 0x1.8d86310bad175p-1022 got -0x1.1b755c367f8p-1023 ulperr -9486646453993472.000 = -0x1.0da07p+53 + -0x1.ffdc92p-2
src/math/special/fma.h:555: RD fmal(0x1.fb3391a4b1d23p-1022,0x1.4d8705b057caep-2,0x1.d026cb6dae73bp-1022) want 0x1.3aad18b424c67p-1021 got -0x1.0a1784c7c6cp-1021 ulperr -10216979872874496.000 = -0x1.22625p+53 + -0x1.ffbd7ap-2
src/math/special/fma.h:556: RD fmal(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022) want 0x1.c0048fd33a417p-1022 got -0x1.d026e457f1p-1024 ulperr -9922975402819584.000 = -0x1.1a0726p+53 + -0x1.ffe2fep-2
src/math/special/fma.h:557: RD fmal(0x1.aa9eff070281cp-1022,0x1.fab05661b48ebp-2,0x1.cbe2af6c69c6ep-1022) want 0x1.4f7ddbe122764p-1021 got 0x1.9e529858dap-1023 ulperr -4079821109854208.000 = -0x1.cfd26cp+51 + -0x1.000cf2p-1
src/math/special/fma.h:558: RD fmal(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022) want 0x1.e0e762ee2e7c5p-1022 got -0x1.e2fe0f96ecp-1023 ulperr -12708596701724672.000 = -0x1.693336p+53 + -0x1.ffc3ap-2
src/math/special/fma.h:559: RD fmal(0x1.4dab43918a9a8p-1022,0x1.ed667442b4751p-2,0x1.3f25f82e02e3ep-1022) want 0x1.dfec0ee732dcap-1022 got 0x1.6a41c4d18ap-1022 ulperr -2069988076683264.000 = -0x1.d6a92ap+50 + -0x1.002d48p-1
src/math/special/fma.h:560: RD fmal(0x1.7943735951931p-1022,0x1.fa6a357c5c9ddp-2,0x1.0bed44b0b71b4p-1022) want 0x1.c6803a6059abep-1022 got 0x1.0e970cce134p-1022 ulperr -3235394032238592.000 = -0x1.6fd25cp+51 + -0x1.0021d2p-1
src/math/special/fma.h:561: RD fmal(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022) want 0x1.8640492c45959p-1022 got -0x1.3271a1b38p-1027 ulperr -7033840023371776.000 = -0x1.8fd3d8p+52 + -0x1.fffd9cp-2
src/math/special/fma.h:562: RD fmal(0x1.f52172c56bdf5p-1022,0x1.672b2de422734p-2,0x1.7bc5d708e5a34p-1022) want 0x1.15c5b95145cc6p-1021 got 0x1.3cf4f71d188p-1021 ulperr 689341647028224.000 = 0x1.3979eep+49 + -0x1.00279ep-1
src/math/special/fma.h:563: RD fmal(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022) want 0x1.e7fa0dd76fbefp-1022 got -0x1.60a5d541bp-1024 ulperr -10135539776749568.000 = -0x1.2011c2p+53 + -0x1.ffe9f6p-2
src/math/special/fma.h:564: RD fmal(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022) want 0x1.b63a7f56fce1fp-1022 got -0x1.497a9bc52p-1024 ulperr -9158461560455168.000 = -0x1.044c94p+53 + -0x1.ffeb68p-2
src/math/special/fma.h:565: RD fmal(0x1.f73d5f4e81fd8p-1022,0x1.7ccff2642124ap-2,0x1.e7d836a0c8308p-1022) want 0x1.517f1763126d3p-1021 got -0x1.06939f3372p-1021 ulperr -10556597969354752.000 = -0x1.2c095cp+53 + -0x1.ffbe5cp-2
src/math/special/fma.h:566: RD fmal(0x1.b4328925969fbp-1022,0x1.8fa02832a22d5p-2,0x1.2084598e2f8c6p-1022) want 0x1.cabf43838dc51p-1022 got -0x1.7c61d65f0a4p-1022 ulperr -14762119350190080.000 = -0x1.a3908ep+53 + -0x1.ffa0e8p-2
src/math/special/fma.h:567: RD fmal(0x1.66ee60a92676fp-1022,0x1.eddd2e7681ce4p-2,0x1.b81d57daeb3a7p-1022) want 0x1.329c918ffb682p-1021 got 0x1.cd379885b8p-1025 ulperr -4886855128449024.000 = -0x1.15c91ap+52 + -0x1.00039ap-1
src/math/special/fma.h:568: RD fmal(0x1.ff2737585895dp-1022,0x1.fb4bf3828ae4ap-2,0x1.4a866847740fp-1022) want 0x1.23e07e4dbbeaap-1021 got 0x1.46c53f7571p-1023 ulperr -3697601501200384.000 = -0x1.a45e5ep+51 + -0x1.000a36p-1
src/math/special/fma.h:569: RD fmal(0x1.5e2008d269a86p-1022,0x1.507bbbe4d78eep-2,0x1.6220c6f83f636p-1022) want 0x1.d52d9874f1c74p-1022 got 0x1.eda0503c4ap-1023 ulperr -3911886546403328.000 = -0x1.bcbae2p+51 + -0x1.001edap-1
src/math/special/fma.h:570: RD fmal(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022) want 0x1.9864925e2fb0fp-1022 got -0x1.53ae580e8cp-1025 ulperr -7931489798848512.000 = -0x1.c2da5ep+52 + -0x1.fff562p-2
src/math/special/fma.h:571: RD fmal(0x1.7b353b81e793dp-1022,0x1.82b426f874c6dp-2,0x1.d92b19d21fd5cp-1022) want 0x1.342fb0c544a78p-1021 got 0x1.2af4c8aebe4p-1022 ulperr -2792024289837056.000 = -0x1.3d6a9ap+51 + -0x1.0012bp-1
src/math/special/fma.h:572: RD fmal(0x1.5be667823370ap-1022,0x1.a8a99b163869bp-2,0x1.95456b68dc3bcp-1022) want 0x1.12c638de03c7p-1021 got 0x1.49af7fc787p-1023 ulperr -3383908364189696.000 = -0x1.80b4b2p+51 + -0x1.000a4ep-1
src/math/special/fma.h:573: RD fmal(0x1.17b0fc6c850e5p-1022,0x1.d1d0a4853c315p-2,0x1.36b79f7c0c24p-1022) want 0x1.b5f2baff5635cp-1022 got 0x1.6a19304724p-1026 ulperr -7306334223466496.000 = -0x1.9f5128p+52 + -0x1.0002d4p-1
src/math/special/fma.h:574: RD fmal(0x1.bd97819bacfd8p-1022,0x1.2c25f267ba4eep-2,0x1.804b5204a3f3ap-1022) want 0x1.01739c190fd96p-1021 got 0x1.b9e166e6b4p-1022 ulperr -642314707927040.000 = -0x1.241746p+49 + -0x1.001b9ep-1
src/math/special/fma.h:575: RD fmal(0x1.596577053873dp-1022,0x1.3562ab2d29949p-2,0x1.b3f1ee75db6e7p-1022) want 0x1.0e268a498009ap-1021 got 0x1.e8136bc1594p-1022 ulperr -459378025037824.000 = -0x1.a1cd48p+48 + -0x1.001e82p-1
src/math/special/fma.h:576: RD fmal(0x1.3c7a68cf0f7b3p-1022,0x1.9a55c15b167bdp-2,0x1.7635b7b163c07p-1022) want 0x1.f5073b93b7b8p-1022 got 0x1.75f9a972138p-1023 ulperr -5524661530001408.000 = -0x1.3a0a68p+52 + -0x1.00176p-1
src/math/special/fma.h:577: RD fmal(0x1.5825164bc4068p-1022,0x1.dcbb6e5ff3245p-2,0x1.52fc3be0e84dap-1022) want 0x1.f334771c2dcfap-1022 got 0x1.2b86ba6b02p-1022 ulperr -3512784226615296.000 = -0x1.8f5b7ap+51 + -0x1.00257p-1
src/math/special/fma.h:578: RD fmal(0x1.139ea77b760ecp+1022,0x1.9b25f2fd017eap+2,-0x1.bc16788922b6fp+1023) want 0x1.b93aac527380ep+1023 got 0x1.c3ec4f2eep+1022 ulperr -3787028625883136.000 = -0x1.ae890ap+51 + -0x1.001c3ep-1
src/math/special/fma.h:579: RD fmal(0x1.0e6f9c1657d7cp+1022,0x1.4d5c6b55ab5f1p+2,-0x1.e027dd5742e2cp+1023) want 0x1.c0538372b4bbep+1022 got 0x1.54dede6dep+1021 ulperr -4888709480579072.000 = -0x1.15e416p+52 + -0x1.00154ep-1
src/math/special/fma.h:580: RD fmal(0x1.1182524fa411cp+1022,0x1.a3dba56842d19p+2,-0x1.c1ad59474d71fp+1023) want 0x1.bf78969300a76p+1023 got 0x1.8651491efp+1022 ulperr -4438724951670784.000 = -0x1.f89fe6p+51 + -0x1.001866p-1
src/math/special/fma.h:581: RD fmal(0x1.1cbf4fb8ec82p+1022,0x1.5e32019a84fbbp+2,-0x1.985af08f32edep+1023) want 0x1.72af6bbad4a28p+1023 got 0x1.a68c1c1ecp+1023 ulperr 912367084896256.000 = 0x1.9ee582p+49 + -0x1.0034d2p-1
src/math/special/fma.h:582: RD fmal(0x1.311e25c6db346p+1022,0x1.4e30db6c4b51dp+2,-0x1.7681f7a9786a7p+1023) want 0x1.a61d29434fc13p+1023 got -0x1.791d1989p+1017 ulperr -7529566759288832.000 = -0x1.ac019ep+52 + -0x1.fffe86p-2
src/math/special/fma.h:583: RD fmal(0x1.1201cf577052fp+1022,0x1.59730b2db7a16p+2,-0x1.56f1a64a078d5p+1023) want 0x1.8c8d801df34d9p+1023 got -0x1.3048609fd8p+1022 ulperr -inf = -inf + -0x1.ffd9f6p-2
src/math/special/fma.h:584: RD fmal(0x1.3e52335b76e81p+1022,0x1.4dbd56f857479p+2,-0x1.509340c11bd2ep+1023) want 0x1.ed6576837f653p+1023 got -0x1.e498d5441cp+1022 ulperr -inf = -inf + -0x1.ffc36cp-2
src/math/special/fma.h:585: RD fmal(0x1.18566b4f843cbp+1022,0x1.444fba10eaf29p+2,-0x1.f927beae57f0ap+1023) want 0x1.9a433b9796559p+1022 got 0x1.a048d2820cp+1022 ulperr 105937222238208.000 = 0x1.8165bap+46 + -0x1.ff6812p-2
src/math/special/fma.h:586: RD fmal(0x1.3fbe544fe1be8p+1022,0x1.2d2a5fda03639p+2,-0x1.007407dbfd03cp+1023) want 0x1.efdb644b613e5p+1023 got -0x1.e14223656p+1022 ulperr -inf = -inf + -0x1.ffc3d8p-2
src/math/special/fma.h:587: RD fmal(0x1.263a0d3bc2e4p+1022,0x1.4cc198adbc651p+2,-0x1.734b1c1f7fdb8p+1023) want 0x1.899878afc0fa2p+1023 got 0x1.a13620448p+1023 ulperr 415454199808000.000 = 0x1.79da78p+48 + -0x1.003426p-1
src/math/special/fma.h:588: RD fmal(0x1.5bf4aec8efc8ep+1022,0x1.555f0341516c9p+2,-0x1.c706408acd14cp+1023) want 0x1.d8f5e18b868bcp+1023 got 0x1.3e5679fdf8p+1022 ulperr -5520280126488576.000 = -0x1.39caa6p+52 + -0x1.0013e6p-1
src/math/special/fma.h:589: RD fmal(0x1.1e57f1af78279p+1022,0x1.34bc0c7f082b3p+2,-0x1.497b92c1365edp+1023) want 0x1.692cb7ec68a93p+1023 got -0x1.c0a1f29b28p+1021 ulperr -8326959650045952.000 = -0x1.d95536p+52 + -0x1.ffe3f6p-2
src/math/special/fma.h:590: RD fmal(0x1.1d9824cd73511p+1022,0x1.1d557ddfe47ffp+2,-0x1.556cdb1d20a72p+1023) want 0x1.2736a6b6e35f2p+1023 got 0x1.bc6f9c9778p+1021 ulperr -3238800478175232.000 = -0x1.70358p+51 + -0x1.000de4p-1
src/math/special/fma.h:591: RD fmal(0x1.1ff85a24aff31p+1022,0x1.39ab374b2680dp+2,-0x1.35e6b07b651b8p+1023) want 0x1.8bc7ce208708p+1023 got 0x1.84b319bafap+1023 ulperr -124568119279616.000 = -0x1.c52d1ap+46 + -0x1.003096p-1
src/math/special/fma.h:592: RD fmal(0x1.0449b3965227ep+1022,0x1.4430d4441f9f2p+2,-0x1.a6966c96307ep+1023) want 0x1.d94eda8c81771p+1022 got -0x1.992ed6b72p+1021 ulperr -11925734759071744.000 = -0x1.52f324p+53 + -0x1.ffccdap-2
src/math/special/fma.h:593: RD fmal(0x1.3c91fa00fd0c7p+1022,0x1.1b6661c0b0303p+2,-0x1.f1f2846b64483p+1023) want 0x1.95eae0d2644d3p+1022 got 0x1.9985d8eaap+1019 ulperr -6240425882943488.000 = -0x1.62ba26p+52 + -0x1.ff0cccp-2
src/math/special/fma.h:594: RD fmal(0x1.0979b36d46534p+1022,0x1.12fa205f41f7fp+2,-0x1.a83ecf4544a63p+1023) want 0x1.2420f34e2aa3cp+1022 got -0x1.335a0fe68p+1019 ulperr -5815056616914944.000 = -0x1.4a8c36p+52 + -0x1.007b32p-1
src/math/special/fma.h:595: RD fmal(0x1.4c89df582a599p+1022,0x1.55f3dc473ea8fp+2,-0x1.e35037292ddfp+1023) want 0x1.95109fdbc3771p+1023 got -0x1.afa3b29624p+1022 ulperr -inf = -inf + -0x1.ffca0cp-2
src/math/special/fma.h:596: RD fmal(0x1.35ee0a669c4fbp+1022,0x1.2263cb63f386ap+2,-0x1.449218ae35ac7p+1023) want 0x1.7a8ed977d817ap+1023 got 0x1.47da9ddfb8p+1022 ulperr -3775828961787904.000 = -0x1.ad4316p+51 + -0x1.00147ep-1
src/math/special/fma.h:597: RD fmal(0x1.117cc860f61bcp+1022,0x1.440985b25d994p+2,-0x1.d7a7d82000449p+1023) want 0x1.b960b7088e74fp+1022 got 0x1.ddfba372cp+1022 ulperr 643964914892800.000 = 0x1.24d762p+49 + -0x1.ff777ep-2
src/math/special/fma.h:598: RD fmal(0x1.1e78a37be320fp+1022,0x1.0db0fce62287bp+2,-0x1.376337da5eb53p+1023) want 0x1.24326b9956dfbp+1023 got -0x1.d2881b3596p+1023 ulperr -inf = -inf + -0x1.ff8b5ep-2
src/math/special/fma.h:599: RD fmal(0x1.0c79b5c8331c2p+1022,0x1.0aba6ea746b5p+2,-0x1.c86f1fcaf0741p+1023) want 0x1.9c135bb2cff84p+1021 got -0x1.cc298bacp+1019 ulperr -9273126449840128.000 = -0x1.078eep+53 + -0x1.00f19ep-1
src/math/special/fma.h:600: RD fmal(0x1.556c4c072f272p+1022,0x1.347758d7d4eb5p+2,-0x1.c6fe4f24b248dp+1023) want 0x1.6fcc9f756df6dp+1023 got -0x1.f6f4c76598p+1022 ulperr -inf = -inf + -0x1.ffc122p-2
src/math/special/fma.h:601: RD fmal(-0x1.e8349b891b2fp-1,0x1.4a6dec9b72578p-1,0x1.3b6151ce809ddp-1) want 0x1.3a62fe330b355p-11 got -0x1.d97121p-11 ulperr -13859627535958016.000 = -0x1.89ea1p+53 + -0x1.ff89a4p-2
src/math/special/fma.h:602: RD fmal(0x1.2996632ac7d74p-1,-0x1.bb3c58b654d94p-1,0x1.01a6660e64a31p-1) want 0x1.ed045bb956a8ep-15 got -0x1.070d62p-15 ulperr -13300912420290560.000 = -0x1.7a08ep+53 + -0x1.eabe3cp-2
src/math/special/fma.h:603: RD fmal(-0x1.c602e894c1df8p-1,0x1.a1c980e7d3f94p-1,0x1.7271244b43386p-1) want -0x1.ba251fe026e5cp-15 got -0x1.af2b6c0000001p-15 ulperr 193081294979072.000 = 0x1.5f367cp+47 + -0x1.02ca1ap-1
src/math/special/fma.h:604: RD fmal(-0x1.c84baf47e85cp-1,0x1.770b5149ef2ep-1,0x1.4d80f139320bap-1) want -0x1.79277433b9e24p-10 got 0x1.d4b6effffffffp-11 ulperr 10757822555881472.000 = 0x1.31c176p+53 + -0x1.001d4cp-1
src/math/special/fma.h:605: RD fmal(-0x1.36e667dcf9c6p-1,0x1.2591f82556b88p-1,0x1.2452a0f795f95p-1) want 0x1.c83c8e63c159fp-3 got -0x1.221cccp-12 ulperr -8036166741786624.000 = -0x1.c8cd9ep+52 + -0x1.ffffdcp-2
src/math/special/fma.h:606: RD fmal(0x1.88b2cede61e4cp-1,-0x1.71dcab5ad9e9p-3,0x1.32b27fea2ae97p-3) want 0x1.70461909b25e2p-7 got -0x1.affe57fffffffp-17 ulperr -6486163510525952.000 = -0x1.70b21ap+52 + -0x1.ffffe6p-2
src/math/special/fma.h:607: RD fmal(0x1.8d1e44002c98p-3,-0x1.af9fdfb347834p-1,0x1.e280942fb4146p-4) want -0x1.761ac23896dfep-5 got 0x1.0bec47fffffffp-14 ulperr 6590522089013248.000 = 0x1.76a0b8p+52 + -0x1.00001p-1
src/math/special/fma.h:608: RD fmal(0x1.236e8cb9492c8p-1,-0x1.d37443a57f1c4p-1,0x1.ca10df801aabcp-4) want -0x1.a1a2cdf0138fap-2 got 0x1.f090cab6fffffp-5 ulperr 8439088361242624.000 = 0x1.dfb4e6p+52 + -0x1.0007c2p-1
src/math/special/fma.h:609: RD fmal(-0x1.6ad943e610fb8p-1,-0x1.cef92a7bb18bcp-1,0x1.f28587d8fb0ep-4) want 0x1.866b5204b9aecp-1 got -0x1.8c9eb9a7p-5 ulperr -7304415983697920.000 = -0x1.9f353ep+52 + -0x1.fff9cep-2
src/math/special/fma.h:610: RD fmal(-0x1.60a8569a5d894p-1,-0x1.ca07e29dd171cp-1,0x1.b6c475ace09ecp-4) want 0x1.72549291e2f7ap-1 got -0x1.b6fd181e8p-5 ulperr -6997594257489920.000 = -0x1.8dc466p+52 + -0x1.fff924p-2
src/math/special/fma.h:611: RD fmal(0x1.d1962720d678cp-1,-0x1.4548ee45c4084p-1,0x1.f416ab193d75cp-4) want -0x1.d2929879dc854p-2 got 0x1.fc38e6f3fffffp-8 ulperr 8347731722502144.000 = 0x1.da837cp+52 + -0x1.0000fep-1
src/math/special/fma.h:612: RD fmal(-0x1.9ddcb295a7d64p-1,0x1.67fb3a2068a78p-1,0x1.da9cd4597fe0ap-4) want -0x1.cf4f6eb4fc5d9p-2 got 0x1.59da5511fffffp-6 ulperr 8530909930192896.000 = 0x1.e4ed14p+52 + -0x1.0002b4p-1
src/math/special/fma.h:613: RD fmal(0x1.c00d16ed45b88p+0,0x1.c787eddda3664p+0,0x1.1e3e6f0cc1802p-5) want 0x1.931b8f379dcc3p+1 got -0x1.63fb63b8p-6 ulperr -7140470639558656.000 = -0x1.95e386p+52 + -0x1.ffff4ep-2
src/math/special/fma.h:614: RD fmal(0x1.19c2a2372c184p+0,-0x1.cb506961c19fp+0,0x1.db1abf3f7ba3ap-6) want -0x1.f21c0eab0bc19p+0 got 0x1.a29607ffffff8p-13 ulperr 8763735275470848.000 = 0x1.f22922p+52 + -0x1.000002p-1
src/math/special/fma.h:615: RD fmal(-0x1.3a263218ccd1cp+0,-0x1.e818d390df27cp+0,0x1.2a81ed71785f5p-5) want 0x1.3025ab0f63925p+1 got -0x1.bfdf0b9cp-6 ulperr -5412168283455488.000 = -0x1.33a56ap+52 + -0x1.ffff2p-2
src/math/special/fma.h:616: RD fmal(0x1.b0b041fbaca58p+0,-0x1.9d5f76d178e6p+0,0x1.0215c7bb84cf9p-6) want -0x1.5b52aec7ef401p+1 got 0x1.6be7a77ffffffp-7 ulperr 6135177709355008.000 = 0x1.5cbe96p+52 + -0x1.00002ep-1
src/math/special/fma.h:617: RD fmal(-0x1.377549d9a87f4p+0,-0x1.a13d4a03dd6d8p+0,0x1.f190388bc5cc6p-7) want 0x1.ff83bebbd6fe4p+0 got -0x1.e5a6a44p-9 ulperr -9015347881443328.000 = -0x1.003b4ap+53 + -0x1.ffffc4p-2
src/math/special/fma.h:618: RD fmal(0x1.6a726c0762ac8p-1,-0x1.d32f2d30e483cp+0,0x1.f953eb70fbde6p-7) want -0x1.46c61b3070333p+0 got 0x1.e556e47fffffep-11 ulperr 5752835425697792.000 = 0x1.4702c6p+52 + -0x1.000008p-1
src/math/special/fma.h:619: RD fmal(0x1.94cf2509d40cp-1,0x1.721976af6dfbp+0,0x1.f51a456921c3ep-7) want 0x1.28880842acc6p+0 got -0x1.effe1ep-8 ulperr -5250719925927936.000 = -0x1.2a7808p+52 + -0x1.ffff84p-2
src/math/special/fma.h:620: RD fmal(0x1.b128eb0ad8728p-1,0x1.7682566a54268p+0,0x1.bd4122a074cafp-8) want 0x1.3e9469530e762p+0 got -0x1.6fe0c7cp-9 ulperr -5617154187591680.000 = -0x1.3f4c5ap+52 + -0x1.ffffd2p-2
src/math/special/fma.h:621: RD fmal(0x1.c4ae75976e35cp+0,-0x1.11c329dd1160cp+0,0x1.9993f5e13c9bdp-8) want -0x1.e27d925b07cf2p+0 got 0x1.198edf5ffffffp-9 ulperr 8497736676540416.000 = 0x1.e30a58p+52 + -0x1.000012p-1
src/math/special/fma.h:622: RD fmal(-0x1.85f81f88fa3c4p+0,-0x1.17648a494fa18p-1,0x1.37d305113b48p-10) want 0x1.aa367b7490e57p-1 got -0x1.7a59ecffffffep-12 ulperr -7501265609162752.000 = -0x1.aa65c8p+52 + -0x1.fffff4p-2
src/math/special/fma.h:623: RD fmal(-0x1.311f2b4319efcp+0,0x1.abbb5272e3d18p-1,0x1.35841b7bdbcfep-10) want -0x1.fd337f24b39e1p-1 got 0x1.4cbc317ffffffp-11 ulperr 8963677814259712.000 = 0x1.fd86aep+52 + -0x1.00000ap-1
src/math/special/fma.h:624: RD fmal(0x1.ab94369a9a0dp-1,0x1.9d1e0e0aa3bacp+0,0x1.0a63ca87cfa78p-11) want 0x1.592173ee296b6p+0 got -0x1.fd8043ffffff8p-13 ulperr -6072697209487360.000 = -0x1.59316p+52 + -0x1.fffffcp-2
src/math/special/fma.h:666: RU fmal(0x1p+0,0x1p+0,-0x1p-1074) want 0x1p+0 got -0x1.fffffp-43 ulperr -4503599627370496.000 = -0x1p+52 + 0x0p+0
src/math/special/fma.h:667: bad fp exception: RU fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022)=0x1p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:667: RU fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022) want 0x1p-1021 got 0x1p-1074 ulperr -4503599358935040.000 = -0x1.fffffep+51 + 0x1p-1
src/math/special/fma.h:668: bad fp exception: RU fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022)=0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:668: RU fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.fffffffffffffp-1022 got -0x0p+0 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x0p+0
src/math/special/fma.h:669: bad fp exception: RU fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:669: RU fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.fffffffffffffp-1022 got -0x0p+0 ulperr 9007199254740992.000 = 0x1p+53 + 0x0p+0
src/math/special/fma.h:670: bad fp exception: RU fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.ffffffffffffep-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:670: RU fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.ffffffffffffep-1022 got 0x1p-1074 ulperr 9007199254740992.000 = 0x1p+53 + 0x1p+0
src/math/special/fma.h:671: RU fmal(0x1p-1074,-0x1p-1074,0x1p-1074) want 0x1p-1074 got -0x0p+0 ulperr -1.000 = -0x1p+0 + 0x0p+0
src/math/special/fma.h:672: RU fmal(0x1p-1074,-0x1p-1074,-0x1p-1074) want -0x1p-1074 got -0x0p+0 ulperr 1.000 = 0x1p+0 + 0x0p+0
src/math/special/fma.h:673: RU fmal(0x1.0000000000001p+0,0x1p+0,0x1p+53) want 0x1.0000000000001p+53 got 0x1.000008p+12 ulperr -4503599358935040.000 = -0x1.fffffep+51 + 0x1p-1
src/math/special/fma.h:674: RU fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p+53) want 0x1.0000000000001p+53 got 0x1.ffc02p+10 ulperr -4503599358935040.000 = -0x1.fffffep+51 + 0x1p-1
src/math/special/fma.h:675: RU fmal(0x1p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp+53) want 0x1p+54 got -0x1.ffffep+10 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-2
src/math/special/fma.h:676: RU fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep+53) want 0x1.fffffffffffffp+53 got 0x1.ffc02p+10 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:677: RU fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p-52) want 0x1.0000000000002p+0 got -0x1.fffffp-42 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:678: RU fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp-53) want 0x1.0000000000002p+0 got -0x1.fffff8p-41 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:679: RU fmal(0x1.0000000000005p+0,0x1.ffffffffffffbp-1,0x1p-52) want 0x1.0000000000004p+0 got -0x1.8fffff8p-37 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:680: RU fmal(0x1.0000000000006p+0,0x1.ffffffffffffdp-1,0x1p-52) want 0x1.0000000000006p+0 got -0x1.1fffff8p-37 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:699: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff5p+0 got 0x1.6800008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:700: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1p+0) want 0x1.ffffffffffff9p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:701: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffff7p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:702: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffff5p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:703: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffff7p+0 got 0x1.f800008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:704: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffff5p+0 got 0x1.f800008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:705: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffff7p+0 got 0x1.2000004p-36 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:706: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffff5p+0 got 0x1.2000004p-36 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:707: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.fffffffffffffp-1) want 0x1.ffffffffffff7p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:708: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffff5p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:709: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff3p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:710: RU fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep-1) want 0x1p+1 got -0x1.fffffp-42 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-2
src/math/special/fma.h:711: RU fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffep+0 got -0x1.fffffp-42 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:712: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.fffffffffffffp-1) want 0x1p+1 got -0x1.fffff8p-41 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-2
src/math/special/fma.h:713: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffffep+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:714: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffffcp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:715: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1p+0) want 0x1p+1 got -0x1.7ffffcp-40 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-2
src/math/special/fma.h:716: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffffep+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:717: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffffcp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:718: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffffep+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:719: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffffcp+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:720: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffffep+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:721: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffcp+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:722: RU fmal(0x1.5872449b765b9p+0,0x1.c9acf91f8de2bp+0,0x1.9265607e4d168p+0) want 0x1.fd190c77c2a68p+1 got -0x1.b3fc37becffffp-4 ulperr -9195828849672192.000 = -0x1.055c76p+53 + 0x1.0001b4p-1
src/math/special/fma.h:723: RU fmal(0x1.81d010b146d0ep+0,0x1.2d3c680dc9071p+0,0x1.a80b69538754cp+0) want 0x1.b7040b44973a7p+1 got 0x1.4d0cb20197001p+1 ulperr -1864177136173056.000 = -0x1.a7dd64p+50 + 0x1.ffacbcp-2
src/math/special/fma.h:724: RU fmal(0x1.6a44f2252b6a2p+0,0x1.da452a378b832p+0,0x1.1fe2ce329104p+0) want 0x1.df842b6f48b13p+1 got 0x1.12e95c1ba4001p+0 ulperr -6017591705337856.000 = -0x1.560f7cp+52 + 0x1.ffdda2p-2
src/math/special/fma.h:725: RU fmal(0x1.096b1d26463eep+0,0x1.d846d3e34333p+0,0x1.721e3480922b8p+0) want 0x1.ade2909c026ap+1 got -0x1.a139d9b2bffffp-1 ulperr -9397595675820032.000 = -0x1.0b1882p+53 + 0x1.000d0ap-1
src/math/special/fma.h:726: RU fmal(0x1.99bd3434c454bp+0,0x1.03cb8e4115bdep+0,0x1.109f107188b08p+0) want 0x1.5837a47d37fafp+1 got 0x1.cfdec0c00a001p+0 ulperr -1975290892910592.000 = -0x1.c1211p+50 + 0x1.ffc604p-2
src/math/special/fma.h:727: RU fmal(0x1.ba930a0a78ed2p+0,0x1.8c24e8d67f636p+0,0x1.ac49dbfbf8affp+0) want 0x1.164947ae6a5dap+2 got -0x1.33e3b04ecffffp-2 ulperr -5234191281160192.000 = -0x1.298782p+52 + 0x1.000268p-1
src/math/special/fma.h:728: RU fmal(0x1.be224ad773191p+0,0x1.d96b77169731fp+0,0x1.662cfb75d8edep+0) want 0x1.27cd67e720f79p+2 got 0x1.e4711611c7801p+1 ulperr -942615600037888.000 = -0x1.aca6e6p+49 + 0x1.ffc372p-2
src/math/special/fma.h:729: RU fmal(0x1.59e7a1b0bdb3cp+0,0x1.2decba4d46421p+0,0x1.88f4062e96df5p+0) want 0x1.90749e4794f7ap+1 got -0x1.b3c84a9a87fffp-1 ulperr -8961479327875072.000 = -0x1.fd66bp+52 + 0x1.000d9ep-1
src/math/special/fma.h:730: RU fmal(0x1.22edf4b4da9a7p+0,0x1.dfa8d65f506cdp+0,0x1.2799208da2fbap+0) want 0x1.a45a1e99ed7a9p+1 got 0x1.a0bdfb8976001p-1 ulperr -5562059420860416.000 = -0x1.3c2a9ep+52 + 0x1.ffe5f4p-2
src/math/special/fma.h:731: RU fmal(0x1.ad5b991a2a279p+0,0x1.f02fd26706024p+0,0x1.831cdd5c8797cp+0) want 0x1.30d3a2ac90a61p+2 got 0x1.c7c15e1c82001p+1 ulperr -1353701616779264.000 = -0x1.33cbcep+50 + 0x1.ffc708p-2
src/math/special/fma.h:732: RU fmal(0x1.531f9620e764ap+0,0x1.cad61b54d4425p+0,0x1.df817cae8a9afp+0) want 0x1.0fd4e7f8671ddp+2 got 0x1.8e74e26059001p+1 ulperr -1277252004216832.000 = -0x1.2269dap+50 + 0x1.ffce32p-2
src/math/special/fma.h:733: RU fmal(0x1.629a5ad79494fp+0,0x1.049e58693f4c4p+0,0x1.45b0109e4d00cp+0) want 0x1.5758154e14966p+1 got -0x1.01173c9c1ffffp-3 ulperr -6322846842224640.000 = -0x1.676988p+52 + 0x1.000202p-1
src/math/special/fma.h:734: RU fmal(0x1.2f52b53f9240ap+0,0x1.1d5c686dbb0dap+0,0x1.6da3e392a4fd4p+0) want 0x1.5fe03a6795913p+1 got 0x1.5bdb7d9084001p+0 ulperr -3130480060792832.000 = -0x1.63e4f6p+51 + 0x1.ffd484p-2
src/math/special/fma.h:735: RU fmal(0x1.058667552b49ep+0,0x1.23307bacc1c42p+0,0x1.5b059b47cd8f5p+0) want 0x1.423f752486d14p+1 got -0x1.4bfb042743fffp+0 ulperr -8589175993401344.000 = -0x1.e83cf6p+52 + 0x1.0014cp-1
src/math/special/fma.h:736: RU fmal(0x1.a717d95337ed8p+0,0x1.2b1c37846aaadp+0,0x1.be65672f885b1p+0) want 0x1.d65e72303c076p+1 got -0x1.7e0573ec03fffp+1 ulperr -14995406941323264.000 = -0x1.aa31f2p+53 + 0x1.002fcp-1
src/math/special/fma.h:737: RU fmal(0x1.deb79287b3d32p+0,0x1.62776b829babap+0,0x1.67daf18bd2eb1p+0) want 0x1.ff5a0d45c69d7p+1 got 0x1.ad881652a0001p-3 ulperr -8523519902089216.000 = -0x1.e4818ap+52 + 0x1.fff94ap-2
src/math/special/fma.h:738: RU fmal(0x1.fbf12d3a6de91p+0,0x1.879fe6124f11p+0,0x1.9f3f1247a8641p+0) want 0x1.2a126c6980019p+2 got 0x1.45e3d61a84001p+2 ulperr 489379780886528.000 = 0x1.bd169cp+48 + 0x1.ffae88p-2
src/math/special/fma.h:739: RU fmal(0x1.c589628460e01p+0,0x1.e1bec1c797533p+0,0x1.349f30cdb84bbp+0) want 0x1.2286118b6f6e6p+2 got -0x1.8e9d95e0667ffp+1 ulperr -8617206560587776.000 = -0x1.e9d4dcp+52 + 0x1.0018eap-1
src/math/special/fma.h:740: RU fmal(0x1.46fd6c2c924ebp+0,0x1.65e2f02e730a1p+0,0x1.37739d2751098p+0) want 0x1.804a71c1f1273p+1 got 0x1.855d7947cb001p+0 ulperr -3335623268106240.000 = -0x1.7b376ap+51 + 0x1.ffcf54p-2
src/math/special/fma.h:741: RU fmal(0x1.f99e595ae11fdp+0,0x1.bd33d9a1d81bp+0,0x1.932a2a2e244c1p+0) want 0x1.409e34f8f2f8ap+2 got -0x1.7a49668943fffp+2 ulperr -12295260860317696.000 = -0x1.5d73ccp+53 + 0x1.002f4ap-1
src/math/special/fma.h:742: RU fmal(0x1.59ea1e56bfe55p+0,0x1.6f46b7d412a44p+0,0x1.80f2bc9a32cc3p+0) want 0x1.b89c7640e33p+1 got -0x1.ca180bfb5ffffp-3 ulperr -8254993178034176.000 = -0x1.d53df6p+52 + 0x1.000394p-1
src/math/special/fma.h:743: RU fmal(0x1.61490fcb44129p+0,0x1.0038ec4fc35c2p+0,0x1.df7436ed7a7b7p+0) want 0x1.a085ea68d05dp+1 got -0x1.5ed2c690f6fffp+1 ulperr -13499301254660096.000 = -0x1.7fac58p+53 + 0x1.002bdap-1
src/math/special/fma.h:744: RU fmal(0x1.d41b98788502bp+0,0x1.1a7b77843aca6p+0,0x1.05be891837d36p+0) want 0x1.8523596cecedap+1 got -0x1.48c8fc403bfffp-1 ulperr -8291801584631808.000 = -0x1.d75598p+52 + 0x1.000a46p-1
src/math/special/fma.h:745: RU fmal(0x1.3153cf6f69af9p+0,0x1.aaa947e38e57ap+0,0x1.8519f9b590645p+0) want 0x1.c0fcab7b46369p+1 got 0x1.25f4f4bd50001p-3 ulperr -7575453653008384.000 = -0x1.ae9d5cp+52 + 0x1.fffb68p-2
src/math/special/fma.h:746: RU fmal(0x1.c25a1f73581aap+0,0x1.0a51ffca372ap+0,0x1.0c77e3ebac5f3p+0) want 0x1.707ce48c7d72ep+1 got -0x1.3261c9a0dffffp+1 ulperr -11872435288670208.000 = -0x1.516f56p+53 + 0x1.00264cp-1
src/math/special/fma.h:747: RU fmal(0x1.829c2cde44b7p+0,0x1.f692e86d8cb36p+0,0x1.455e72d264bfp+0) want 0x1.0f16a3b8b3f98p+2 got -0x1.684386465ffffp+0 ulperr -6353494655107072.000 = -0x1.692784p+52 + 0x1.000b42p-1
src/math/special/fma.h:748: RU fmal(0x1.94729588dcc69p+0,0x1.c3bb794c6edf8p+0,0x1.9da4e94d262d2p+0) want 0x1.19d4bd84d9fd3p+2 got 0x1.e1b9a27570001p-1 ulperr -3898698849320960.000 = -0x1.bb3b12p+51 + 0x1.fff0f2p-2
src/math/special/fma.h:749: RU fmal(0x1.e6a5e7e39c3d5p+0,0x1.1b69af2bdd978p+0,0x1.e7ef1eafa119cp+0) want 0x1.00ac5b44c9f32p+2 got -0x1.6777d5d393fffp+1 ulperr -7677358731427840.000 = -0x1.b46846p+52 + 0x1.001678p-1
src/math/special/fma.h:750: bad fp exception: RU fmal(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022)=0x1.b594d0e4368fp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:750: RU fmal(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022) want 0x1.b594d0e4368fp-1022 got -0x1.9dedc9560fffep-1023 ulperr -11338968138252288.000 = -0x1.4245dap+53 + 0x1.0019dep-1
src/math/special/fma.h:751: RU fmal(0x1.022db53c98d14p-1022,0x1.21157eef74848p-2,0x1.2f880432b1bc1p-1022) want 0x1.786ad60a02b3ep-1022 got -0x1.150255ac97fffp-1022 ulperr -11495198647386112.000 = -0x1.46b694p+53 + 0x1.0022ap-1
src/math/special/fma.h:752: bad fp exception: RU fmal(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022)=0x1.cbb085199a3f6p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:752: RU fmal(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022) want 0x1.cbb085199a3f6p-1022 got -0x1.6ed115da2f7fep-1023 ulperr -11313497908445184.000 = -0x1.418c88p+53 + 0x1.0016eep-1
src/math/special/fma.h:753: bad fp exception: RU fmal(0x1.adbc3a9d816dep-1022,0x1.e039d4431e3cdp-2,0x1.93ceef6fe18a2p-1022)=0x1.2eabb7dc0e2f1p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:753: RU fmal(0x1.adbc3a9d816dep-1022,0x1.e039d4431e3cdp-2,0x1.93ceef6fe18a2p-1022) want 0x1.2eabb7dc0e2f1p-1021 got 0x1.ef7b6794e3002p-1023 ulperr -3145487213395968.000 = -0x1.6599bap+51 + 0x1.ffe108p-2
src/math/special/fma.h:754: RU fmal(0x1.645aa5c2df3afp-1022,0x1.649edfcad854fp-2,0x1.8b43e0bbaeb01p-1022) want 0x1.03af571d2b505p-1021 got 0x1.0ce86163c0201p-1021 ulperr 162249452814336.000 = 0x1.27214ap+47 + 0x1.ffbcc6p-2
src/math/special/fma.h:755: bad fp exception: RU fmal(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022)=0x1.ad9ce7fcefa4p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:755: RU fmal(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022) want 0x1.ad9ce7fcefa4p-1022 got -0x1.12bc4931e5ff8p-1025 ulperr -8161979755659264.000 = -0x1.cff47p+52 + 0x1.00044ap-1
src/math/special/fma.h:756: RU fmal(0x1.8ee3feb00c3e7p-1022,0x1.53bd9353313bcp-2,0x1.5501b57dc3b6fp-1022) want 0x1.d9598906f0bb4p-1022 got -0x1.4660b83f56fffp-1022 ulperr -14068955652030464.000 = -0x1.8fdd2p+53 + 0x1.0028ccp-1
src/math/special/fma.h:757: RU fmal(0x1.161225cfa61e2p-1022,0x1.b6dd69a0af5bp-2,0x1.924ffc3ead5c3p-1022) want 0x1.04be6fc25367cp-1021 got -0x1.f3ab56daa7fffp-1022 ulperr -8982192344530944.000 = -0x1.fe941ap+52 + 0x1.001f3ap-1
src/math/special/fma.h:758: bad fp exception: RU fmal(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022)=0x1.70b6c3169f044p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:758: RU fmal(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022) want 0x1.70b6c3169f044p-1022 got -0x1.a779baefbe7fep-1023 ulperr -10211413595258880.000 = -0x1.2239dp+53 + 0x1.001a78p-1
src/math/special/fma.h:759: RU fmal(0x1.ce0e2ea55040ep-1022,0x1.ce5a55fa3828dp-2,0x1.f2f444d50ce59p-1022) want 0x1.61ca36f5a8a7ap-1021 got -0x1.173f0cea127ffp-1022 ulperr -8680213730820096.000 = -0x1.ed69bcp+52 + 0x1.001174p-1
src/math/special/fma.h:760: bad fp exception: RU fmal(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022)=0x1.1440cf1c105ecp-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:760: RU fmal(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022) want 0x1.1440cf1c105ecp-1021 got -0x1.f88fda5ffffp-1030 ulperr -4877233327964160.000 = -0x1.153d16p+52 + 0x1.00002p-1
src/math/special/fma.h:761: bad fp exception: RU fmal(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022)=0x1.1186e1f77012ep-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:761: RU fmal(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022) want 0x1.1186e1f77012ep-1021 got -0x1.2ffba526fbff8p-1025 ulperr -5146168610783232.000 = -0x1.24869cp+52 + 0x1.00026p-1
src/math/special/fma.h:762: bad fp exception: RU fmal(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022)=0x1.8d86310bad176p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:762: RU fmal(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022) want 0x1.8d86310bad176p-1022 got -0x1.1b755c367f7fep-1023 ulperr -9486645380251648.000 = -0x1.0da06ep+53 + 0x1.0011b8p-1
src/math/special/fma.h:763: RU fmal(0x1.fb3391a4b1d23p-1022,0x1.4d8705b057caep-2,0x1.d026cb6dae73bp-1022) want 0x1.3aad18b424c68p-1021 got -0x1.0a1784c7c6bffp-1021 ulperr -10216978799132672.000 = -0x1.22624ep+53 + 0x1.002142p-1
src/math/special/fma.h:764: bad fp exception: RU fmal(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022)=0x1.c0048fd33a418p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:764: RU fmal(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022) want 0x1.c0048fd33a418p-1022 got -0x1.d026e457f0ffcp-1024 ulperr -9922974329077760.000 = -0x1.1a0724p+53 + 0x1.000e82p-1
src/math/special/fma.h:765: bad fp exception: RU fmal(0x1.aa9eff070281cp-1022,0x1.fab05661b48ebp-2,0x1.cbe2af6c69c6ep-1022)=0x1.4f7ddbe122765p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:765: RU fmal(0x1.aa9eff070281cp-1022,0x1.fab05661b48ebp-2,0x1.cbe2af6c69c6ep-1022) want 0x1.4f7ddbe122765p-1021 got 0x1.9e529858da002p-1023 ulperr -4079820841418752.000 = -0x1.cfd26ap+51 + 0x1.ffe61ap-2
src/math/special/fma.h:766: bad fp exception: RU fmal(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022)=0x1.e0e762ee2e7c6p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:766: RU fmal(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022) want 0x1.e0e762ee2e7c6p-1022 got -0x1.e2fe0f96ebffep-1023 ulperr -12708595627982848.000 = -0x1.693334p+53 + 0x1.001e3p-1
src/math/special/fma.h:767: RU fmal(0x1.4dab43918a9a8p-1022,0x1.ed667442b4751p-2,0x1.3f25f82e02e3ep-1022) want 0x1.dfec0ee732dcbp-1022 got 0x1.6a41c4d18a001p-1022 ulperr -2069987942465536.000 = -0x1.d6a928p+50 + 0x1.ffa57p-2
src/math/special/fma.h:768: RU fmal(0x1.7943735951931p-1022,0x1.fa6a357c5c9ddp-2,0x1.0bed44b0b71b4p-1022) want 0x1.c6803a6059abfp-1022 got 0x1.0e970cce13401p-1022 ulperr -3235393763803136.000 = -0x1.6fd25ap+51 + 0x1.ffbc5ap-2
src/math/special/fma.h:769: bad fp exception: RU fmal(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022)=0x1.8640492c4595ap-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:769: RU fmal(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022) want 0x1.8640492c4595ap-1022 got -0x1.3271a1b37ffep-1027 ulperr -7033839486500864.000 = -0x1.8fd3d6p+52 + 0x1.000132p-1
src/math/special/fma.h:770: RU fmal(0x1.f52172c56bdf5p-1022,0x1.672b2de422734p-2,0x1.7bc5d708e5a34p-1022) want 0x1.15c5b95145cc7p-1021 got 0x1.3cf4f71d18801p-1021 ulperr 689341714137088.000 = 0x1.3979fp+49 + 0x1.ffb0c2p-2
src/math/special/fma.h:771: bad fp exception: RU fmal(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022)=0x1.e7fa0dd76fbfp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:771: RU fmal(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022) want 0x1.e7fa0dd76fbfp-1022 got -0x1.60a5d541afffcp-1024 ulperr -10135538703007744.000 = -0x1.2011cp+53 + 0x1.000b06p-1
src/math/special/fma.h:772: bad fp exception: RU fmal(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022)=0x1.b63a7f56fce2p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:772: RU fmal(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022) want 0x1.b63a7f56fce2p-1022 got -0x1.497a9bc51fffcp-1024 ulperr -9158460486713344.000 = -0x1.044c92p+53 + 0x1.000a4cp-1
src/math/special/fma.h:773: RU fmal(0x1.f73d5f4e81fd8p-1022,0x1.7ccff2642124ap-2,0x1.e7d836a0c8308p-1022) want 0x1.517f1763126d4p-1021 got -0x1.06939f3371fffp-1021 ulperr -10556596895612928.000 = -0x1.2c095ap+53 + 0x1.0020d2p-1
src/math/special/fma.h:774: RU fmal(0x1.b4328925969fbp-1022,0x1.8fa02832a22d5p-2,0x1.2084598e2f8c6p-1022) want 0x1.cabf43838dc52p-1022 got -0x1.7c61d65f0a3ffp-1022 ulperr -14762118276448256.000 = -0x1.a3908cp+53 + 0x1.002f8cp-1
src/math/special/fma.h:775: bad fp exception: RU fmal(0x1.66ee60a92676fp-1022,0x1.eddd2e7681ce4p-2,0x1.b81d57daeb3a7p-1022)=0x1.329c918ffb683p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:775: RU fmal(0x1.66ee60a92676fp-1022,0x1.eddd2e7681ce4p-2,0x1.b81d57daeb3a7p-1022) want 0x1.329c918ffb683p-1021 got 0x1.cd379885b8008p-1025 ulperr -4886854591578112.000 = -0x1.15c918p+52 + 0x1.fff8ccp-2
src/math/special/fma.h:776: bad fp exception: RU fmal(0x1.ff2737585895dp-1022,0x1.fb4bf3828ae4ap-2,0x1.4a866847740fp-1022)=0x1.23e07e4dbbeabp-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:776: RU fmal(0x1.ff2737585895dp-1022,0x1.fb4bf3828ae4ap-2,0x1.4a866847740fp-1022) want 0x1.23e07e4dbbeabp-1021 got 0x1.46c53f7571002p-1023 ulperr -3697601232764928.000 = -0x1.a45e5cp+51 + 0x1.ffeb94p-2
src/math/special/fma.h:777: bad fp exception: RU fmal(0x1.5e2008d269a86p-1022,0x1.507bbbe4d78eep-2,0x1.6220c6f83f636p-1022)=0x1.d52d9874f1c75p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:777: RU fmal(0x1.5e2008d269a86p-1022,0x1.507bbbe4d78eep-2,0x1.6220c6f83f636p-1022) want 0x1.d52d9874f1c75p-1022 got 0x1.eda0503c4a002p-1023 ulperr -3911886277967872.000 = -0x1.bcbaep+51 + 0x1.ffc24cp-2
src/math/special/fma.h:778: bad fp exception: RU fmal(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022)=0x1.9864925e2fb1p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:778: RU fmal(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022) want 0x1.9864925e2fb1p-1022 got -0x1.53ae580e8bff8p-1025 ulperr -7931489261977600.000 = -0x1.c2da5cp+52 + 0x1.00054ep-1
src/math/special/fma.h:779: RU fmal(0x1.7b353b81e793dp-1022,0x1.82b426f874c6dp-2,0x1.d92b19d21fd5cp-1022) want 0x1.342fb0c544a79p-1021 got 0x1.2af4c8aebe401p-1022 ulperr -2792024021401600.000 = -0x1.3d6a98p+51 + 0x1.ffdaa2p-2
src/math/special/fma.h:780: bad fp exception: RU fmal(0x1.5be667823370ap-1022,0x1.a8a99b163869bp-2,0x1.95456b68dc3bcp-1022)=0x1.12c638de03c71p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:780: RU fmal(0x1.5be667823370ap-1022,0x1.a8a99b163869bp-2,0x1.95456b68dc3bcp-1022) want 0x1.12c638de03c71p-1021 got 0x1.49af7fc787002p-1023 ulperr -3383908095754240.000 = -0x1.80b4bp+51 + 0x1.ffeb66p-2
src/math/special/fma.h:781: bad fp exception: RU fmal(0x1.17b0fc6c850e5p-1022,0x1.d1d0a4853c315p-2,0x1.36b79f7c0c24p-1022)=0x1.b5f2baff5635dp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:781: RU fmal(0x1.17b0fc6c850e5p-1022,0x1.d1d0a4853c315p-2,0x1.36b79f7c0c24p-1022) want 0x1.b5f2baff5635dp-1022 got 0x1.6a1930472401p-1026 ulperr -7306333686595584.000 = -0x1.9f5126p+52 + 0x1.fffa58p-2
src/math/special/fma.h:782: RU fmal(0x1.bd97819bacfd8p-1022,0x1.2c25f267ba4eep-2,0x1.804b5204a3f3ap-1022) want 0x1.01739c190fd97p-1021 got 0x1.b9e166e6b4001p-1022 ulperr -642314640818176.000 = -0x1.241744p+49 + 0x1.ffc8c4p-2
src/math/special/fma.h:783: RU fmal(0x1.596577053873dp-1022,0x1.3562ab2d29949p-2,0x1.b3f1ee75db6e7p-1022) want 0x1.0e268a498009bp-1021 got 0x1.e8136bc159401p-1022 ulperr -459377991483392.000 = -0x1.a1cd46p+48 + 0x1.ffc2fep-2
src/math/special/fma.h:784: bad fp exception: RU fmal(0x1.3c7a68cf0f7b3p-1022,0x1.9a55c15b167bdp-2,0x1.7635b7b163c07p-1022)=0x1.f5073b93b7b81p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:784: RU fmal(0x1.3c7a68cf0f7b3p-1022,0x1.9a55c15b167bdp-2,0x1.7635b7b163c07p-1022) want 0x1.f5073b93b7b81p-1022 got 0x1.75f9a97213802p-1023 ulperr -5524660993130496.000 = -0x1.3a0a66p+52 + 0x1.ffd14p-2
src/math/special/fma.h:785: RU fmal(0x1.5825164bc4068p-1022,0x1.dcbb6e5ff3245p-2,0x1.52fc3be0e84dap-1022) want 0x1.f334771c2dcfbp-1022 got 0x1.2b86ba6b02001p-1022 ulperr -3512783958179840.000 = -0x1.8f5b78p+51 + 0x1.ffb51ep-2
src/math/special/fma.h:786: RU fmal(0x1.139ea77b760ecp+1022,0x1.9b25f2fd017eap+2,-0x1.bc16788922b6fp+1023) want 0x1.b93aac527380fp+1023 got 0x1.c3ec4f2ee0001p+1022 ulperr -3787028357447680.000 = -0x1.ae8908p+51 + 0x1.ffc782p-2
src/math/special/fma.h:787: RU fmal(0x1.0e6f9c1657d7cp+1022,0x1.4d5c6b55ab5f1p+2,-0x1.e027dd5742e2cp+1023) want 0x1.c0538372b4bbfp+1022 got 0x1.54dede6de0001p+1021 ulperr -4888708943708160.000 = -0x1.15e414p+52 + 0x1.ffd564p-2
src/math/special/fma.h:788: RU fmal(0x1.1182524fa411cp+1022,0x1.a3dba56842d19p+2,-0x1.c1ad59474d71fp+1023) want 0x1.bf78969300a77p+1023 got 0x1.8651491ef0001p+1022 ulperr -4438724683235328.000 = -0x1.f89fe4p+51 + 0x1.ffcf36p-2
src/math/special/fma.h:789: RU fmal(0x1.1cbf4fb8ec82p+1022,0x1.5e32019a84fbbp+2,-0x1.985af08f32edep+1023) want 0x1.72af6bbad4a29p+1023 got 0x1.a68c1c1ec0001p+1023 ulperr 912367152005120.000 = 0x1.9ee584p+49 + 0x1.ff965cp-2
src/math/special/fma.h:790: RU fmal(0x1.311e25c6db346p+1022,0x1.4e30db6c4b51dp+2,-0x1.7681f7a9786a7p+1023) want 0x1.a61d29434fc14p+1023 got -0x1.791d1988fffffp+1017 ulperr -7529566222417920.000 = -0x1.ac019cp+52 + 0x1.0000bcp-1
src/math/special/fma.h:791: RU fmal(0x1.1201cf577052fp+1022,0x1.59730b2db7a16p+2,-0x1.56f1a64a078d5p+1023) want 0x1.8c8d801df34dap+1023 got -0x1.3048609fd7fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.001304p-1
src/math/special/fma.h:792: RU fmal(0x1.3e52335b76e81p+1022,0x1.4dbd56f857479p+2,-0x1.509340c11bd2ep+1023) want 0x1.ed6576837f654p+1023 got -0x1.e498d5441bfffp+1022 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.001e4ap-1
src/math/special/fma.h:793: RU fmal(0x1.18566b4f843cbp+1022,0x1.444fba10eaf29p+2,-0x1.f927beae57f0ap+1023) want 0x1.9a433b979655ap+1022 got 0x1.a048d2820c001p+1022 ulperr 105937230626816.000 = 0x1.8165bcp+46 + 0x1.004bf6p-1
src/math/special/fma.h:794: RU fmal(0x1.3fbe544fe1be8p+1022,0x1.2d2a5fda03639p+2,-0x1.007407dbfd03cp+1023) want 0x1.efdb644b613e6p+1023 got -0x1.e14223655ffffp+1022 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.001e14p-1
src/math/special/fma.h:795: RU fmal(0x1.263a0d3bc2e4p+1022,0x1.4cc198adbc651p+2,-0x1.734b1c1f7fdb8p+1023) want 0x1.899878afc0fa3p+1023 got 0x1.a136204480001p+1023 ulperr 415454233362432.000 = 0x1.79da7ap+48 + 0x1.ff97b2p-2
src/math/special/fma.h:796: RU fmal(0x1.5bf4aec8efc8ep+1022,0x1.555f0341516c9p+2,-0x1.c706408acd14cp+1023) want 0x1.d8f5e18b868bdp+1023 got 0x1.3e5679fdf8001p+1022 ulperr -5520279589617664.000 = -0x1.39caa4p+52 + 0x1.ffd836p-2
src/math/special/fma.h:797: RU fmal(0x1.1e57f1af78279p+1022,0x1.34bc0c7f082b3p+2,-0x1.497b92c1365edp+1023) want 0x1.692cb7ec68a94p+1023 got -0x1.c0a1f29b27fffp+1021 ulperr -8326959113175040.000 = -0x1.d95534p+52 + 0x1.000e06p-1
src/math/special/fma.h:798: RU fmal(0x1.1d9824cd73511p+1022,0x1.1d557ddfe47ffp+2,-0x1.556cdb1d20a72p+1023) want 0x1.2736a6b6e35f3p+1023 got 0x1.bc6f9c9778001p+1021 ulperr -3238800209739776.000 = -0x1.70357ep+51 + 0x1.ffe43ap-2
src/math/special/fma.h:799: RU fmal(0x1.1ff85a24aff31p+1022,0x1.39ab374b2680dp+2,-0x1.35e6b07b651b8p+1023) want 0x1.8bc7ce2087081p+1023 got 0x1.84b319bafa001p+1023 ulperr -124568110891008.000 = -0x1.c52d18p+46 + 0x1.ff9ed4p-2
src/math/special/fma.h:800: RU fmal(0x1.0449b3965227ep+1022,0x1.4430d4441f9f2p+2,-0x1.a6966c96307ep+1023) want 0x1.d94eda8c81772p+1022 got -0x1.992ed6b71ffffp+1021 ulperr -11925733685329920.000 = -0x1.52f322p+53 + 0x1.001992p-1
src/math/special/fma.h:801: RU fmal(0x1.3c91fa00fd0c7p+1022,0x1.1b6661c0b0303p+2,-0x1.f1f2846b64483p+1023) want 0x1.95eae0d2644d4p+1022 got 0x1.9985d8eaa0001p+1019 ulperr -6240425346072576.000 = -0x1.62ba24p+52 + 0x1.00799ap-1
src/math/special/fma.h:802: RU fmal(0x1.0979b36d46534p+1022,0x1.12fa205f41f7fp+2,-0x1.a83ecf4544a63p+1023) want 0x1.2420f34e2aa3dp+1022 got -0x1.335a0fe67ffffp+1019 ulperr -5815056080044032.000 = -0x1.4a8c34p+52 + 0x1.ff099ap-2
src/math/special/fma.h:803: RU fmal(0x1.4c89df582a599p+1022,0x1.55f3dc473ea8fp+2,-0x1.e35037292ddfp+1023) want 0x1.95109fdbc3772p+1023 got -0x1.afa3b29623fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.001afap-1
src/math/special/fma.h:804: RU fmal(0x1.35ee0a669c4fbp+1022,0x1.2263cb63f386ap+2,-0x1.449218ae35ac7p+1023) want 0x1.7a8ed977d817bp+1023 got 0x1.47da9ddfb8001p+1022 ulperr -3775828693352448.000 = -0x1.ad4314p+51 + 0x1.ffd704p-2
src/math/special/fma.h:805: RU fmal(0x1.117cc860f61bcp+1022,0x1.440985b25d994p+2,-0x1.d7a7d82000449p+1023) want 0x1.b960b7088e75p+1022 got 0x1.ddfba372c0001p+1022 ulperr 643964982001664.000 = 0x1.24d764p+49 + 0x1.00444p-1
src/math/special/fma.h:806: RU fmal(0x1.1e78a37be320fp+1022,0x1.0db0fce62287bp+2,-0x1.376337da5eb53p+1023) want 0x1.24326b9956dfcp+1023 got -0x1.d2881b3595fffp+1023 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.003a52p-1
src/math/special/fma.h:807: RU fmal(0x1.0c79b5c8331c2p+1022,0x1.0aba6ea746b5p+2,-0x1.c86f1fcaf0741p+1023) want 0x1.9c135bb2cff85p+1021 got -0x1.cc298babfffffp+1019 ulperr -9273125376098304.000 = -0x1.078edep+53 + 0x1.fe1cc2p-2
src/math/special/fma.h:808: RU fmal(0x1.556c4c072f272p+1022,0x1.347758d7d4eb5p+2,-0x1.c6fe4f24b248dp+1023) want 0x1.6fcc9f756df6ep+1023 got -0x1.f6f4c76597fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.001f7p-1
src/math/special/fma.h:809: RU fmal(-0x1.e8349b891b2fp-1,0x1.4a6dec9b72578p-1,0x1.3b6151ce809ddp-1) want 0x1.3a62fe330b356p-11 got -0x1.d97120fffffffp-11 ulperr -13859626462216192.000 = -0x1.89ea0ep+53 + 0x1.003b2ep-1
src/math/special/fma.h:810: RU fmal(0x1.2996632ac7d74p-1,-0x1.bb3c58b654d94p-1,0x1.01a6660e64a31p-1) want 0x1.ed045bb956a8fp-15 got -0x1.070d61fffffffp-15 ulperr -13300911346548736.000 = -0x1.7a08dep+53 + 0x1.0aa0e2p-1
src/math/special/fma.h:811: RU fmal(-0x1.c602e894c1df8p-1,0x1.a1c980e7d3f94p-1,0x1.7271244b43386p-1) want -0x1.ba251fe026e5bp-15 got -0x1.af2b6cp-15 ulperr 193081311756288.000 = 0x1.5f367ep+47 + 0x1.fa6bcap-2
src/math/special/fma.h:812: RU fmal(-0x1.c84baf47e85cp-1,0x1.770b5149ef2ep-1,0x1.4d80f139320bap-1) want -0x1.79277433b9e23p-10 got 0x1.d4b6fp-11 ulperr 10757823629623296.000 = 0x1.31c178p+53 + 0x1.ffc56ap-2
src/math/special/fma.h:813: RU fmal(-0x1.36e667dcf9c6p-1,0x1.2591f82556b88p-1,0x1.2452a0f795f95p-1) want 0x1.c83c8e63c15ap-3 got -0x1.221ccbfffffffp-12 ulperr -8036166204915712.000 = -0x1.c8cd9cp+52 + 0x1.000012p-1
src/math/special/fma.h:814: RU fmal(0x1.88b2cede61e4cp-1,-0x1.71dcab5ad9e9p-3,0x1.32b27fea2ae97p-3) want 0x1.70461909b25e3p-7 got -0x1.affe57fffffffp-17 ulperr -6486162973655040.000 = -0x1.70b218p+52 + 0x1.00000ep-1
src/math/special/fma.h:815: RU fmal(0x1.8d1e44002c98p-3,-0x1.af9fdfb347834p-1,0x1.e280942fb4146p-4) want -0x1.761ac23896dfdp-5 got 0x1.0bec48p-14 ulperr 6590522625884160.000 = 0x1.76a0bap+52 + 0x1.ffffdep-2
src/math/special/fma.h:816: RU fmal(0x1.236e8cb9492c8p-1,-0x1.d37443a57f1c4p-1,0x1.ca10df801aabcp-4) want -0x1.a1a2cdf0138f9p-2 got 0x1.f090cab7p-5 ulperr 8439088898113536.000 = 0x1.dfb4e8p+52 + 0x1.fff07cp-2
src/math/special/fma.h:817: RU fmal(-0x1.6ad943e610fb8p-1,-0x1.cef92a7bb18bcp-1,0x1.f28587d8fb0ep-4) want 0x1.866b5204b9aedp-1 got -0x1.8c9eb9a6fffffp-5 ulperr -7304415446827008.000 = -0x1.9f353cp+52 + 0x1.00031ap-1
src/math/special/fma.h:818: RU fmal(-0x1.60a8569a5d894p-1,-0x1.ca07e29dd171cp-1,0x1.b6c475ace09ecp-4) want 0x1.72549291e2f7bp-1 got -0x1.b6fd181e7ffffp-5 ulperr -6997593720619008.000 = -0x1.8dc464p+52 + 0x1.00036ep-1
src/math/special/fma.h:819: RU fmal(0x1.d1962720d678cp-1,-0x1.4548ee45c4084p-1,0x1.f416ab193d75cp-4) want -0x1.d2929879dc853p-2 got 0x1.fc38e6f4p-8 ulperr 8347732259373056.000 = 0x1.da837ep+52 + 0x1.fffe04p-2
src/math/special/fma.h:820: RU fmal(-0x1.9ddcb295a7d64p-1,0x1.67fb3a2068a78p-1,0x1.da9cd4597fe0ap-4) want -0x1.cf4f6eb4fc5d8p-2 got 0x1.59da5512p-6 ulperr 8530910467063808.000 = 0x1.e4ed16p+52 + 0x1.fffa98p-2
src/math/special/fma.h:821: RU fmal(0x1.c00d16ed45b88p+0,0x1.c787eddda3664p+0,0x1.1e3e6f0cc1802p-5) want 0x1.931b8f379dcc4p+1 got -0x1.63fb63b7fffffp-6 ulperr -7140470102687744.000 = -0x1.95e384p+52 + 0x1.000058p-1
src/math/special/fma.h:822: RU fmal(0x1.19c2a2372c184p+0,-0x1.cb506961c19fp+0,0x1.db1abf3f7ba3ap-6) want -0x1.f21c0eab0bc18p+0 got 0x1.a29607ffffff8p-13 ulperr 8763735812341760.000 = 0x1.f22924p+52 + 0x1.fffffcp-2
src/math/special/fma.h:823: RU fmal(-0x1.3a263218ccd1cp+0,-0x1.e818d390df27cp+0,0x1.2a81ed71785f5p-5) want 0x1.3025ab0f63926p+1 got -0x1.bfdf0b9bfffffp-6 ulperr -5412167746584576.000 = -0x1.33a568p+52 + 0x1.00007p-1
src/math/special/fma.h:824: RU fmal(0x1.b0b041fbaca58p+0,-0x1.9d5f76d178e6p+0,0x1.0215c7bb84cf9p-6) want -0x1.5b52aec7ef4p+1 got 0x1.6be7a78p-7 ulperr 6135178246225920.000 = 0x1.5cbe98p+52 + 0x1.ffffa6p-2
src/math/special/fma.h:825: RU fmal(-0x1.377549d9a87f4p+0,-0x1.a13d4a03dd6d8p+0,0x1.f190388bc5cc6p-7) want 0x1.ff83bebbd6fe5p+0 got -0x1.e5a6a43ffffffp-9 ulperr -9015346807701504.000 = -0x1.003b48p+53 + 0x1.00001ep-1
src/math/special/fma.h:826: RU fmal(0x1.6a726c0762ac8p-1,-0x1.d32f2d30e483cp+0,0x1.f953eb70fbde6p-7) want -0x1.46c61b3070332p+0 got 0x1.e556e47fffffep-11 ulperr 5752835962568704.000 = 0x1.4702c8p+52 + 0x1.fffffp-2
src/math/special/fma.h:827: RU fmal(0x1.94cf2509d40cp-1,0x1.721976af6dfbp+0,0x1.f51a456921c3ep-7) want 0x1.28880842acc61p+0 got -0x1.effe1dfffffffp-8 ulperr -5250719389057024.000 = -0x1.2a7806p+52 + 0x1.00003ep-1
src/math/special/fma.h:828: RU fmal(0x1.b128eb0ad8728p-1,0x1.7682566a54268p+0,0x1.bd4122a074cafp-8) want 0x1.3e9469530e763p+0 got -0x1.6fe0c7bffffffp-9 ulperr -5617153650720768.000 = -0x1.3f4c58p+52 + 0x1.000016p-1
src/math/special/fma.h:829: RU fmal(0x1.c4ae75976e35cp+0,-0x1.11c329dd1160cp+0,0x1.9993f5e13c9bdp-8) want -0x1.e27d925b07cf1p+0 got 0x1.198edf6p-9 ulperr 8497737213411328.000 = 0x1.e30a5ap+52 + 0x1.ffffdcp-2
src/math/special/fma.h:830: RU fmal(-0x1.85f81f88fa3c4p+0,-0x1.17648a494fa18p-1,0x1.37d305113b48p-10) want 0x1.aa367b7490e58p-1 got -0x1.7a59ecffffffep-12 ulperr -7501265072291840.000 = -0x1.aa65c6p+52 + 0x1.000006p-1
src/math/special/fma.h:831: RU fmal(-0x1.311f2b4319efcp+0,0x1.abbb5272e3d18p-1,0x1.35841b7bdbcfep-10) want -0x1.fd337f24b39ep-1 got 0x1.4cbc317ffffffp-11 ulperr 8963678351130624.000 = 0x1.fd86bp+52 + 0x1.ffffecp-2
src/math/special/fma.h:832: RU fmal(0x1.ab94369a9a0dp-1,0x1.9d1e0e0aa3bacp+0,0x1.0a63ca87cfa78p-11) want 0x1.592173ee296b7p+0 got -0x1.fd8043ffffff8p-13 ulperr -6072696672616448.000 = -0x1.59315ep+52 + 0x1.000002p-1
src/math/special/fma.h:833: RN fmal(0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want 0x1.000000001p-1030 got 0x1p-1038 ulperr -17523466567680.000 = -0x1.fep+43 + -0x1p-28
src/math/special/fma.h:834: RN fmal(-0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want -0x1.000000003p-1030 got -0x1p-1038 ulperr 17523466567680.000 = 0x1.fep+43 + 0x1p-28
src/math/special/fma.h:835: RD fmal(0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want 0x1.000000001p-1030 got 0x1p-1038 ulperr -17523467616256.000 = -0x1.fe0002p+43 + -0x1p-28
src/math/special/fma.h:836: RD fmal(-0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want -0x1.00000000301p-1030 got -0x1.000000001p-1038 ulperr 17523466567680.000 = 0x1.fep+43 + -0x1p+0
src/math/special/fma.h:837: RU fmal(0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want 0x1.00000000101p-1030 got 0x1.000000001p-1038 ulperr -17523466567680.000 = -0x1.fep+43 + 0x1p+0
src/math/special/fma.h:838: RU fmal(-0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want -0x1.000000003p-1030 got -0x1p-1038 ulperr 17523467616256.000 = 0x1.fe0002p+43 + 0x1p-28
src/math/special/fma.h:839: RZ fmal(0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want 0x1.000000001p-1030 got 0x1p-1038 ulperr -17523466567680.000 = -0x1.fdfffep+43 + -0x1p-28
src/math/special/fma.h:840: RZ fmal(-0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want -0x1.000000003p-1030 got -0x1p-1038 ulperr 17523466567680.000 = 0x1.fdfffep+43 + 0x1p-28
src/math/special/fma.h:841: RN fmal(-0x1p-1000,0x1.000001p-74,0x1p-1022) want 0x1.ffffffffffffep-1023 got 0x1.ffep-1023 ulperr -1099511627776.000 = -0x1p+40 + 0x1p-24
src/math/special/fma.h:842: RU fmal(-0x1p-1000,0x1.000001p-74,0x1p-1022) want 0x1.ffffffffffffep-1023 got 0x1.ffe0000000002p-1023 ulperr -1099511562240.000 = -0x1.fffffep+39 + 0x1p-24
src/math/special/fma.h:843: RD fmal(-0x1p-1000,0x1.000001p-74,0x1p-1022) want 0x1.ffffffffffffcp-1023 got 0x1.ffep-1023 ulperr -1099511627776.000 = -0x1p+40 + -0x1.fffffep-1
src/math/special/fma.h:844: RZ fmal(-0x1p-1000,0x1.000001p-74,0x1p-1022) want 0x1.ffffffffffffcp-1023 got 0x1.ffep-1023 ulperr -1099511562240.000 = -0x1.fffffcp+39 + -0x1.fffffep-1
FAIL src/math/fmal.exe [status 1]
src/math/special/ilogb.h:1: bad fp exception: RN ilogb(0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogb.h:2: bad fp exception: RN ilogb(-0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogb.h:6: bad fp exception: RN ilogb(inf)=2147483647, want INVALID got 0
src/math/special/ilogb.h:7: bad fp exception: RN ilogb(-inf)=2147483647, want INVALID got 0
src/math/special/ilogb.h:8: bad fp exception: RN ilogb(nan)=-2147483648, want INVALID got 0
FAIL src/math/ilogb.exe [status 1]
src/math/special/ilogbf.h:1: bad fp exception: RN ilogbf(0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogbf.h:2: bad fp exception: RN ilogbf(-0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogbf.h:6: bad fp exception: RN ilogbf(inf)=2147483647, want INVALID got 0
src/math/special/ilogbf.h:7: bad fp exception: RN ilogbf(-inf)=2147483647, want INVALID got 0
src/math/special/ilogbf.h:8: bad fp exception: RN ilogbf(-nan)=-2147483648, want INVALID got 0
FAIL src/math/ilogbf.exe [status 1]
src/math/special/ilogb.h:1: bad fp exception: RN ilogbl(0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogb.h:2: bad fp exception: RN ilogbl(-0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogb.h:6: bad fp exception: RN ilogbl(inf)=2147483647, want INVALID got 0
src/math/special/ilogb.h:7: bad fp exception: RN ilogbl(-inf)=2147483647, want INVALID got 0
src/math/special/ilogb.h:8: bad fp exception: RN ilogbl(nan)=-2147483648, want INVALID got 0
FAIL src/math/ilogbl.exe [status 1]
X src/math/special/j0.h:7: RN j0(-0x1.33d132fd04a92p+1) want 0x1.092b2a541a68ep-19 got 0x1.092b2a541b1ap-19 ulperr 2833.704 = 0x1.624p+11 + -0x1.2ebdbp-2
X src/math/special/j0.h:8: RN j0(-0x1.33d15297be06fp+1) want 0x1.5352913be3275p-26 got 0x1.5352913ddb41bp-26 ulperr 2064806.000 = 0x1.f81a6p+20 + 0x1.c281e2p-7
X src/math/special/j0.h:9: RN j0(0x1.33d152e971b4p+1) want -0x1.19b7921f03c8ep-54 got -0x1.00209921727cbp-54 ulperr 450179413049344.000 = 0x1.996f9p+48 + 0x1.ece5dp-5
X src/math/special/j0.h:10: RN j0(0x1.6148f5b2c2e45p+2) want -0x1.fbb40985f6e34p-56 got -0x1.ebcb069d486ccp-56 ulperr 279895217274880.000 = 0x1.fd205ep+47 + -0x1.1ac8a8p-2
X src/math/special/j0.h:11: RN j0(0x1.14eb56cccdecap+3) want -0x1.6e8eeb22e5818p-54 got -0x1.6d2a820627412p-54 ulperr 24492348801024.000 = 0x1.64691cp+44 + -0x1.63ab44p-2
X src/math/special/j0.h:12: RN j0(0x1.c071b22fbbafap+1023) want -0x1.a348b1f34dd1ap-526 got -0x1.a348b1f34d33dp-526 ulperr 2525.019 = 0x1.3bap+11 + 0x1.3153c2p-6
X src/math/special/j0.h:13: RN j0(0x1.f7350b1701ef7p+0) want 0x1.f32b3a3640292p-3 got 0x1.f32b3a3640296p-3 ulperr 3.947 = 0x1p+2 + -0x1.b3bad8p-5
X src/math/sanity/jn.h:8: RN jn(5, 0x1.1f9ef934745cbp-1) want 0x1.e274364abf2d5p-17 got 0x1.e274364abf2d2p-17, ulperr -2.504 = -0x1.8p+1 + 0x1.fbe5c8p-2
X src/math/sanity/jnf.h:1: RN jnf(-2, -0x1.0223ap+3) want -0x1.863726p-4 got -0x1.86372ap-4, ulperr -2.009 = -0x1p+1 + -0x1.28885p-7
X src/math/sanity/jnf.h:8: RN jnf(5, 0x1.1f9efap-1) want 0x1.e2743cp-17 got 0x1.e27442p-17, ulperr 2.537 = 0x1.8p+1 + -0x1.d9c372p-2
X src/math/sanity/jnf.h:10: RN jnf(7, -0x1.5b86eap-1) want -0x1.b39a9cp-24 got -0x1.b39a98p-24, ulperr 1.621 = 0x1p+1 + -0x1.83c12p-2
X src/math/special/lgamma.h:145: RN lgamma(-0x1.4p+1) want -0x1.ccbf9f5ed0f16p-5,-1 got -0x1.ccbf9f5ed0f2p-5,-1 ulperr -10.465 = -0x1.4p+3 + -0x1.dc4f24p-2
X src/math/sanity/lgammaf.h:3: RN lgammaf(-0x1.0c34b4p+3) want -0x1.46d732p+3,-1 got -0x1.46d736p+3,-1 ulperr -1.621 = -0x1p+1 + 0x1.83dafep-2
X src/math/sanity/lgammaf_r.h:3: RN lgammaf_r(-0x1.0c34b4p+3) want -0x1.46d732p+3,-1 got -0x1.46d736p+3,-1 ulperr -1.621 = -0x1p+1 + 0x1.83dafep-2
src/math/special/lgamma.h:145: RN lgammal(-0x1.4p+1) want -0x1.ccbf9f5ed0f16p-5,-1 got -0x1.ccbf9f5ed0f2p-5,-1 ulperr -10.465 = -0x1.4p+3 + -0x1.dc4f24p-2
FAIL src/math/lgammal.exe [status 1]
X src/math/crlibm/pow.h:13: bad fp exception: RN pow(0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:72: bad fp exception: RN pow(0x1p-1074,0x1p+0)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:73: bad fp exception: RN pow(0x1p-1042,0x1p+0)=0x1p-1042, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:75: bad fp exception: RN pow(-0x1p-1074,0x1p+0)=-0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:76: bad fp exception: RN pow(-0x1p-1042,0x1p+0)=-0x1p-1042, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:284: bad fp exception: RN pow(0x1p-1073,0x1p+0)=0x1p-1073, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:300: bad fp exception: RN pow(0x1p-1024,0x1p+0)=0x1p-1024, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:304: bad fp exception: RN pow(0x1p-1023,0x1p+0)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:310: bad fp exception: RN pow(0x1.ffffffffffffcp-1023,0x1p+0)=0x1.ffffffffffffcp-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:313: bad fp exception: RN pow(0x1.ffffffffffffep-1023,0x1p+0)=0x1.ffffffffffffep-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:338: bad fp exception: RN pow(0x1p-537,0x1p+1)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:437: bad fp exception: RN pow(0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:498: bad fp exception: RN pow(0x1p+350,-0x1.8p+1)=0x1p-1050, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:499: bad fp exception: RN pow(0x1p+700,-0x1.8p+0)=0x1p-1050, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:516: bad fp exception: RN pow(0x1p+1023,-0x1p+0)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:544: bad fp exception: RN pow(-0x1p-1073,0x1p+0)=-0x1p-1073, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:548: bad fp exception: RN pow(-0x1p-1024,0x1p+0)=-0x1p-1024, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:551: bad fp exception: RN pow(-0x1p-1023,0x1p+0)=-0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:557: bad fp exception: RN pow(-0x1.ffffffffffffcp-1023,0x1p+0)=-0x1.ffffffffffffcp-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:560: bad fp exception: RN pow(-0x1.ffffffffffffep-1023,0x1p+0)=-0x1.ffffffffffffep-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:581: bad fp exception: RN pow(-0x1p-537,0x1p+1)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:655: bad fp exception: RN pow(-0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:695: bad fp exception: RN pow(-0x1p+350,-0x1.8p+1)=-0x1p-1050, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:708: bad fp exception: RN pow(-0x1p+1023,-0x1p+0)=-0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/powf.h:103: bad fp exception: RU powf(0x1.fffffep+127,0x1p+0)=0x1.fffffep+127, want 0 got INEXACT|OVERFLOW
X src/math/ucb/powf.h:530: bad fp exception: RN powf(0x1.fffff8p-127,0x1p+0)=0x1.fffff8p-127, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/powf.h:533: bad fp exception: RN powf(0x1.fffffcp-127,0x1p+0)=0x1.fffffcp-127, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/powf.h:719: bad fp exception: RN powf(-0x1.fffff8p-127,0x1p+0)=-0x1.fffff8p-127, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/powf.h:722: bad fp exception: RN powf(-0x1.fffffcp-127,0x1p+0)=-0x1.fffffcp-127, want 0 got INEXACT|UNDERFLOW
FAIL src/math/powf.exe [status 1]
src/math/crlibm/pow.h:13: bad fp exception: RN powl(0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:72: bad fp exception: RN powl(0x1p-1074,0x1p+0)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:73: bad fp exception: RN powl(0x1p-1042,0x1p+0)=0x1p-1042, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:75: bad fp exception: RN powl(-0x1p-1074,0x1p+0)=-0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:76: bad fp exception: RN powl(-0x1p-1042,0x1p+0)=-0x1p-1042, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:284: bad fp exception: RN powl(0x1p-1073,0x1p+0)=0x1p-1073, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:300: bad fp exception: RN powl(0x1p-1024,0x1p+0)=0x1p-1024, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:304: bad fp exception: RN powl(0x1p-1023,0x1p+0)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:310: bad fp exception: RN powl(0x1.ffffffffffffcp-1023,0x1p+0)=0x1.ffffffffffffcp-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:313: bad fp exception: RN powl(0x1.ffffffffffffep-1023,0x1p+0)=0x1.ffffffffffffep-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:338: bad fp exception: RN powl(0x1p-537,0x1p+1)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:437: bad fp exception: RN powl(0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:498: bad fp exception: RN powl(0x1p+350,-0x1.8p+1)=0x1p-1050, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:499: bad fp exception: RN powl(0x1p+700,-0x1.8p+0)=0x1p-1050, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:516: bad fp exception: RN powl(0x1p+1023,-0x1p+0)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:544: bad fp exception: RN powl(-0x1p-1073,0x1p+0)=-0x1p-1073, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:548: bad fp exception: RN powl(-0x1p-1024,0x1p+0)=-0x1p-1024, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:551: bad fp exception: RN powl(-0x1p-1023,0x1p+0)=-0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:557: bad fp exception: RN powl(-0x1.ffffffffffffcp-1023,0x1p+0)=-0x1.ffffffffffffcp-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:560: bad fp exception: RN powl(-0x1.ffffffffffffep-1023,0x1p+0)=-0x1.ffffffffffffep-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:581: bad fp exception: RN powl(-0x1p-537,0x1p+1)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:655: bad fp exception: RN powl(-0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:695: bad fp exception: RN powl(-0x1p+350,-0x1.8p+1)=-0x1p-1050, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:708: bad fp exception: RN powl(-0x1p+1023,-0x1p+0)=-0x1p-1023, want 0 got INEXACT|UNDERFLOW
FAIL src/math/powl.exe [status 1]
X src/math/crlibm/sinh.h:84: RN sinh(0x1.d3e0d2f5d98d6p-2) want 0x1.e45428082fb8cp-2 got 0x1.e45428082fb8ap-2 ulperr -1.500 = -0x1p+1 + 0x1p-1
X src/math/crlibm/sinh.h:84: RN sinhl(0x1.d3e0d2f5d98d6p-2) want 0x1.e45428082fb8cp-2 got 0x1.e45428082fb8ap-2 ulperr -1.500 = -0x1p+1 + 0x1p-1
src/math/ucb/sqrt.h:47: bad fp exception: RN sqrt(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/ucb/sqrt.h:48: bad fp exception: RZ sqrt(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/ucb/sqrt.h:49: bad fp exception: RU sqrt(0x1.fffffffffffffp+1023)=0x1p+512, want INEXACT got 0
src/math/ucb/sqrt.h:49: RU sqrt(0x1.fffffffffffffp+1023) want 0x1p+512 got 0x1.fffffffffffffp+511 ulperr -0.250 = -0x1p-1 + 0x1p-2
src/math/ucb/sqrt.h:50: bad fp exception: RD sqrt(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/ucb/sqrt.h:67: bad fp exception: RN sqrt(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:69: bad fp exception: RN sqrt(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:70: bad fp exception: RZ sqrt(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:72: bad fp exception: RZ sqrt(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:73: bad fp exception: RU sqrt(0x1.0000000000001p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:73: RU sqrt(0x1.0000000000001p+0) want 0x1.0000000000001p+0 got 0x1p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:75: bad fp exception: RU sqrt(0x1.fffffffffffffp-1)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:75: RU sqrt(0x1.fffffffffffffp-1) want 0x1p+0 got 0x1.fffffffffffffp-1 ulperr -0.250 = -0x1p-1 + 0x1p-2
src/math/ucb/sqrt.h:76: bad fp exception: RD sqrt(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:78: bad fp exception: RD sqrt(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:89: bad fp exception: RN sqrt(0x1.766bdb2b5006dp+1)=0x1.b5d6fec392e7dp+0, want INEXACT got 0
src/math/ucb/sqrt.h:90: bad fp exception: RN sqrt(0x1.b6546fb825911p+2)=0x1.4efb330ef0b43p+1, want INEXACT got 0
src/math/ucb/sqrt.h:91: bad fp exception: RN sqrt(0x1.e165309de7505p+2)=0x1.5f0d324d38bdp+1, want INEXACT got 0
src/math/ucb/sqrt.h:92: bad fp exception: RN sqrt(0x1.541dcfba96889p+0)=0x1.271370ec508dp+0, want INEXACT got 0
src/math/ucb/sqrt.h:93: bad fp exception: RN sqrt(0x1.754c3e27084ddp+1)=0x1.b52eb45df30b2p+0, want INEXACT got 0
src/math/ucb/sqrt.h:94: bad fp exception: RN sqrt(0x1.ebe1e1b093c41p+1)=0x1.f5d722e54e976p+0, want INEXACT got 0
src/math/ucb/sqrt.h:95: bad fp exception: RN sqrt(0x1.940d8d18455f5p+2)=0x1.419df976f692dp+1, want INEXACT got 0
src/math/ucb/sqrt.h:96: bad fp exception: RN sqrt(0x1.dae714a51b239p+2)=0x1.5cad1a5584b9ap+1, want INEXACT got 0
src/math/ucb/sqrt.h:97: bad fp exception: RN sqrt(0x1.a9f2d1079de4dp+1)=0x1.d2ff13bff7b67p+0, want INEXACT got 0
src/math/ucb/sqrt.h:98: bad fp exception: RN sqrt(0x1.57dd33103b871p-3)=0x1.a397d7b1e31f2p-2, want INEXACT got 0
src/math/ucb/sqrt.h:135: bad fp exception: RD sqrt(0x1.ffffffffffffep-1023)=0x1.ffffffffffffep-512, want INEXACT got 0
src/math/ucb/sqrt.h:135: RD sqrt(0x1.ffffffffffffep-1023) want 0x1.ffffffffffffep-512 got 0x1.fffffffffffffp-512 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:136: bad fp exception: RD sqrt(0x1.0000000000002p-1022)=0x1p-511, want INEXACT got 0
src/math/ucb/sqrt.h:136: RD sqrt(0x1.0000000000002p-1022) want 0x1p-511 got 0x1.0000000000001p-511 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:137: bad fp exception: RD sqrt(0x1.ffffffffffff7p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:138: bad fp exception: RD sqrt(0x1.ffffffffffff8p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:138: RD sqrt(0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp-1 got 0x1.ffffffffffffcp-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:139: bad fp exception: RD sqrt(0x1.ffffffffffff9p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:140: bad fp exception: RD sqrt(0x1.ffffffffffffap-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:140: RD sqrt(0x1.ffffffffffffap-1) want 0x1.ffffffffffffcp-1 got 0x1.ffffffffffffdp-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:141: bad fp exception: RD sqrt(0x1.ffffffffffffbp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:142: bad fp exception: RD sqrt(0x1.ffffffffffffcp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:142: RD sqrt(0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp-1 got 0x1.ffffffffffffep-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:143: bad fp exception: RD sqrt(0x1.ffffffffffffdp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:144: bad fp exception: RD sqrt(0x1.ffffffffffffep-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:144: RD sqrt(0x1.ffffffffffffep-1) want 0x1.ffffffffffffep-1 got 0x1.fffffffffffffp-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:145: bad fp exception: RD sqrt(0x1.0000000000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:145: RD sqrt(0x1.0000000000002p+0) want 0x1p+0 got 0x1.0000000000001p+0 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:146: bad fp exception: RD sqrt(0x1.0000000000003p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:147: bad fp exception: RD sqrt(0x1.0000000000004p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:147: RD sqrt(0x1.0000000000004p+0) want 0x1.0000000000001p+0 got 0x1.0000000000002p+0 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:148: bad fp exception: RD sqrt(0x1.0000000000005p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:149: bad fp exception: RD sqrt(0x1.0000000000006p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:149: RD sqrt(0x1.0000000000006p+0) want 0x1.0000000000002p+0 got 0x1.0000000000003p+0 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:150: bad fp exception: RD sqrt(0x1.0000000000007p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:151: bad fp exception: RD sqrt(0x1.ffffffffffffep+1021)=0x1.ffffffffffffep+510, want INEXACT got 0
src/math/ucb/sqrt.h:151: RD sqrt(0x1.ffffffffffffep+1021) want 0x1.ffffffffffffep+510 got 0x1.fffffffffffffp+510 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:152: bad fp exception: RD sqrt(0x1.0000000000002p+1022)=0x1p+511, want INEXACT got 0
src/math/ucb/sqrt.h:152: RD sqrt(0x1.0000000000002p+1022) want 0x1p+511 got 0x1.0000000000001p+511 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:206: bad fp exception: RN sqrt(0x1.ffffffffffffep-1023)=0x1.fffffffffffffp-512, want INEXACT got 0
src/math/ucb/sqrt.h:207: bad fp exception: RN sqrt(0x1.0000000000002p-1022)=0x1.0000000000001p-511, want INEXACT got 0
src/math/ucb/sqrt.h:208: bad fp exception: RN sqrt(0x1.ffffffffffff7p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:209: bad fp exception: RN sqrt(0x1.ffffffffffff8p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:210: bad fp exception: RN sqrt(0x1.ffffffffffff9p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:211: bad fp exception: RN sqrt(0x1.ffffffffffffap-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:212: bad fp exception: RN sqrt(0x1.ffffffffffffbp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:213: bad fp exception: RN sqrt(0x1.ffffffffffffcp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:214: bad fp exception: RN sqrt(0x1.ffffffffffffdp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:215: bad fp exception: RN sqrt(0x1.ffffffffffffep-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:216: bad fp exception: RN sqrt(0x1.0000000000002p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:217: bad fp exception: RN sqrt(0x1.0000000000003p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:218: bad fp exception: RN sqrt(0x1.0000000000004p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:219: bad fp exception: RN sqrt(0x1.0000000000005p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:220: bad fp exception: RN sqrt(0x1.0000000000006p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:221: bad fp exception: RN sqrt(0x1.0000000000007p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:222: bad fp exception: RN sqrt(0x1.ffffffffffffep+1021)=0x1.fffffffffffffp+510, want INEXACT got 0
src/math/ucb/sqrt.h:223: bad fp exception: RN sqrt(0x1.0000000000002p+1022)=0x1.0000000000001p+511, want INEXACT got 0
src/math/ucb/sqrt.h:273: bad fp exception: RU sqrt(0x1.ffffffffffffep-1023)=0x1.fffffffffffffp-512, want INEXACT got 0
src/math/ucb/sqrt.h:274: bad fp exception: RU sqrt(0x1.0000000000002p-1022)=0x1.0000000000001p-511, want INEXACT got 0
src/math/ucb/sqrt.h:275: bad fp exception: RU sqrt(0x1.ffffffffffff7p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:275: RU sqrt(0x1.ffffffffffff7p-1) want 0x1.ffffffffffffcp-1 got 0x1.ffffffffffffbp-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:276: bad fp exception: RU sqrt(0x1.ffffffffffff8p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:277: bad fp exception: RU sqrt(0x1.ffffffffffff9p-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:277: RU sqrt(0x1.ffffffffffff9p-1) want 0x1.ffffffffffffdp-1 got 0x1.ffffffffffffcp-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:278: bad fp exception: RU sqrt(0x1.ffffffffffffap-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:279: bad fp exception: RU sqrt(0x1.ffffffffffffbp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:279: RU sqrt(0x1.ffffffffffffbp-1) want 0x1.ffffffffffffep-1 got 0x1.ffffffffffffdp-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:280: bad fp exception: RU sqrt(0x1.ffffffffffffcp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:281: bad fp exception: RU sqrt(0x1.ffffffffffffdp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:281: RU sqrt(0x1.ffffffffffffdp-1) want 0x1.fffffffffffffp-1 got 0x1.ffffffffffffep-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:282: bad fp exception: RU sqrt(0x1.ffffffffffffep-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:283: bad fp exception: RU sqrt(0x1.0000000000002p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:284: bad fp exception: RU sqrt(0x1.0000000000003p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:284: RU sqrt(0x1.0000000000003p+0) want 0x1.0000000000002p+0 got 0x1.0000000000001p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:285: bad fp exception: RU sqrt(0x1.0000000000004p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:286: bad fp exception: RU sqrt(0x1.0000000000005p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:286: RU sqrt(0x1.0000000000005p+0) want 0x1.0000000000003p+0 got 0x1.0000000000002p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:287: bad fp exception: RU sqrt(0x1.0000000000006p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:288: bad fp exception: RU sqrt(0x1.0000000000007p+0)=0x1.0000000000004p+0, want INEXACT got 0
src/math/ucb/sqrt.h:288: RU sqrt(0x1.0000000000007p+0) want 0x1.0000000000004p+0 got 0x1.0000000000003p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:289: bad fp exception: RU sqrt(0x1.ffffffffffffep+1021)=0x1.fffffffffffffp+510, want INEXACT got 0
src/math/ucb/sqrt.h:290: bad fp exception: RU sqrt(0x1.0000000000002p+1022)=0x1.0000000000001p+511, want INEXACT got 0
src/math/ucb/sqrt.h:344: bad fp exception: RZ sqrt(0x1.ffffffffffffep-1023)=0x1.ffffffffffffep-512, want INEXACT got 0
src/math/ucb/sqrt.h:344: RZ sqrt(0x1.ffffffffffffep-1023) want 0x1.ffffffffffffep-512 got 0x1.fffffffffffffp-512 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:345: bad fp exception: RZ sqrt(0x1.0000000000002p-1022)=0x1p-511, want INEXACT got 0
src/math/ucb/sqrt.h:345: RZ sqrt(0x1.0000000000002p-1022) want 0x1p-511 got 0x1.0000000000001p-511 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:346: bad fp exception: RZ sqrt(0x1.ffffffffffff7p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:347: bad fp exception: RZ sqrt(0x1.ffffffffffff8p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:347: RZ sqrt(0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp-1 got 0x1.ffffffffffffcp-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:348: bad fp exception: RZ sqrt(0x1.ffffffffffff9p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:349: bad fp exception: RZ sqrt(0x1.ffffffffffffap-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:349: RZ sqrt(0x1.ffffffffffffap-1) want 0x1.ffffffffffffcp-1 got 0x1.ffffffffffffdp-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:350: bad fp exception: RZ sqrt(0x1.ffffffffffffbp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:351: bad fp exception: RZ sqrt(0x1.ffffffffffffcp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:351: RZ sqrt(0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp-1 got 0x1.ffffffffffffep-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:352: bad fp exception: RZ sqrt(0x1.ffffffffffffdp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:353: bad fp exception: RZ sqrt(0x1.ffffffffffffep-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:353: RZ sqrt(0x1.ffffffffffffep-1) want 0x1.ffffffffffffep-1 got 0x1.fffffffffffffp-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:354: bad fp exception: RZ sqrt(0x1.0000000000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:354: RZ sqrt(0x1.0000000000002p+0) want 0x1p+0 got 0x1.0000000000001p+0 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:355: bad fp exception: RZ sqrt(0x1.0000000000003p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:356: bad fp exception: RZ sqrt(0x1.0000000000004p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:356: RZ sqrt(0x1.0000000000004p+0) want 0x1.0000000000001p+0 got 0x1.0000000000002p+0 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:357: bad fp exception: RZ sqrt(0x1.0000000000005p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:358: bad fp exception: RZ sqrt(0x1.0000000000006p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:358: RZ sqrt(0x1.0000000000006p+0) want 0x1.0000000000002p+0 got 0x1.0000000000003p+0 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:359: bad fp exception: RZ sqrt(0x1.0000000000007p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:360: bad fp exception: RZ sqrt(0x1.ffffffffffffep+1021)=0x1.ffffffffffffep+510, want INEXACT got 0
src/math/ucb/sqrt.h:360: RZ sqrt(0x1.ffffffffffffep+1021) want 0x1.ffffffffffffep+510 got 0x1.fffffffffffffp+510 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:361: bad fp exception: RZ sqrt(0x1.0000000000002p+1022)=0x1p+511, want INEXACT got 0
src/math/ucb/sqrt.h:361: RZ sqrt(0x1.0000000000002p+1022) want 0x1p+511 got 0x1.0000000000001p+511 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/sanity/sqrt.h:2: bad fp exception: RN sqrt(0x1.161868e18bc67p+2)=0x1.0ad1adc856f29p+1, want INEXACT got 0
src/math/sanity/sqrt.h:5: bad fp exception: RN sqrt(0x1.288bbb0d6a1e6p+3)=0x1.85a7d346e8c13p+1, want INEXACT got 0
src/math/sanity/sqrt.h:6: bad fp exception: RN sqrt(0x1.52efd0cd80497p-1)=0x1.a0937a0b92ccbp-1, want INEXACT got 0
src/math/sanity/sqrt.h:8: bad fp exception: RN sqrt(0x1.1f9ef934745cbp-1)=0x1.7fbf4b5a076bcp-1, want INEXACT got 0
src/math/sanity/sqrt.h:9: bad fp exception: RN sqrt(0x1.8c5db097f7442p-1)=0x1.c27ce94ff39c5p-1, want INEXACT got 0
src/math/special/sqrt.h:9: bad fp exception: RN sqrt(0x1p-1073)=0x1.6a09e667f3bcdp-537, want INEXACT got 0
src/math/special/sqrt.h:10: bad fp exception: RN sqrt(0x1.8p-1073)=0x1.bb67ae8584caap-537, want INEXACT got 0
src/math/special/sqrt.h:13: bad fp exception: RN sqrt(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/special/sqrt.h:14: bad fp exception: RN sqrt(0x1.fffffffffffffp+0)=0x1.6a09e667f3bccp+0, want INEXACT got 0
src/math/special/sqrt.h:15: bad fp exception: RN sqrt(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/special/sqrt.h:16: bad fp exception: RN sqrt(0x1.0000000000001p+1)=0x1.6a09e667f3bcdp+0, want INEXACT got 0
src/math/special/sqrt.h:17: bad fp exception: RN sqrt(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/special/sqrt.h:18: bad fp exception: RN sqrt(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/special/sqrt.h:20: bad fp exception: RN sqrt(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/special/sqrt.h:21: bad fp exception: RN sqrt(0x1.ffffffffffffbp+1023)=0x1.ffffffffffffdp+511, want INEXACT got 0
src/math/special/sqrt.h:22: bad fp exception: RN sqrt(0x1.ffffffffffff7p+1023)=0x1.ffffffffffffbp+511, want INEXACT got 0
src/math/special/sqrt.h:23: bad fp exception: RN sqrt(0x1.ffffffffffff3p+1023)=0x1.ffffffffffff9p+511, want INEXACT got 0
src/math/special/sqrt.h:24: bad fp exception: RN sqrt(0x1.fffffffffffefp+1023)=0x1.ffffffffffff7p+511, want INEXACT got 0
src/math/special/sqrt.h:25: bad fp exception: RN sqrt(0x1.fffffffffffebp+1023)=0x1.ffffffffffff5p+511, want INEXACT got 0
src/math/special/sqrt.h:26: bad fp exception: RN sqrt(0x1.fffffffffffe7p+1023)=0x1.ffffffffffff3p+511, want INEXACT got 0
src/math/special/sqrt.h:27: bad fp exception: RN sqrt(0x1.fffffffffffe3p+1023)=0x1.ffffffffffff1p+511, want INEXACT got 0
src/math/special/sqrt.h:28: bad fp exception: RN sqrt(0x1.fffffffffffdfp+1023)=0x1.fffffffffffefp+511, want INEXACT got 0
src/math/special/sqrt.h:29: bad fp exception: RN sqrt(0x1.fffffffffffdbp+1023)=0x1.fffffffffffedp+511, want INEXACT got 0
src/math/special/sqrt.h:30: bad fp exception: RN sqrt(0x1.fffffffffffd7p+1023)=0x1.fffffffffffebp+511, want INEXACT got 0
src/math/special/sqrt.h:31: bad fp exception: RN sqrt(0x1.0000000000003p-1022)=0x1.0000000000001p-511, want INEXACT got 0
src/math/special/sqrt.h:32: bad fp exception: RN sqrt(0x1.0000000000007p-1022)=0x1.0000000000003p-511, want INEXACT got 0
src/math/special/sqrt.h:33: bad fp exception: RN sqrt(0x1.000000000000bp-1022)=0x1.0000000000005p-511, want INEXACT got 0
src/math/special/sqrt.h:34: bad fp exception: RN sqrt(0x1.000000000000fp-1022)=0x1.0000000000007p-511, want INEXACT got 0
src/math/special/sqrt.h:35: bad fp exception: RN sqrt(0x1.0000000000013p-1022)=0x1.0000000000009p-511, want INEXACT got 0
src/math/special/sqrt.h:36: bad fp exception: RN sqrt(0x1.0000000000017p-1022)=0x1.000000000000bp-511, want INEXACT got 0
src/math/special/sqrt.h:37: bad fp exception: RN sqrt(0x1.000000000001bp-1022)=0x1.000000000000dp-511, want INEXACT got 0
src/math/special/sqrt.h:38: bad fp exception: RN sqrt(0x1.000000000001fp-1022)=0x1.000000000000fp-511, want INEXACT got 0
src/math/special/sqrt.h:39: bad fp exception: RN sqrt(0x1.0000000000023p-1022)=0x1.0000000000011p-511, want INEXACT got 0
src/math/special/sqrt.h:40: bad fp exception: RN sqrt(0x1.0000000000027p-1022)=0x1.0000000000013p-511, want INEXACT got 0
src/math/special/sqrt.h:41: bad fp exception: RN sqrt(0x1.000000000002bp-1022)=0x1.0000000000015p-511, want INEXACT got 0
src/math/special/sqrt.h:42: bad fp exception: RN sqrt(0x1.000000000002fp-1022)=0x1.0000000000017p-511, want INEXACT got 0
src/math/special/sqrt.h:43: bad fp exception: RN sqrt(0x1.0000000000033p-1022)=0x1.0000000000019p-511, want INEXACT got 0
src/math/special/sqrt.h:44: bad fp exception: RN sqrt(0x1.0000000000037p-1022)=0x1.000000000001bp-511, want INEXACT got 0
src/math/special/sqrt.h:45: bad fp exception: RN sqrt(0x1.7167bc36eaa3bp+6)=0x1.3384c7db650cdp+3, want INEXACT got 0
src/math/special/sqrt.h:46: bad fp exception: RN sqrt(0x1.7570994273ad7p+6)=0x1.353186e89b8ffp+3, want INEXACT got 0
src/math/special/sqrt.h:47: bad fp exception: RN sqrt(0x1.7dae969442fe6p+6)=0x1.389640fb18b75p+3, want INEXACT got 0
src/math/special/sqrt.h:48: bad fp exception: RN sqrt(0x1.7f8444fcf67e5p+6)=0x1.395659e94669fp+3, want INEXACT got 0
src/math/special/sqrt.h:49: bad fp exception: RN sqrt(0x1.8364650e63a54p+6)=0x1.3aea9efe1a3d7p+3, want INEXACT got 0
src/math/special/sqrt.h:50: bad fp exception: RN sqrt(0x1.85bedd274edd8p+6)=0x1.3bdf20c867057p+3, want INEXACT got 0
src/math/special/sqrt.h:51: bad fp exception: RN sqrt(0x1.8609cf496ab77p+6)=0x1.3bfd7e14b5eabp+3, want INEXACT got 0
src/math/special/sqrt.h:52: bad fp exception: RN sqrt(0x1.873849c70a375p+6)=0x1.3c77ed341d27fp+3, want INEXACT got 0
src/math/special/sqrt.h:53: bad fp exception: RN sqrt(0x1.8919c962cbaaep+6)=0x1.3d3a7113ee82fp+3, want INEXACT got 0
src/math/special/sqrt.h:54: bad fp exception: RN sqrt(0x1.8de4493e22dc6p+6)=0x1.3f27d448220c3p+3, want INEXACT got 0
src/math/special/sqrt.h:55: bad fp exception: RN sqrt(0x1.924829a17a288p+6)=0x1.40e9552eec28fp+3, want INEXACT got 0
src/math/special/sqrt.h:56: bad fp exception: RN sqrt(0x1.92702cd992f12p+6)=0x1.40f94a6fdfddfp+3, want INEXACT got 0
src/math/special/sqrt.h:57: bad fp exception: RN sqrt(0x1.92b763a8311fdp+6)=0x1.4115af614695fp+3, want INEXACT got 0
src/math/special/sqrt.h:58: bad fp exception: RN sqrt(0x1.947da013c7293p+6)=0x1.41ca91102940fp+3, want INEXACT got 0
src/math/special/sqrt.h:59: bad fp exception: RN sqrt(0x1.9536091c494d2p+6)=0x1.4213e334c77adp+3, want INEXACT got 0
src/math/special/sqrt.h:60: bad fp exception: RN sqrt(0x1.61b04c6p-1019)=0x1.a98b88f18b46dp-510, want INEXACT got 0
src/math/special/sqrt.h:61: bad fp exception: RN sqrt(0x1.93789f1p-1018)=0x1.4162ae43d5821p-509, want INEXACT got 0
src/math/special/sqrt.h:62: bad fp exception: RN sqrt(0x1.a1989b4p-1018)=0x1.46f6736eb44bbp-509, want INEXACT got 0
src/math/special/sqrt.h:63: bad fp exception: RN sqrt(0x1.f93bc9p-1018)=0x1.67a36ec403bafp-509, want INEXACT got 0
src/math/special/sqrt.h:64: bad fp exception: RN sqrt(0x1.2f675e3p-1017)=0x1.8a22ab6dcfee1p-509, want INEXACT got 0
src/math/special/sqrt.h:65: bad fp exception: RN sqrt(0x1.a158508p-1017)=0x1.ce418a96cf589p-509, want INEXACT got 0
src/math/special/sqrt.h:66: bad fp exception: RN sqrt(0x1.cd31f078p-1017)=0x1.e5ef1c65dccebp-509, want INEXACT got 0
src/math/special/sqrt.h:67: bad fp exception: RN sqrt(0x1.33b43b08p-1016)=0x1.18a9f607e1701p-508, want INEXACT got 0
src/math/special/sqrt.h:68: bad fp exception: RN sqrt(0x1.6e66a858p-1016)=0x1.324402a00b45fp-508, want INEXACT got 0
src/math/special/sqrt.h:69: bad fp exception: RN sqrt(0x1.8661cbf8p-1016)=0x1.3c212046bfdffp-508, want INEXACT got 0
src/math/special/sqrt.h:70: bad fp exception: RN sqrt(0x1.bbb221b4p-1016)=0x1.510681b939931p-508, want INEXACT got 0
src/math/special/sqrt.h:71: bad fp exception: RN sqrt(0x1.c4942f3cp-1016)=0x1.5461e59227ab5p-508, want INEXACT got 0
src/math/special/sqrt.h:72: bad fp exception: RN sqrt(0x1.dbb258c8p-1016)=0x1.5cf7b0f78d3afp-508, want INEXACT got 0
src/math/special/sqrt.h:73: bad fp exception: RN sqrt(0x1.57103ea4p-1015)=0x1.a31ab946d340bp-508, want INEXACT got 0
src/math/special/sqrt.h:74: bad fp exception: RN sqrt(0x1.9b294f88p-1015)=0x1.cad197e28e85bp-508, want INEXACT got 0
FAIL src/math/sqrt.exe [status 1]
src/math/ucb/sqrtf.h:47: bad fp exception: RN sqrtf(0x1.fffffep+127)=0x1.fffffep+63, want INEXACT got 0
src/math/ucb/sqrtf.h:48: bad fp exception: RZ sqrtf(0x1.fffffep+127)=0x1.fffffep+63, want INEXACT got 0
src/math/ucb/sqrtf.h:49: bad fp exception: RU sqrtf(0x1.fffffep+127)=0x1p+64, want INEXACT got 0
src/math/ucb/sqrtf.h:49: RU sqrtf(0x1.fffffep+127) want 0x1p+64 got 0x1.fffffep+63 ulperr -0.250 = -0x1p-1 + 0x1p-2
src/math/ucb/sqrtf.h:50: bad fp exception: RD sqrtf(0x1.fffffep+127)=0x1.fffffep+63, want INEXACT got 0
src/math/ucb/sqrtf.h:67: bad fp exception: RN sqrtf(0x1.000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:69: bad fp exception: RN sqrtf(0x1.fffffep-1)=0x1.fffffep-1, want INEXACT got 0
src/math/ucb/sqrtf.h:70: bad fp exception: RZ sqrtf(0x1.000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:72: bad fp exception: RZ sqrtf(0x1.fffffep-1)=0x1.fffffep-1, want INEXACT got 0
src/math/ucb/sqrtf.h:73: bad fp exception: RU sqrtf(0x1.000002p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:73: RU sqrtf(0x1.000002p+0) want 0x1.000002p+0 got 0x1p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrtf.h:75: bad fp exception: RU sqrtf(0x1.fffffep-1)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:75: RU sqrtf(0x1.fffffep-1) want 0x1p+0 got 0x1.fffffep-1 ulperr -0.250 = -0x1p-1 + 0x1p-2
src/math/ucb/sqrtf.h:76: bad fp exception: RD sqrtf(0x1.000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:78: bad fp exception: RD sqrtf(0x1.fffffep-1)=0x1.fffffep-1, want INEXACT got 0
src/math/ucb/sqrtf.h:85: bad fp exception: RN sqrtf(0x1.766bdcp+1)=0x1.b5d7p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:86: bad fp exception: RN sqrtf(0x1.b6547p+2)=0x1.4efb34p+1, want INEXACT got 0
src/math/ucb/sqrtf.h:87: bad fp exception: RN sqrtf(0x1.e1653p+2)=0x1.5f0d32p+1, want INEXACT got 0
src/math/ucb/sqrtf.h:88: bad fp exception: RN sqrtf(0x1.541ddp+0)=0x1.271372p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:89: bad fp exception: RN sqrtf(0x1.754c3ep+1)=0x1.b52eb4p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:90: bad fp exception: RN sqrtf(0x1.ebe1e2p+1)=0x1.f5d724p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:91: bad fp exception: RN sqrtf(0x1.940d8ep+2)=0x1.419dfap+1, want INEXACT got 0
src/math/ucb/sqrtf.h:92: bad fp exception: RN sqrtf(0x1.dae714p+2)=0x1.5cad1ap+1, want INEXACT got 0
src/math/ucb/sqrtf.h:93: bad fp exception: RN sqrtf(0x1.a9f2d2p+1)=0x1.d2ff14p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:94: bad fp exception: RN sqrtf(0x1.57dd34p-3)=0x1.a397d8p-2, want INEXACT got 0
src/math/ucb/sqrtf.h:96: bad fp exception: RN sqrtf(0x1p-149)=0x1.6a09e6p-75, want INEXACT got 0
src/math/ucb/sqrtf.h:97: bad fp exception: RZ sqrtf(0x1p-149)=0x1.6a09e6p-75, want INEXACT got 0
src/math/ucb/sqrtf.h:98: bad fp exception: RU sqrtf(0x1p-149)=0x1.6a09e8p-75, want INEXACT got 0
src/math/ucb/sqrtf.h:98: RU sqrtf(0x1p-149) want 0x1.6a09e8p-75 got 0x1.6a09e6p-75 ulperr -0.203 = -0x1p+0 + 0x1.980c44p-1
src/math/ucb/sqrtf.h:99: bad fp exception: RD sqrtf(0x1p-149)=0x1.6a09e6p-75, want INEXACT got 0
src/math/ucb/sqrtf.h:142: bad fp exception: RD sqrtf(0x1.fffffcp-127)=0x1.fffffcp-64, want INEXACT got 0
src/math/ucb/sqrtf.h:142: RD sqrtf(0x1.fffffcp-127) want 0x1.fffffcp-64 got 0x1.fffffep-64 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:143: bad fp exception: RD sqrtf(0x1.000004p-126)=0x1p-63, want INEXACT got 0
src/math/ucb/sqrtf.h:143: RD sqrtf(0x1.000004p-126) want 0x1p-63 got 0x1.000002p-63 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:144: bad fp exception: RD sqrtf(0x1.ffffeep-1)=0x1.fffff6p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:145: bad fp exception: RD sqrtf(0x1.fffffp-1)=0x1.fffff6p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:145: RD sqrtf(0x1.fffffp-1) want 0x1.fffff6p-1 got 0x1.fffff8p-1 ulperr 0.000 = 0x1p+0 + -0x1.fffffp-1
src/math/ucb/sqrtf.h:146: bad fp exception: RD sqrtf(0x1.fffff2p-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:147: bad fp exception: RD sqrtf(0x1.fffff4p-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:147: RD sqrtf(0x1.fffff4p-1) want 0x1.fffff8p-1 got 0x1.fffffap-1 ulperr 0.000 = 0x1p+0 + -0x1.fffff6p-1
src/math/ucb/sqrtf.h:148: bad fp exception: RD sqrtf(0x1.fffff6p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:149: bad fp exception: RD sqrtf(0x1.fffff8p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:149: RD sqrtf(0x1.fffff8p-1) want 0x1.fffffap-1 got 0x1.fffffcp-1 ulperr 0.000 = 0x1p+0 + -0x1.fffffcp-1
src/math/ucb/sqrtf.h:150: bad fp exception: RD sqrtf(0x1.fffffap-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:151: bad fp exception: RD sqrtf(0x1.fffffcp-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:151: RD sqrtf(0x1.fffffcp-1) want 0x1.fffffcp-1 got 0x1.fffffep-1 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:152: bad fp exception: RD sqrtf(0x1.000004p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:152: RD sqrtf(0x1.000004p+0) want 0x1p+0 got 0x1.000002p+0 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:153: bad fp exception: RD sqrtf(0x1.000006p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:154: bad fp exception: RD sqrtf(0x1.000008p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:154: RD sqrtf(0x1.000008p+0) want 0x1.000002p+0 got 0x1.000004p+0 ulperr 0.000 = 0x1p+0 + -0x1.fffff8p-1
src/math/ucb/sqrtf.h:155: bad fp exception: RD sqrtf(0x1.00000ap+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:156: bad fp exception: RD sqrtf(0x1.00000cp+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:156: RD sqrtf(0x1.00000cp+0) want 0x1.000004p+0 got 0x1.000006p+0 ulperr 0.000 = 0x1p+0 + -0x1.ffffeep-1
src/math/ucb/sqrtf.h:157: bad fp exception: RD sqrtf(0x1.00000ep+0)=0x1.000006p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:158: bad fp exception: RD sqrtf(0x1.fffffcp+125)=0x1.fffffcp+62, want INEXACT got 0
src/math/ucb/sqrtf.h:158: RD sqrtf(0x1.fffffcp+125) want 0x1.fffffcp+62 got 0x1.fffffep+62 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:159: bad fp exception: RD sqrtf(0x1.000004p+126)=0x1p+63, want INEXACT got 0
src/math/ucb/sqrtf.h:159: RD sqrtf(0x1.000004p+126) want 0x1p+63 got 0x1.000002p+63 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:203: bad fp exception: RN sqrtf(0x1.fffffcp-127)=0x1.fffffep-64, want INEXACT got 0
src/math/ucb/sqrtf.h:204: bad fp exception: RN sqrtf(0x1.000004p-126)=0x1.000002p-63, want INEXACT got 0
src/math/ucb/sqrtf.h:205: bad fp exception: RN sqrtf(0x1.ffffeep-1)=0x1.fffff6p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:206: bad fp exception: RN sqrtf(0x1.fffffp-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:207: bad fp exception: RN sqrtf(0x1.fffff2p-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:208: bad fp exception: RN sqrtf(0x1.fffff4p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:209: bad fp exception: RN sqrtf(0x1.fffff6p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:210: bad fp exception: RN sqrtf(0x1.fffff8p-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:211: bad fp exception: RN sqrtf(0x1.fffffap-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:212: bad fp exception: RN sqrtf(0x1.fffffcp-1)=0x1.fffffep-1, want INEXACT got 0
src/math/ucb/sqrtf.h:213: bad fp exception: RN sqrtf(0x1.000004p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:214: bad fp exception: RN sqrtf(0x1.000006p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:215: bad fp exception: RN sqrtf(0x1.000008p+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:216: bad fp exception: RN sqrtf(0x1.00000ap+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:217: bad fp exception: RN sqrtf(0x1.00000cp+0)=0x1.000006p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:218: bad fp exception: RN sqrtf(0x1.00000ep+0)=0x1.000006p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:219: bad fp exception: RN sqrtf(0x1.fffffcp+125)=0x1.fffffep+62, want INEXACT got 0
src/math/ucb/sqrtf.h:220: bad fp exception: RN sqrtf(0x1.000004p+126)=0x1.000002p+63, want INEXACT got 0
src/math/ucb/sqrtf.h:264: bad fp exception: RU sqrtf(0x1.fffffcp-127)=0x1.fffffep-64, want INEXACT got 0
src/math/ucb/sqrtf.h:265: bad fp exception: RU sqrtf(0x1.000004p-126)=0x1.000002p-63, want INEXACT got 0
src/math/ucb/sqrtf.h:266: bad fp exception: RU sqrtf(0x1.ffffeep-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:266: RU sqrtf(0x1.ffffeep-1) want 0x1.fffff8p-1 got 0x1.fffff6p-1 ulperr -0.499 = -0x1p+0 + 0x1.000014p-1
src/math/ucb/sqrtf.h:267: bad fp exception: RU sqrtf(0x1.fffffp-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:268: bad fp exception: RU sqrtf(0x1.fffff2p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:268: RU sqrtf(0x1.fffff2p-1) want 0x1.fffffap-1 got 0x1.fffff8p-1 ulperr -0.499 = -0x1p+0 + 0x1.00000cp-1
src/math/ucb/sqrtf.h:269: bad fp exception: RU sqrtf(0x1.fffff4p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:270: bad fp exception: RU sqrtf(0x1.fffff6p-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:270: RU sqrtf(0x1.fffff6p-1) want 0x1.fffffcp-1 got 0x1.fffffap-1 ulperr -0.499 = -0x1p+0 + 0x1.000006p-1
src/math/ucb/sqrtf.h:271: bad fp exception: RU sqrtf(0x1.fffff8p-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:272: bad fp exception: RU sqrtf(0x1.fffffap-1)=0x1.fffffep-1, want INEXACT got 0
src/math/ucb/sqrtf.h:272: RU sqrtf(0x1.fffffap-1) want 0x1.fffffep-1 got 0x1.fffffcp-1 ulperr -0.499 = -0x1p+0 + 0x1.000002p-1
src/math/ucb/sqrtf.h:273: bad fp exception: RU sqrtf(0x1.fffffcp-1)=0x1.fffffep-1, want INEXACT got 0
src/math/ucb/sqrtf.h:274: bad fp exception: RU sqrtf(0x1.000004p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:275: bad fp exception: RU sqrtf(0x1.000006p+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:275: RU sqrtf(0x1.000006p+0) want 0x1.000004p+0 got 0x1.000002p+0 ulperr -0.499 = -0x1p+0 + 0x1.000004p-1
src/math/ucb/sqrtf.h:276: bad fp exception: RU sqrtf(0x1.000008p+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:277: bad fp exception: RU sqrtf(0x1.00000ap+0)=0x1.000006p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:277: RU sqrtf(0x1.00000ap+0) want 0x1.000006p+0 got 0x1.000004p+0 ulperr -0.499 = -0x1p+0 + 0x1.00000cp-1
src/math/ucb/sqrtf.h:278: bad fp exception: RU sqrtf(0x1.00000cp+0)=0x1.000006p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:279: bad fp exception: RU sqrtf(0x1.00000ep+0)=0x1.000008p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:279: RU sqrtf(0x1.00000ep+0) want 0x1.000008p+0 got 0x1.000006p+0 ulperr -0.499 = -0x1p+0 + 0x1.000018p-1
src/math/ucb/sqrtf.h:280: bad fp exception: RU sqrtf(0x1.fffffcp+125)=0x1.fffffep+62, want INEXACT got 0
src/math/ucb/sqrtf.h:281: bad fp exception: RU sqrtf(0x1.000004p+126)=0x1.000002p+63, want INEXACT got 0
src/math/ucb/sqrtf.h:325: bad fp exception: RZ sqrtf(0x1.fffffcp-127)=0x1.fffffcp-64, want INEXACT got 0
src/math/ucb/sqrtf.h:325: RZ sqrtf(0x1.fffffcp-127) want 0x1.fffffcp-64 got 0x1.fffffep-64 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:326: bad fp exception: RZ sqrtf(0x1.000004p-126)=0x1p-63, want INEXACT got 0
src/math/ucb/sqrtf.h:326: RZ sqrtf(0x1.000004p-126) want 0x1p-63 got 0x1.000002p-63 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:327: bad fp exception: RZ sqrtf(0x1.ffffeep-1)=0x1.fffff6p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:328: bad fp exception: RZ sqrtf(0x1.fffffp-1)=0x1.fffff6p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:328: RZ sqrtf(0x1.fffffp-1) want 0x1.fffff6p-1 got 0x1.fffff8p-1 ulperr 0.000 = 0x1p+0 + -0x1.fffffp-1
src/math/ucb/sqrtf.h:329: bad fp exception: RZ sqrtf(0x1.fffff2p-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:330: bad fp exception: RZ sqrtf(0x1.fffff4p-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:330: RZ sqrtf(0x1.fffff4p-1) want 0x1.fffff8p-1 got 0x1.fffffap-1 ulperr 0.000 = 0x1p+0 + -0x1.fffff6p-1
src/math/ucb/sqrtf.h:331: bad fp exception: RZ sqrtf(0x1.fffff6p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:332: bad fp exception: RZ sqrtf(0x1.fffff8p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:332: RZ sqrtf(0x1.fffff8p-1) want 0x1.fffffap-1 got 0x1.fffffcp-1 ulperr 0.000 = 0x1p+0 + -0x1.fffffcp-1
src/math/ucb/sqrtf.h:333: bad fp exception: RZ sqrtf(0x1.fffffap-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:334: bad fp exception: RZ sqrtf(0x1.fffffcp-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:334: RZ sqrtf(0x1.fffffcp-1) want 0x1.fffffcp-1 got 0x1.fffffep-1 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:335: bad fp exception: RZ sqrtf(0x1.000004p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:335: RZ sqrtf(0x1.000004p+0) want 0x1p+0 got 0x1.000002p+0 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:336: bad fp exception: RZ sqrtf(0x1.000006p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:337: bad fp exception: RZ sqrtf(0x1.000008p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:337: RZ sqrtf(0x1.000008p+0) want 0x1.000002p+0 got 0x1.000004p+0 ulperr 0.000 = 0x1p+0 + -0x1.fffff8p-1
src/math/ucb/sqrtf.h:338: bad fp exception: RZ sqrtf(0x1.00000ap+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:339: bad fp exception: RZ sqrtf(0x1.00000cp+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:339: RZ sqrtf(0x1.00000cp+0) want 0x1.000004p+0 got 0x1.000006p+0 ulperr 0.000 = 0x1p+0 + -0x1.ffffeep-1
src/math/ucb/sqrtf.h:340: bad fp exception: RZ sqrtf(0x1.00000ep+0)=0x1.000006p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:341: bad fp exception: RZ sqrtf(0x1.fffffcp+125)=0x1.fffffcp+62, want INEXACT got 0
src/math/ucb/sqrtf.h:341: RZ sqrtf(0x1.fffffcp+125) want 0x1.fffffcp+62 got 0x1.fffffep+62 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:342: bad fp exception: RZ sqrtf(0x1.000004p+126)=0x1p+63, want INEXACT got 0
src/math/ucb/sqrtf.h:342: RZ sqrtf(0x1.000004p+126) want 0x1p+63 got 0x1.000002p+63 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/sanity/sqrtf.h:2: bad fp exception: RN sqrtf(0x1.161868p+2)=0x1.0ad1aep+1, want INEXACT got 0
src/math/sanity/sqrtf.h:5: bad fp exception: RN sqrtf(0x1.288bbcp+3)=0x1.85a7d4p+1, want INEXACT got 0
src/math/sanity/sqrtf.h:6: bad fp exception: RN sqrtf(0x1.52efdp-1)=0x1.a0937ap-1, want INEXACT got 0
src/math/sanity/sqrtf.h:8: bad fp exception: RN sqrtf(0x1.1f9efap-1)=0x1.7fbf4cp-1, want INEXACT got 0
src/math/sanity/sqrtf.h:9: bad fp exception: RN sqrtf(0x1.8c5dbp-1)=0x1.c27ce8p-1, want INEXACT got 0
src/math/special/sqrtf.h:10: bad fp exception: RN sqrtf(0x1.8p-148)=0x1.3988e2p-74, want INEXACT got 0
src/math/special/sqrtf.h:11: bad fp exception: RN sqrtf(0x1p-149)=0x1.6a09e6p-75, want INEXACT got 0
src/math/special/sqrtf.h:13: bad fp exception: RN sqrtf(0x1.fffffep+127)=0x1.fffffep+63, want INEXACT got 0
src/math/special/sqrtf.h:15: bad fp exception: RN sqrtf(0x1.fffffcp-1)=0x1.fffffep-1, want INEXACT got 0
src/math/special/sqrtf.h:16: bad fp exception: RN sqrtf(0x1.fffffep-1)=0x1.fffffep-1, want INEXACT got 0
src/math/special/sqrtf.h:17: bad fp exception: RN sqrtf(0x1.fffffcp+0)=0x1.6a09e4p+0, want INEXACT got 0
src/math/special/sqrtf.h:18: bad fp exception: RN sqrtf(0x1.fffffep+0)=0x1.6a09e6p+0, want INEXACT got 0
src/math/special/sqrtf.h:19: bad fp exception: RN sqrtf(0x1.000002p+0)=0x1p+0, want INEXACT got 0
src/math/special/sqrtf.h:20: bad fp exception: RN sqrtf(0x1.000004p+0)=0x1.000002p+0, want INEXACT got 0
src/math/special/sqrtf.h:21: bad fp exception: RN sqrtf(0x1.000002p+1)=0x1.6a09e8p+0, want INEXACT got 0
src/math/special/sqrtf.h:22: bad fp exception: RN sqrtf(0x1.000004p+1)=0x1.6a09eap+0, want INEXACT got 0
FAIL src/math/sqrtf.exe [status 1]
src/math/ucb/sqrt.h:47: bad fp exception: RN sqrtl(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/ucb/sqrt.h:48: bad fp exception: RZ sqrtl(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/ucb/sqrt.h:49: bad fp exception: RU sqrtl(0x1.fffffffffffffp+1023)=0x1p+512, want INEXACT got 0
src/math/ucb/sqrt.h:49: RU sqrtl(0x1.fffffffffffffp+1023) want 0x1p+512 got 0x1.fffffffffffffp+511 ulperr -0.250 = -0x1p-1 + 0x1p-2
src/math/ucb/sqrt.h:50: bad fp exception: RD sqrtl(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/ucb/sqrt.h:67: bad fp exception: RN sqrtl(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:69: bad fp exception: RN sqrtl(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:70: bad fp exception: RZ sqrtl(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:72: bad fp exception: RZ sqrtl(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:73: bad fp exception: RU sqrtl(0x1.0000000000001p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:73: RU sqrtl(0x1.0000000000001p+0) want 0x1.0000000000001p+0 got 0x1p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:75: bad fp exception: RU sqrtl(0x1.fffffffffffffp-1)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:75: RU sqrtl(0x1.fffffffffffffp-1) want 0x1p+0 got 0x1.fffffffffffffp-1 ulperr -0.250 = -0x1p-1 + 0x1p-2
src/math/ucb/sqrt.h:76: bad fp exception: RD sqrtl(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:78: bad fp exception: RD sqrtl(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:89: bad fp exception: RN sqrtl(0x1.766bdb2b5006dp+1)=0x1.b5d6fec392e7dp+0, want INEXACT got 0
src/math/ucb/sqrt.h:90: bad fp exception: RN sqrtl(0x1.b6546fb825911p+2)=0x1.4efb330ef0b43p+1, want INEXACT got 0
src/math/ucb/sqrt.h:91: bad fp exception: RN sqrtl(0x1.e165309de7505p+2)=0x1.5f0d324d38bdp+1, want INEXACT got 0
src/math/ucb/sqrt.h:92: bad fp exception: RN sqrtl(0x1.541dcfba96889p+0)=0x1.271370ec508dp+0, want INEXACT got 0
src/math/ucb/sqrt.h:93: bad fp exception: RN sqrtl(0x1.754c3e27084ddp+1)=0x1.b52eb45df30b2p+0, want INEXACT got 0
src/math/ucb/sqrt.h:94: bad fp exception: RN sqrtl(0x1.ebe1e1b093c41p+1)=0x1.f5d722e54e976p+0, want INEXACT got 0
src/math/ucb/sqrt.h:95: bad fp exception: RN sqrtl(0x1.940d8d18455f5p+2)=0x1.419df976f692dp+1, want INEXACT got 0
src/math/ucb/sqrt.h:96: bad fp exception: RN sqrtl(0x1.dae714a51b239p+2)=0x1.5cad1a5584b9ap+1, want INEXACT got 0
src/math/ucb/sqrt.h:97: bad fp exception: RN sqrtl(0x1.a9f2d1079de4dp+1)=0x1.d2ff13bff7b67p+0, want INEXACT got 0
src/math/ucb/sqrt.h:98: bad fp exception: RN sqrtl(0x1.57dd33103b871p-3)=0x1.a397d7b1e31f2p-2, want INEXACT got 0
src/math/ucb/sqrt.h:135: bad fp exception: RD sqrtl(0x1.ffffffffffffep-1023)=0x1.ffffffffffffep-512, want INEXACT got 0
src/math/ucb/sqrt.h:135: RD sqrtl(0x1.ffffffffffffep-1023) want 0x1.ffffffffffffep-512 got 0x1.fffffffffffffp-512 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:136: bad fp exception: RD sqrtl(0x1.0000000000002p-1022)=0x1p-511, want INEXACT got 0
src/math/ucb/sqrt.h:136: RD sqrtl(0x1.0000000000002p-1022) want 0x1p-511 got 0x1.0000000000001p-511 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:137: bad fp exception: RD sqrtl(0x1.ffffffffffff7p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:138: bad fp exception: RD sqrtl(0x1.ffffffffffff8p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:138: RD sqrtl(0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp-1 got 0x1.ffffffffffffcp-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:139: bad fp exception: RD sqrtl(0x1.ffffffffffff9p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:140: bad fp exception: RD sqrtl(0x1.ffffffffffffap-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:140: RD sqrtl(0x1.ffffffffffffap-1) want 0x1.ffffffffffffcp-1 got 0x1.ffffffffffffdp-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:141: bad fp exception: RD sqrtl(0x1.ffffffffffffbp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:142: bad fp exception: RD sqrtl(0x1.ffffffffffffcp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:142: RD sqrtl(0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp-1 got 0x1.ffffffffffffep-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:143: bad fp exception: RD sqrtl(0x1.ffffffffffffdp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:144: bad fp exception: RD sqrtl(0x1.ffffffffffffep-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:144: RD sqrtl(0x1.ffffffffffffep-1) want 0x1.ffffffffffffep-1 got 0x1.fffffffffffffp-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:145: bad fp exception: RD sqrtl(0x1.0000000000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:145: RD sqrtl(0x1.0000000000002p+0) want 0x1p+0 got 0x1.0000000000001p+0 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:146: bad fp exception: RD sqrtl(0x1.0000000000003p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:147: bad fp exception: RD sqrtl(0x1.0000000000004p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:147: RD sqrtl(0x1.0000000000004p+0) want 0x1.0000000000001p+0 got 0x1.0000000000002p+0 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:148: bad fp exception: RD sqrtl(0x1.0000000000005p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:149: bad fp exception: RD sqrtl(0x1.0000000000006p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:149: RD sqrtl(0x1.0000000000006p+0) want 0x1.0000000000002p+0 got 0x1.0000000000003p+0 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:150: bad fp exception: RD sqrtl(0x1.0000000000007p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:151: bad fp exception: RD sqrtl(0x1.ffffffffffffep+1021)=0x1.ffffffffffffep+510, want INEXACT got 0
src/math/ucb/sqrt.h:151: RD sqrtl(0x1.ffffffffffffep+1021) want 0x1.ffffffffffffep+510 got 0x1.fffffffffffffp+510 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:152: bad fp exception: RD sqrtl(0x1.0000000000002p+1022)=0x1p+511, want INEXACT got 0
src/math/ucb/sqrt.h:152: RD sqrtl(0x1.0000000000002p+1022) want 0x1p+511 got 0x1.0000000000001p+511 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:206: bad fp exception: RN sqrtl(0x1.ffffffffffffep-1023)=0x1.fffffffffffffp-512, want INEXACT got 0
src/math/ucb/sqrt.h:207: bad fp exception: RN sqrtl(0x1.0000000000002p-1022)=0x1.0000000000001p-511, want INEXACT got 0
src/math/ucb/sqrt.h:208: bad fp exception: RN sqrtl(0x1.ffffffffffff7p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:209: bad fp exception: RN sqrtl(0x1.ffffffffffff8p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:210: bad fp exception: RN sqrtl(0x1.ffffffffffff9p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:211: bad fp exception: RN sqrtl(0x1.ffffffffffffap-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:212: bad fp exception: RN sqrtl(0x1.ffffffffffffbp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:213: bad fp exception: RN sqrtl(0x1.ffffffffffffcp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:214: bad fp exception: RN sqrtl(0x1.ffffffffffffdp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:215: bad fp exception: RN sqrtl(0x1.ffffffffffffep-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:216: bad fp exception: RN sqrtl(0x1.0000000000002p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:217: bad fp exception: RN sqrtl(0x1.0000000000003p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:218: bad fp exception: RN sqrtl(0x1.0000000000004p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:219: bad fp exception: RN sqrtl(0x1.0000000000005p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:220: bad fp exception: RN sqrtl(0x1.0000000000006p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:221: bad fp exception: RN sqrtl(0x1.0000000000007p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:222: bad fp exception: RN sqrtl(0x1.ffffffffffffep+1021)=0x1.fffffffffffffp+510, want INEXACT got 0
src/math/ucb/sqrt.h:223: bad fp exception: RN sqrtl(0x1.0000000000002p+1022)=0x1.0000000000001p+511, want INEXACT got 0
src/math/ucb/sqrt.h:273: bad fp exception: RU sqrtl(0x1.ffffffffffffep-1023)=0x1.fffffffffffffp-512, want INEXACT got 0
src/math/ucb/sqrt.h:274: bad fp exception: RU sqrtl(0x1.0000000000002p-1022)=0x1.0000000000001p-511, want INEXACT got 0
src/math/ucb/sqrt.h:275: bad fp exception: RU sqrtl(0x1.ffffffffffff7p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:275: RU sqrtl(0x1.ffffffffffff7p-1) want 0x1.ffffffffffffcp-1 got 0x1.ffffffffffffbp-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:276: bad fp exception: RU sqrtl(0x1.ffffffffffff8p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:277: bad fp exception: RU sqrtl(0x1.ffffffffffff9p-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:277: RU sqrtl(0x1.ffffffffffff9p-1) want 0x1.ffffffffffffdp-1 got 0x1.ffffffffffffcp-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:278: bad fp exception: RU sqrtl(0x1.ffffffffffffap-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:279: bad fp exception: RU sqrtl(0x1.ffffffffffffbp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:279: RU sqrtl(0x1.ffffffffffffbp-1) want 0x1.ffffffffffffep-1 got 0x1.ffffffffffffdp-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:280: bad fp exception: RU sqrtl(0x1.ffffffffffffcp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:281: bad fp exception: RU sqrtl(0x1.ffffffffffffdp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:281: RU sqrtl(0x1.ffffffffffffdp-1) want 0x1.fffffffffffffp-1 got 0x1.ffffffffffffep-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:282: bad fp exception: RU sqrtl(0x1.ffffffffffffep-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:283: bad fp exception: RU sqrtl(0x1.0000000000002p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:284: bad fp exception: RU sqrtl(0x1.0000000000003p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:284: RU sqrtl(0x1.0000000000003p+0) want 0x1.0000000000002p+0 got 0x1.0000000000001p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:285: bad fp exception: RU sqrtl(0x1.0000000000004p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:286: bad fp exception: RU sqrtl(0x1.0000000000005p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:286: RU sqrtl(0x1.0000000000005p+0) want 0x1.0000000000003p+0 got 0x1.0000000000002p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:287: bad fp exception: RU sqrtl(0x1.0000000000006p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:288: bad fp exception: RU sqrtl(0x1.0000000000007p+0)=0x1.0000000000004p+0, want INEXACT got 0
src/math/ucb/sqrt.h:288: RU sqrtl(0x1.0000000000007p+0) want 0x1.0000000000004p+0 got 0x1.0000000000003p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:289: bad fp exception: RU sqrtl(0x1.ffffffffffffep+1021)=0x1.fffffffffffffp+510, want INEXACT got 0
src/math/ucb/sqrt.h:290: bad fp exception: RU sqrtl(0x1.0000000000002p+1022)=0x1.0000000000001p+511, want INEXACT got 0
src/math/ucb/sqrt.h:344: bad fp exception: RZ sqrtl(0x1.ffffffffffffep-1023)=0x1.ffffffffffffep-512, want INEXACT got 0
src/math/ucb/sqrt.h:344: RZ sqrtl(0x1.ffffffffffffep-1023) want 0x1.ffffffffffffep-512 got 0x1.fffffffffffffp-512 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:345: bad fp exception: RZ sqrtl(0x1.0000000000002p-1022)=0x1p-511, want INEXACT got 0
src/math/ucb/sqrt.h:345: RZ sqrtl(0x1.0000000000002p-1022) want 0x1p-511 got 0x1.0000000000001p-511 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:346: bad fp exception: RZ sqrtl(0x1.ffffffffffff7p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:347: bad fp exception: RZ sqrtl(0x1.ffffffffffff8p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:347: RZ sqrtl(0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp-1 got 0x1.ffffffffffffcp-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:348: bad fp exception: RZ sqrtl(0x1.ffffffffffff9p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:349: bad fp exception: RZ sqrtl(0x1.ffffffffffffap-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:349: RZ sqrtl(0x1.ffffffffffffap-1) want 0x1.ffffffffffffcp-1 got 0x1.ffffffffffffdp-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:350: bad fp exception: RZ sqrtl(0x1.ffffffffffffbp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:351: bad fp exception: RZ sqrtl(0x1.ffffffffffffcp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:351: RZ sqrtl(0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp-1 got 0x1.ffffffffffffep-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:352: bad fp exception: RZ sqrtl(0x1.ffffffffffffdp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:353: bad fp exception: RZ sqrtl(0x1.ffffffffffffep-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:353: RZ sqrtl(0x1.ffffffffffffep-1) want 0x1.ffffffffffffep-1 got 0x1.fffffffffffffp-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:354: bad fp exception: RZ sqrtl(0x1.0000000000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:354: RZ sqrtl(0x1.0000000000002p+0) want 0x1p+0 got 0x1.0000000000001p+0 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:355: bad fp exception: RZ sqrtl(0x1.0000000000003p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:356: bad fp exception: RZ sqrtl(0x1.0000000000004p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:356: RZ sqrtl(0x1.0000000000004p+0) want 0x1.0000000000001p+0 got 0x1.0000000000002p+0 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:357: bad fp exception: RZ sqrtl(0x1.0000000000005p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:358: bad fp exception: RZ sqrtl(0x1.0000000000006p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:358: RZ sqrtl(0x1.0000000000006p+0) want 0x1.0000000000002p+0 got 0x1.0000000000003p+0 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:359: bad fp exception: RZ sqrtl(0x1.0000000000007p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:360: bad fp exception: RZ sqrtl(0x1.ffffffffffffep+1021)=0x1.ffffffffffffep+510, want INEXACT got 0
src/math/ucb/sqrt.h:360: RZ sqrtl(0x1.ffffffffffffep+1021) want 0x1.ffffffffffffep+510 got 0x1.fffffffffffffp+510 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:361: bad fp exception: RZ sqrtl(0x1.0000000000002p+1022)=0x1p+511, want INEXACT got 0
src/math/ucb/sqrt.h:361: RZ sqrtl(0x1.0000000000002p+1022) want 0x1p+511 got 0x1.0000000000001p+511 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/sanity/sqrt.h:2: bad fp exception: RN sqrtl(0x1.161868e18bc67p+2)=0x1.0ad1adc856f29p+1, want INEXACT got 0
src/math/sanity/sqrt.h:5: bad fp exception: RN sqrtl(0x1.288bbb0d6a1e6p+3)=0x1.85a7d346e8c13p+1, want INEXACT got 0
src/math/sanity/sqrt.h:6: bad fp exception: RN sqrtl(0x1.52efd0cd80497p-1)=0x1.a0937a0b92ccbp-1, want INEXACT got 0
src/math/sanity/sqrt.h:8: bad fp exception: RN sqrtl(0x1.1f9ef934745cbp-1)=0x1.7fbf4b5a076bcp-1, want INEXACT got 0
src/math/sanity/sqrt.h:9: bad fp exception: RN sqrtl(0x1.8c5db097f7442p-1)=0x1.c27ce94ff39c5p-1, want INEXACT got 0
src/math/special/sqrt.h:9: bad fp exception: RN sqrtl(0x1p-1073)=0x1.6a09e667f3bcdp-537, want INEXACT got 0
src/math/special/sqrt.h:10: bad fp exception: RN sqrtl(0x1.8p-1073)=0x1.bb67ae8584caap-537, want INEXACT got 0
src/math/special/sqrt.h:13: bad fp exception: RN sqrtl(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/special/sqrt.h:14: bad fp exception: RN sqrtl(0x1.fffffffffffffp+0)=0x1.6a09e667f3bccp+0, want INEXACT got 0
src/math/special/sqrt.h:15: bad fp exception: RN sqrtl(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/special/sqrt.h:16: bad fp exception: RN sqrtl(0x1.0000000000001p+1)=0x1.6a09e667f3bcdp+0, want INEXACT got 0
src/math/special/sqrt.h:17: bad fp exception: RN sqrtl(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/special/sqrt.h:18: bad fp exception: RN sqrtl(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/special/sqrt.h:20: bad fp exception: RN sqrtl(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/special/sqrt.h:21: bad fp exception: RN sqrtl(0x1.ffffffffffffbp+1023)=0x1.ffffffffffffdp+511, want INEXACT got 0
src/math/special/sqrt.h:22: bad fp exception: RN sqrtl(0x1.ffffffffffff7p+1023)=0x1.ffffffffffffbp+511, want INEXACT got 0
src/math/special/sqrt.h:23: bad fp exception: RN sqrtl(0x1.ffffffffffff3p+1023)=0x1.ffffffffffff9p+511, want INEXACT got 0
src/math/special/sqrt.h:24: bad fp exception: RN sqrtl(0x1.fffffffffffefp+1023)=0x1.ffffffffffff7p+511, want INEXACT got 0
src/math/special/sqrt.h:25: bad fp exception: RN sqrtl(0x1.fffffffffffebp+1023)=0x1.ffffffffffff5p+511, want INEXACT got 0
src/math/special/sqrt.h:26: bad fp exception: RN sqrtl(0x1.fffffffffffe7p+1023)=0x1.ffffffffffff3p+511, want INEXACT got 0
src/math/special/sqrt.h:27: bad fp exception: RN sqrtl(0x1.fffffffffffe3p+1023)=0x1.ffffffffffff1p+511, want INEXACT got 0
src/math/special/sqrt.h:28: bad fp exception: RN sqrtl(0x1.fffffffffffdfp+1023)=0x1.fffffffffffefp+511, want INEXACT got 0
src/math/special/sqrt.h:29: bad fp exception: RN sqrtl(0x1.fffffffffffdbp+1023)=0x1.fffffffffffedp+511, want INEXACT got 0
src/math/special/sqrt.h:30: bad fp exception: RN sqrtl(0x1.fffffffffffd7p+1023)=0x1.fffffffffffebp+511, want INEXACT got 0
src/math/special/sqrt.h:31: bad fp exception: RN sqrtl(0x1.0000000000003p-1022)=0x1.0000000000001p-511, want INEXACT got 0
src/math/special/sqrt.h:32: bad fp exception: RN sqrtl(0x1.0000000000007p-1022)=0x1.0000000000003p-511, want INEXACT got 0
src/math/special/sqrt.h:33: bad fp exception: RN sqrtl(0x1.000000000000bp-1022)=0x1.0000000000005p-511, want INEXACT got 0
src/math/special/sqrt.h:34: bad fp exception: RN sqrtl(0x1.000000000000fp-1022)=0x1.0000000000007p-511, want INEXACT got 0
src/math/special/sqrt.h:35: bad fp exception: RN sqrtl(0x1.0000000000013p-1022)=0x1.0000000000009p-511, want INEXACT got 0
src/math/special/sqrt.h:36: bad fp exception: RN sqrtl(0x1.0000000000017p-1022)=0x1.000000000000bp-511, want INEXACT got 0
src/math/special/sqrt.h:37: bad fp exception: RN sqrtl(0x1.000000000001bp-1022)=0x1.000000000000dp-511, want INEXACT got 0
src/math/special/sqrt.h:38: bad fp exception: RN sqrtl(0x1.000000000001fp-1022)=0x1.000000000000fp-511, want INEXACT got 0
src/math/special/sqrt.h:39: bad fp exception: RN sqrtl(0x1.0000000000023p-1022)=0x1.0000000000011p-511, want INEXACT got 0
src/math/special/sqrt.h:40: bad fp exception: RN sqrtl(0x1.0000000000027p-1022)=0x1.0000000000013p-511, want INEXACT got 0
src/math/special/sqrt.h:41: bad fp exception: RN sqrtl(0x1.000000000002bp-1022)=0x1.0000000000015p-511, want INEXACT got 0
src/math/special/sqrt.h:42: bad fp exception: RN sqrtl(0x1.000000000002fp-1022)=0x1.0000000000017p-511, want INEXACT got 0
src/math/special/sqrt.h:43: bad fp exception: RN sqrtl(0x1.0000000000033p-1022)=0x1.0000000000019p-511, want INEXACT got 0
src/math/special/sqrt.h:44: bad fp exception: RN sqrtl(0x1.0000000000037p-1022)=0x1.000000000001bp-511, want INEXACT got 0
src/math/special/sqrt.h:45: bad fp exception: RN sqrtl(0x1.7167bc36eaa3bp+6)=0x1.3384c7db650cdp+3, want INEXACT got 0
src/math/special/sqrt.h:46: bad fp exception: RN sqrtl(0x1.7570994273ad7p+6)=0x1.353186e89b8ffp+3, want INEXACT got 0
src/math/special/sqrt.h:47: bad fp exception: RN sqrtl(0x1.7dae969442fe6p+6)=0x1.389640fb18b75p+3, want INEXACT got 0
src/math/special/sqrt.h:48: bad fp exception: RN sqrtl(0x1.7f8444fcf67e5p+6)=0x1.395659e94669fp+3, want INEXACT got 0
src/math/special/sqrt.h:49: bad fp exception: RN sqrtl(0x1.8364650e63a54p+6)=0x1.3aea9efe1a3d7p+3, want INEXACT got 0
src/math/special/sqrt.h:50: bad fp exception: RN sqrtl(0x1.85bedd274edd8p+6)=0x1.3bdf20c867057p+3, want INEXACT got 0
src/math/special/sqrt.h:51: bad fp exception: RN sqrtl(0x1.8609cf496ab77p+6)=0x1.3bfd7e14b5eabp+3, want INEXACT got 0
src/math/special/sqrt.h:52: bad fp exception: RN sqrtl(0x1.873849c70a375p+6)=0x1.3c77ed341d27fp+3, want INEXACT got 0
src/math/special/sqrt.h:53: bad fp exception: RN sqrtl(0x1.8919c962cbaaep+6)=0x1.3d3a7113ee82fp+3, want INEXACT got 0
src/math/special/sqrt.h:54: bad fp exception: RN sqrtl(0x1.8de4493e22dc6p+6)=0x1.3f27d448220c3p+3, want INEXACT got 0
src/math/special/sqrt.h:55: bad fp exception: RN sqrtl(0x1.924829a17a288p+6)=0x1.40e9552eec28fp+3, want INEXACT got 0
src/math/special/sqrt.h:56: bad fp exception: RN sqrtl(0x1.92702cd992f12p+6)=0x1.40f94a6fdfddfp+3, want INEXACT got 0
src/math/special/sqrt.h:57: bad fp exception: RN sqrtl(0x1.92b763a8311fdp+6)=0x1.4115af614695fp+3, want INEXACT got 0
src/math/special/sqrt.h:58: bad fp exception: RN sqrtl(0x1.947da013c7293p+6)=0x1.41ca91102940fp+3, want INEXACT got 0
src/math/special/sqrt.h:59: bad fp exception: RN sqrtl(0x1.9536091c494d2p+6)=0x1.4213e334c77adp+3, want INEXACT got 0
src/math/special/sqrt.h:60: bad fp exception: RN sqrtl(0x1.61b04c6p-1019)=0x1.a98b88f18b46dp-510, want INEXACT got 0
src/math/special/sqrt.h:61: bad fp exception: RN sqrtl(0x1.93789f1p-1018)=0x1.4162ae43d5821p-509, want INEXACT got 0
src/math/special/sqrt.h:62: bad fp exception: RN sqrtl(0x1.a1989b4p-1018)=0x1.46f6736eb44bbp-509, want INEXACT got 0
src/math/special/sqrt.h:63: bad fp exception: RN sqrtl(0x1.f93bc9p-1018)=0x1.67a36ec403bafp-509, want INEXACT got 0
src/math/special/sqrt.h:64: bad fp exception: RN sqrtl(0x1.2f675e3p-1017)=0x1.8a22ab6dcfee1p-509, want INEXACT got 0
src/math/special/sqrt.h:65: bad fp exception: RN sqrtl(0x1.a158508p-1017)=0x1.ce418a96cf589p-509, want INEXACT got 0
src/math/special/sqrt.h:66: bad fp exception: RN sqrtl(0x1.cd31f078p-1017)=0x1.e5ef1c65dccebp-509, want INEXACT got 0
src/math/special/sqrt.h:67: bad fp exception: RN sqrtl(0x1.33b43b08p-1016)=0x1.18a9f607e1701p-508, want INEXACT got 0
src/math/special/sqrt.h:68: bad fp exception: RN sqrtl(0x1.6e66a858p-1016)=0x1.324402a00b45fp-508, want INEXACT got 0
src/math/special/sqrt.h:69: bad fp exception: RN sqrtl(0x1.8661cbf8p-1016)=0x1.3c212046bfdffp-508, want INEXACT got 0
src/math/special/sqrt.h:70: bad fp exception: RN sqrtl(0x1.bbb221b4p-1016)=0x1.510681b939931p-508, want INEXACT got 0
src/math/special/sqrt.h:71: bad fp exception: RN sqrtl(0x1.c4942f3cp-1016)=0x1.5461e59227ab5p-508, want INEXACT got 0
src/math/special/sqrt.h:72: bad fp exception: RN sqrtl(0x1.dbb258c8p-1016)=0x1.5cf7b0f78d3afp-508, want INEXACT got 0
src/math/special/sqrt.h:73: bad fp exception: RN sqrtl(0x1.57103ea4p-1015)=0x1.a31ab946d340bp-508, want INEXACT got 0
src/math/special/sqrt.h:74: bad fp exception: RN sqrtl(0x1.9b294f88p-1015)=0x1.cad197e28e85bp-508, want INEXACT got 0
FAIL src/math/sqrtl.exe [status 1]
X src/math/sanity/tgamma.h:4: RN tgamma(-0x1.a206f0a19dcc4p+2) want -0x1.9fd0c1ce12f14p-10 got -0x1.9fd0c1ce12f12p-10 ulperr 1.597 = 0x1p+1 + -0x1.9c637p-2
X src/math/sanity/tgamma.h:7: RN tgamma(-0x1.a05cc754481d1p-2) want -0x1.d9a22b2f3f253p+1 got -0x1.d9a22b2f3f251p+1 ulperr 1.674 = 0x1p+1 + -0x1.4d79f4p-2
src/math/special/tgamma.h:5: bad fp exception: RN tgamma(-0x1p+0)=nan, want INVALID got 0
src/math/special/tgamma.h:7: bad fp exception: RN tgamma(-0x1p+1)=nan, want INVALID got 0
X src/math/special/tgamma.h:47: RN tgamma(0x1p-53) want 0x1.fffffffffffffp+52 got 0x1.ffffffffffffdp+52 ulperr -2.423 = -0x1p+1 + -0x1.b0ee6p-2
X src/math/special/tgamma.h:60: RN tgamma(-0x1.0000000000001p+0) want 0x1.fffffffffffffp+51 got 0x1.ffffffffffffdp+51 ulperr -2.154 = -0x1p+1 + -0x1.3c467ep-3
X src/math/special/tgamma.h:62: RN tgamma(-0x1.0000000000003p+0) want 0x1.5555555555554p+50 got 0x1.5555555555552p+50 ulperr -1.642 = -0x1p+1 + 0x1.6e642cp-2
X src/math/special/tgamma.h:66: RN tgamma(-0x1.ffffffffffffep+0) want 0x1.0000000000002p+50 got 0x1.0000000000004p+50 ulperr 2.154 = 0x1p+1 + 0x1.3c467ep-3
X src/math/special/tgamma.h:68: RN tgamma(-0x1.0000000000001p+1) want -0x1.ffffffffffffcp+49 got -0x1.ffffffffffff7p+49 ulperr 5.309 = 0x1.4p+2 + 0x1.3c467ep-2
X src/math/special/tgamma.h:72: RN tgamma(-0x1.7fffffffffffdp+1) want -0x1.c71c71c71c72ap+46 got -0x1.c71c71c71c72cp+46 ulperr -2.157 = -0x1p+1 + -0x1.4177f6p-3
X src/math/special/tgamma.h:82: RN tgamma(-0x1.59fffffffffffp+7) want -0x1.46b1fa841aaa6p-997 got -0x1.46b1fa841aaa8p-997 ulperr -1.801 = -0x1p+1 + 0x1.979e28p-3
X src/math/special/tgamma.h:83: RN tgamma(-0x1.5a00000000001p+7) want 0x1.46b1fa841a412p-997 got 0x1.46b1fa841a41p-997 ulperr -1.700 = -0x1p+1 + 0x1.333de2p-2
X src/math/special/tgamma.h:84: RN tgamma(-0x1.5bfffffffffffp+7) want 0x1.e0a7b14f99fdbp-1005 got 0x1.e0a7b14f99fddp-1005 ulperr 1.579 = 0x1p+1 + -0x1.af416ap-2
X src/math/special/tgamma.h:85: RN tgamma(-0x1.5c00000000001p+7) want -0x1.e0a7b14f9962ap-1005 got -0x1.e0a7b14f9962cp-1005 ulperr -1.685 = -0x1p+1 + 0x1.42ddc4p-2
X src/math/special/tgamma.h:88: RN tgamma(-0x1.5ffffffffffffp+7) want 0x1.ff5df5f533fd3p-1020 got 0x1.ff5df5f533fd6p-1020 ulperr 2.513 = 0x1.8p+1 + -0x1.f234a4p-2
X src/math/special/tgamma.h:119: RN tgamma(-0x1.8p+0) want 0x1.2e7fb0bcdf4f2p+1 got 0x1.2e7fb0bcdf4fp+1 ulperr -1.770 = -0x1p+1 + 0x1.d7697p-3
X src/math/special/tgamma.h:136: RN tgamma(-0x1.02p+6) want -0x1.912276590832ep-298 got -0x1.912276590833p-298 ulperr -1.662 = -0x1p+1 + 0x1.59f79ap-2
X src/math/special/tgamma.h:141: RN tgamma(-0x1.55p+7) want -0x1.7d2374dfcda7ap-1022 got -0x1.7d2374dfcda78p-1022 ulperr 1.778 = 0x1p+1 + -0x1.c68fa4p-3
FAIL src/math/tgamma.exe [status 1]
src/math/special/tgammaf.h:4: bad fp exception: RN tgammaf(-0x1p+0)=-nan, want INVALID got 0
src/math/special/tgammaf.h:6: bad fp exception: RN tgammaf(-0x1p+1)=-nan, want INVALID got 0
FAIL src/math/tgammaf.exe [status 1]
src/math/special/tgamma.h:5: bad fp exception: RN tgammal(-0x1p+0)=nan, want INVALID got 0
src/math/special/tgamma.h:7: bad fp exception: RN tgammal(-0x1p+1)=nan, want INVALID got 0
src/math/special/tgamma.h:47: RN tgammal(0x1p-53) want 0x1.fffffffffffffp+52 got 0x1.ffffffffffffdp+52 ulperr -2.423 = -0x1p+1 + -0x1.b0ee6p-2
src/math/special/tgamma.h:60: RN tgammal(-0x1.0000000000001p+0) want 0x1.fffffffffffffp+51 got 0x1.ffffffffffffdp+51 ulperr -2.154 = -0x1p+1 + -0x1.3c467ep-3
src/math/special/tgamma.h:66: RN tgammal(-0x1.ffffffffffffep+0) want 0x1.0000000000002p+50 got 0x1.0000000000004p+50 ulperr 2.154 = 0x1p+1 + 0x1.3c467ep-3
src/math/special/tgamma.h:68: RN tgammal(-0x1.0000000000001p+1) want -0x1.ffffffffffffcp+49 got -0x1.ffffffffffff7p+49 ulperr 5.309 = 0x1.4p+2 + 0x1.3c467ep-2
src/math/special/tgamma.h:72: RN tgammal(-0x1.7fffffffffffdp+1) want -0x1.c71c71c71c72ap+46 got -0x1.c71c71c71c72cp+46 ulperr -2.157 = -0x1p+1 + -0x1.4177f6p-3
src/math/special/tgamma.h:88: RN tgammal(-0x1.5ffffffffffffp+7) want 0x1.ff5df5f533fd3p-1020 got 0x1.ff5df5f533fd6p-1020 ulperr 2.513 = 0x1.8p+1 + -0x1.f234a4p-2
FAIL src/math/tgammal.exe [status 1]
src/math/sanity/y0.h:1: bad fp exception: RN y0(-0x1.02239f3c6a8f1p+3)=nan, want INVALID got 0
src/math/sanity/y0.h:3: bad fp exception: RN y0(-0x1.0c34b3e01e6e7p+3)=nan, want INVALID got 0
src/math/sanity/y0.h:4: bad fp exception: RN y0(-0x1.a206f0a19dcc4p+2)=nan, want INVALID got 0
src/math/sanity/y0.h:7: bad fp exception: RN y0(-0x1.a05cc754481d1p-2)=nan, want INVALID got 0
src/math/sanity/y0.h:10: bad fp exception: RN y0(-0x1.5b86ea8118a0ep-1)=nan, want INVALID got 0
src/math/special/y0.h:1: bad fp exception: RN y0(0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y0.h:2: bad fp exception: RN y0(-0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y0.h:3: bad fp exception: RN y0(-0x1p+0)=nan, want INVALID got 0
src/math/special/y0.h:5: bad fp exception: RN y0(-inf)=nan, want INVALID got 0
X src/math/special/y0.h:8: RN y0(0x1.c982eb8d417eap-1) want -0x1.af74bfa0f1304p-56 got -0x1p-55 ulperr -1416944204906496.000 = -0x1.422d02p+50 + 0x1.11721cp-2
X src/math/special/y0.h:9: RN y0(0x1.c982eb8d417ebp-1) want 0x1.5666419c0f3c9p-54 got 0x1.2p-54 ulperr -957005015547904.000 = -0x1.b3320cp+49 + 0x1.dc02a8p-2
X src/math/special/y0.h:10: RN y0(0x1.fa9534d98569bp+1) want 0x1.384a000f3fcecp-53 got 0x1.3004a968fceadp-53 ulperr -145502385471488.000 = -0x1.08aad4p+47 + 0x1.58e17p-6
X src/math/special/y0.h:11: RN y0(0x1.fa9534d98569cp+1) want -0x1.8fa8956b4b481p-55 got -0x1.8f4eb84cc2a33p-55 ulperr 6175389646848.000 = 0x1.67747ap+42 + 0x1.54cfbep-2
X src/math/special/y0.h:12: RN y0(0x1.c581dc4e72102p+2) want -0x1.14bb186dc408dp-52 got -0x1.16eb61aad4cacp-52 ulperr -38502565675008.000 = -0x1.18249ep+45 + -0x1.163cfp-2
X src/math/special/y0.h:13: RN y0(0x1.c581dc4e72103p+2) want 0x1.e91b198d39ce2p-56 got 0x1.dac1abb064c09p-56 ulperr -252436132397056.000 = -0x1.cb2dbcp+47 + -0x1.ee1b6ep-2
FAIL src/math/y0.exe [status 1]
src/math/sanity/y0f.h:1: bad fp exception: RN y0f(-0x1.0223ap+3)=-nan, want INVALID got 0
X src/math/sanity/y0f.h:2: RN y0f(0x1.161868p+2) want -0x1.293dbep-3 got -0x1.293dc2p-3 ulperr -1.910 = -0x1p+1 + 0x1.6ffc42p-4
src/math/sanity/y0f.h:3: bad fp exception: RN y0f(-0x1.0c34b4p+3)=-nan, want INVALID got 0
src/math/sanity/y0f.h:4: bad fp exception: RN y0f(-0x1.a206fp+2)=-nan, want INVALID got 0
src/math/sanity/y0f.h:7: bad fp exception: RN y0f(-0x1.a05cc8p-2)=-nan, want INVALID got 0
src/math/sanity/y0f.h:10: bad fp exception: RN y0f(-0x1.5b86eap-1)=-nan, want INVALID got 0
src/math/special/y0f.h:1: bad fp exception: RN y0f(0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y0f.h:2: bad fp exception: RN y0f(-0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y0f.h:3: bad fp exception: RN y0f(-0x1p+0)=-nan, want INVALID got 0
src/math/special/y0f.h:5: bad fp exception: RN y0f(-inf)=-nan, want INVALID got 0
X src/math/special/y0f.h:7: RN y0f(0x1.0c4a3ap+0) want 0x1.ff138ep-4 got 0x1.ff1386p-4 ulperr -4.180 = -0x1.fffffep+1 + -0x1.71585ap-3
X src/math/special/y0f.h:8: RN y0f(0x1.8ae5d4p-1) want -0x1.d88a5ap-4 got -0x1.d88a5p-4 ulperr 4.919 = 0x1.4p+2 + -0x1.4d601ap-4
X src/math/special/y0f.h:9: RN y0f(0x1.fa9536p+1) want -0x1.da2946p-25 got -0x1.c5c23p-25 ulperr 668554.625 = 0x1.46716p+19 + -0x1.88a2bcp-2
FAIL src/math/y0f.exe [status 1]
src/math/sanity/y1.h:1: bad fp exception: RN y1(-0x1.02239f3c6a8f1p+3)=nan, want INVALID got 0
src/math/sanity/y1.h:3: bad fp exception: RN y1(-0x1.0c34b3e01e6e7p+3)=nan, want INVALID got 0
src/math/sanity/y1.h:4: bad fp exception: RN y1(-0x1.a206f0a19dcc4p+2)=nan, want INVALID got 0
src/math/sanity/y1.h:7: bad fp exception: RN y1(-0x1.a05cc754481d1p-2)=nan, want INVALID got 0
src/math/sanity/y1.h:10: bad fp exception: RN y1(-0x1.5b86ea8118a0ep-1)=nan, want INVALID got 0
src/math/special/y1.h:1: bad fp exception: RN y1(0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y1.h:2: bad fp exception: RN y1(-0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y1.h:3: bad fp exception: RN y1(-0x1p+0)=nan, want INVALID got 0
src/math/special/y1.h:5: bad fp exception: RN y1(-inf)=nan, want INVALID got 0
FAIL src/math/y1.exe [status 1]
src/math/sanity/y1f.h:1: bad fp exception: RN y1f(-0x1.0223ap+3)=-nan, want INVALID got 0
src/math/sanity/y1f.h:3: bad fp exception: RN y1f(-0x1.0c34b4p+3)=-nan, want INVALID got 0
src/math/sanity/y1f.h:4: bad fp exception: RN y1f(-0x1.a206fp+2)=-nan, want INVALID got 0
src/math/sanity/y1f.h:7: bad fp exception: RN y1f(-0x1.a05cc8p-2)=-nan, want INVALID got 0
src/math/sanity/y1f.h:10: bad fp exception: RN y1f(-0x1.5b86eap-1)=-nan, want INVALID got 0
src/math/special/y1f.h:1: bad fp exception: RN y1f(0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y1f.h:2: bad fp exception: RN y1f(-0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y1f.h:3: bad fp exception: RN y1f(-0x1p+0)=-nan, want INVALID got 0
src/math/special/y1f.h:5: bad fp exception: RN y1f(-inf)=-nan, want INVALID got 0
FAIL src/math/y1f.exe [status 1]
src/math/sanity/yn.h:1: bad fp exception: RN yn(-2, -0x1.02239f3c6a8f1p+3)=nan, want INVALID got 0
src/math/sanity/yn.h:3: bad fp exception: RN yn(0, -0x1.0c34b3e01e6e7p+3)=nan, want INVALID got 0
src/math/sanity/yn.h:4: bad fp exception: RN yn(1, -0x1.a206f0a19dcc4p+2)=nan, want INVALID got 0
src/math/sanity/yn.h:7: bad fp exception: RN yn(4, -0x1.a05cc754481d1p-2)=nan, want INVALID got 0
src/math/sanity/yn.h:10: bad fp exception: RN yn(7, -0x1.5b86ea8118a0ep-1)=nan, want INVALID got 0
src/math/special/yn.h:1: bad fp exception: RN yn(0, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:2: bad fp exception: RN yn(0, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:3: bad fp exception: RN yn(0, -0x1p+0)=nan, want INVALID got 0
src/math/special/yn.h:5: bad fp exception: RN yn(0, -inf)=nan, want INVALID got 0
src/math/special/yn.h:7: bad fp exception: RN yn(1, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:8: bad fp exception: RN yn(1, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:9: bad fp exception: RN yn(1, -0x1p+0)=nan, want INVALID got 0
src/math/special/yn.h:11: bad fp exception: RN yn(1, -inf)=nan, want INVALID got 0
src/math/special/yn.h:13: bad fp exception: RN yn(-1, 0x0p+0)=inf, want DIVBYZERO got 0
src/math/special/yn.h:14: bad fp exception: RN yn(-1, -0x0p+0)=inf, want DIVBYZERO got 0
src/math/special/yn.h:15: bad fp exception: RN yn(-1, -0x1p+0)=nan, want INVALID got 0
src/math/special/yn.h:17: bad fp exception: RN yn(-1, -inf)=nan, want INVALID got 0
src/math/special/yn.h:19: bad fp exception: RN yn(2, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:20: bad fp exception: RN yn(2, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:21: bad fp exception: RN yn(2, -0x1p+0)=nan, want INVALID got 0
src/math/special/yn.h:23: bad fp exception: RN yn(2, -inf)=nan, want INVALID got 0
FAIL src/math/yn.exe [status 1]
src/math/sanity/ynf.h:1: bad fp exception: RN ynf(-2, -0x1.0223ap+3)=-nan, want INVALID got 0
src/math/sanity/ynf.h:3: bad fp exception: RN ynf(0, -0x1.0c34b4p+3)=-nan, want INVALID got 0
src/math/sanity/ynf.h:4: bad fp exception: RN ynf(1, -0x1.a206fp+2)=-nan, want INVALID got 0
X src/math/sanity/ynf.h:6: RN ynf(3, 0x1.52efdp-1) want -0x1.2935d2p+4 got -0x1.2935d6p+4, ulperr -1.920 = -0x1p+1 + 0x1.47d13p-4
src/math/sanity/ynf.h:7: bad fp exception: RN ynf(4, -0x1.a05cc8p-2)=-nan, want INVALID got 0
X src/math/sanity/ynf.h:9: RN ynf(6, 0x1.8c5dbp-1) want -0x1.6dbc1cp+13 got -0x1.6dbc18p+13, ulperr 2.115 = 0x1p+1 + 0x1.d597eep-4
src/math/sanity/ynf.h:10: bad fp exception: RN ynf(7, -0x1.5b86eap-1)=-nan, want INVALID got 0
src/math/special/ynf.h:1: bad fp exception: RN ynf(0, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:2: bad fp exception: RN ynf(0, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:3: bad fp exception: RN ynf(0, -0x1p+0)=-nan, want INVALID got 0
src/math/special/ynf.h:5: bad fp exception: RN ynf(0, -inf)=-nan, want INVALID got 0
src/math/special/ynf.h:7: bad fp exception: RN ynf(1, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:8: bad fp exception: RN ynf(1, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:9: bad fp exception: RN ynf(1, -0x1p+0)=-nan, want INVALID got 0
src/math/special/ynf.h:11: bad fp exception: RN ynf(1, -inf)=-nan, want INVALID got 0
src/math/special/ynf.h:13: bad fp exception: RN ynf(-1, 0x0p+0)=inf, want DIVBYZERO got 0
src/math/special/ynf.h:14: bad fp exception: RN ynf(-1, -0x0p+0)=inf, want DIVBYZERO got 0
src/math/special/ynf.h:15: bad fp exception: RN ynf(-1, -0x1p+0)=-nan, want INVALID got 0
src/math/special/ynf.h:17: bad fp exception: RN ynf(-1, -inf)=-nan, want INVALID got 0
src/math/special/ynf.h:19: bad fp exception: RN ynf(2, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:20: bad fp exception: RN ynf(2, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:21: bad fp exception: RN ynf(2, -0x1p+0)=-nan, want INVALID got 0
src/math/special/ynf.h:23: bad fp exception: RN ynf(2, -inf)=-nan, want INVALID got 0
FAIL src/math/ynf.exe [status 1]
src/regression/daemon-failure.c:56:24: warning: adding 'int' to a string does not append to the string [-Wstring-plus-int]
                if (write(fd[1], "1" + !t_status, 1) != 1)
                                 ~~~~^~~~~~~~~~~
src/regression/daemon-failure.c:56:24: note: use array indexing to silence this warning
                if (write(fd[1], "1" + !t_status, 1) != 1)
                                     ^
                                 &   [          ]
1 warning generated.
src/regression/malloc-brk-fail.c:31: malloc(10000) succeeded after memory is filled
FAIL src/regression/malloc-brk-fail.exe [status 1]
src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==0) got 38 "Function not implemented" want 0 "No error information"
src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==0) got 110 "Operation timed out" want 130 "Previous owner died"
src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==1) got 38 "Function not implemented" want 0 "No error information"
src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==1) got 110 "Operation timed out" want 130 "Previous owner died"
FAIL src/regression/pthread-robust-detach-static.exe [status 1]
src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==0) got 38 "Function not implemented" want 0 "No error information"
src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==0) got 110 "Operation timed out" want 130 "Previous owner died"
src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==1) got 38 "Function not implemented" want 0 "No error information"
src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==1) got 110 "Operation timed out" want 130 "Previous owner died"
FAIL src/regression/pthread-robust-detach.exe [status 1]

^ permalink raw reply	[flat|nested] 43+ messages in thread

* Re: [musl] Hexagon DSP support
  2020-05-05 23:37                 ` sidneym
@ 2020-05-06  0:59                   ` Rich Felker
  2020-06-18 16:37                     ` sidneym
  0 siblings, 1 reply; 43+ messages in thread
From: Rich Felker @ 2020-05-06  0:59 UTC (permalink / raw)
  To: sidneym; +Cc: musl

On Tue, May 05, 2020 at 06:37:41PM -0500, sidneym@codeaurora.org wrote:
> >- The definitions in bits/msg.h, bits/sem.h, and bits/shm.h are not
> >  time64-compatible. In fact bits/sem.h is a regression; you had it
> >  right before and broke it.
> As you point out below the core of the problem was the missing time64
> calls.  I've updated the structures to use what I hope or the
> correct types.

I think they're still wrong and you need to do like the existing
32-bit archs, defining IPC_STAT to 0x102 and putting separate unsigned
long *_lo/*_hi members in the right places for the kernel ABI and
adding the time_t members at the ends. This is almost surely the case
if _Alignof(long long) is 8 on hexagon, since the kernel's
include/uapi/asm-generic/msgbuf.h etc. have the lo/hi pairs misaligned
(struct ipc_perm is an odd number of 32-bit words). The fact that you
had to change qemu to make this work suggests that you still have it
wrong too -- you should not have to change qemu or the kernel to make
it work if you do it right.

> >- The definition in bits/stat.h is using the wrong types (you need to
> >  use libc type names for all the members; this is a policy
> >  requirement to ensure that none inadvertently mismatch). Note that
> >  there's not even really a need to use an arch-specific header here
> >  anymore; the kernel definition comes from arch/hexagon/kstat.h and
> >  the bits/stat.h can just be copied from aarch64 or something else
> >  with a clean layout.
> 
> I used OpenRISC's stat.h.

Is there a reason? It has old __st_*tim32 members but you don't need
them since there's no old-musl-ABI involved.

> src/api/ftw.c:44:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
> C(S_ISBLK(0))
> ^~~~~~~~~~~~~

You're still building libc-test with -Werror which will give bogus
results.

> src/api/sys_ipc.c:13:1: error: initializing 'uid_t *' (aka 'unsigned int *') with an expression of type 'int *' converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
> F(uid_t,uid)
> ^~~~~~~~~~~~
> src/api/sys_ipc.c:3:20: note: expanded from macro 'F'
> #define F(t,n) {t *y = &x.n;}
>                    ^   ~~~~

This is happening because struct ipc_perm's members have the wrong
types (but I think you should just delete your bits/ipc.h because the
generic one is correct and matches the kernel's ABI for hexagon).

> src/functional/ipc_msg.c:63: qid_ds.msg_qnum == 0 failed: got 16384, want 0
> src/functional/ipc_msg.c:67: (long long)qid_ds.msg_rtime == 0 failed: got 6823500725968961536, want 0
> src/functional/ipc_msg.c:69: qid_ds.msg_ctime >= t failed: got 69713, want >= 1588720066
> src/functional/ipc_msg.c:73: qid_ds.msg_qbytes > 0 failed: got 0, want > 0
> src/functional/ipc_msg.c:78: qid_ds.msg_qnum == 1 failed: got 16384, want 1
> src/functional/ipc_msg.c:79: qid_ds.msg_lspid == getpid() failed: got 0, want 240818
> src/functional/ipc_msg.c:81: msg_stime is 0 want >= 1588720066
> src/functional/ipc_msg.c:130: child exit status: 256
> FAIL src/functional/ipc_msg-static.exe [status 1]
> src/functional/ipc_msg.c:63: qid_ds.msg_qnum == 0 failed: got 16384, want 0
> src/functional/ipc_msg.c:67: (long long)qid_ds.msg_rtime == 0 failed: got 6823500725968961536, want 0
> src/functional/ipc_msg.c:69: qid_ds.msg_ctime >= t failed: got 0, want >= 1588720066
> src/functional/ipc_msg.c:73: qid_ds.msg_qbytes > 0 failed: got 0, want > 0
> src/functional/ipc_msg.c:78: qid_ds.msg_qnum == 1 failed: got 16384, want 1
> src/functional/ipc_msg.c:79: qid_ds.msg_lspid == getpid() failed: got 0, want 240786
> src/functional/ipc_msg.c:81: msg_stime is 0 want >= 1588720066
> src/functional/ipc_msg.c:130: child exit status: 256
> FAIL src/functional/ipc_msg.exe [status 1]

These indicate your struct ipc_perm/msqid_ds mismatch kernel, as
described above.

Otherwise I didn't see anything obviously wrong in tests. Having less
noise from -Werror and the above issues would make it easier to review
the report though and ensure I'm not missing anything.

Rich

^ permalink raw reply	[flat|nested] 43+ messages in thread

* RE: [musl] Hexagon DSP support
  2020-05-06  0:59                   ` Rich Felker
@ 2020-06-18 16:37                     ` sidneym
  2020-06-18 21:42                       ` Szabolcs Nagy
  0 siblings, 1 reply; 43+ messages in thread
From: sidneym @ 2020-06-18 16:37 UTC (permalink / raw)
  To: musl

[-- Attachment #1: Type: text/plain, Size: 5438 bytes --]


> -----Original Message-----
> From: Rich Felker <dalias@libc.org>
> Sent: Tuesday, May 5, 2020 7:59 PM
> To: sidneym@codeaurora.org
> Cc: musl@lists.openwall.com
> Subject: Re: [musl] Hexagon DSP support
> 
> On Tue, May 05, 2020 at 06:37:41PM -0500, sidneym@codeaurora.org wrote:
> > >- The definitions in bits/msg.h, bits/sem.h, and bits/shm.h are not
> > >  time64-compatible. In fact bits/sem.h is a regression; you had it
> > >  right before and broke it.
> > As you point out below the core of the problem was the missing time64
> > calls.  I've updated the structures to use what I hope or the correct
> > types.
> 
> I think they're still wrong and you need to do like the existing 32-bit
archs,
> defining IPC_STAT to 0x102 and putting separate unsigned long *_lo/*_hi
> members in the right places for the kernel ABI and adding the time_t
members
> at the ends. This is almost surely the case if _Alignof(long long) is 8 on
hexagon,
> since the kernel's include/uapi/asm-generic/msgbuf.h etc. have the lo/hi
pairs
> misaligned (struct ipc_perm is an odd number of 32-bit words). The fact
that
> you had to change qemu to make this work suggests that you still have it
> wrong too -- you should not have to change qemu or the kernel to make it
> work if you do it right.

The IPC_STAT setting was a key element missing from the port.

> 
> > >- The definition in bits/stat.h is using the wrong types (you need to
> > >  use libc type names for all the members; this is a policy
> > >  requirement to ensure that none inadvertently mismatch). Note that
> > >  there's not even really a need to use an arch-specific header here
> > >  anymore; the kernel definition comes from arch/hexagon/kstat.h and
> > >  the bits/stat.h can just be copied from aarch64 or something else
> > >  with a clean layout.
> >
> > I used OpenRISC's stat.h.
> 
> Is there a reason? It has old __st_*tim32 members but you don't need them
> since there's no old-musl-ABI involved.

I think you had originally suggested using aarch64 and that is what is there
now.

> 
> > src/api/ftw.c:44:1: error: switch condition has boolean value
> > [-Werror,-Wswitch-bool]
> > C(S_ISBLK(0))
> > ^~~~~~~~~~~~~
> 
> You're still building libc-test with -Werror which will give bogus
results.
> 
> > src/api/sys_ipc.c:13:1: error: initializing 'uid_t *' (aka 'unsigned
> > int *') with an expression of type 'int *' converts between pointers
> > to integer types with different sign [-Werror,-Wpointer-sign]
> > F(uid_t,uid)
> > ^~~~~~~~~~~~
> > src/api/sys_ipc.c:3:20: note: expanded from macro 'F'
> > #define F(t,n) {t *y = &x.n;}
> >                    ^   ~~~~
> 
> This is happening because struct ipc_perm's members have the wrong types
> (but I think you should just delete your bits/ipc.h because the generic
one is
> correct and matches the kernel's ABI for hexagon).

QEMU for Hexagon's target_ipc_perm was based on the deprecated one cited in
uapi/linux/ipc.h instead of the generic version in
./uapi/asm-generic/ipcbuf.h  I removed the file, ipc.h from musl and
corrected QEMU.


> 
> > src/functional/ipc_msg.c:63: qid_ds.msg_qnum == 0 failed: got 16384,
> > want 0
> > src/functional/ipc_msg.c:67: (long long)qid_ds.msg_rtime == 0 failed:
> > got 6823500725968961536, want 0
> > src/functional/ipc_msg.c:69: qid_ds.msg_ctime >= t failed: got 69713,
> > want >= 1588720066
> > src/functional/ipc_msg.c:73: qid_ds.msg_qbytes > 0 failed: got 0, want
> > > 0
> > src/functional/ipc_msg.c:78: qid_ds.msg_qnum == 1 failed: got 16384,
> > want 1
> > src/functional/ipc_msg.c:79: qid_ds.msg_lspid == getpid() failed: got
> > 0, want 240818
> > src/functional/ipc_msg.c:81: msg_stime is 0 want >= 1588720066
> > src/functional/ipc_msg.c:130: child exit status: 256 FAIL
> > src/functional/ipc_msg-static.exe [status 1]
> > src/functional/ipc_msg.c:63: qid_ds.msg_qnum == 0 failed: got 16384,
> > want 0
> > src/functional/ipc_msg.c:67: (long long)qid_ds.msg_rtime == 0 failed:
> > got 6823500725968961536, want 0
> > src/functional/ipc_msg.c:69: qid_ds.msg_ctime >= t failed: got 0, want
> > >= 1588720066
> > src/functional/ipc_msg.c:73: qid_ds.msg_qbytes > 0 failed: got 0, want
> > > 0
> > src/functional/ipc_msg.c:78: qid_ds.msg_qnum == 1 failed: got 16384,
> > want 1
> > src/functional/ipc_msg.c:79: qid_ds.msg_lspid == getpid() failed: got
> > 0, want 240786
> > src/functional/ipc_msg.c:81: msg_stime is 0 want >= 1588720066
> > src/functional/ipc_msg.c:130: child exit status: 256 FAIL
> > src/functional/ipc_msg.exe [status 1]
> 
> These indicate your struct ipc_perm/msqid_ds mismatch kernel, as described
> above.
> 
> Otherwise I didn't see anything obviously wrong in tests. Having less
noise
> from -Werror and the above issues would make it easier to review the
report
> though and ensure I'm not missing anything.

I attached the updated REPORT with warning output disabled, -w and
-fno-rounding-math (See https://bugs.llvm.org/show_bug.cgi?id=45329)  along
with the patch.  I've rebased a couple of times without any conflicts and
the git repo is here: https://github.com/quic/musl/tree/hexagon

My most recent rebase was yesterday and that is what I used for the patch
and the libc-test.

I'd like to get Hexagon added as a supported architecture and I am certain
there are preferred windows when new architectures are accepted.
Understanding when those are and what requirements for inclusion are would
be good to know.

Thanks


> 
> Rich

[-- Attachment #2: REPORT --]
[-- Type: application/octet-stream, Size: 249913 bytes --]

src/api/ftw.c:44:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISBLK(0))
^~~~~~~~~~~~~
src/api/ftw.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/ftw.c:45:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISCHR(0))
^~~~~~~~~~~~~
src/api/ftw.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/ftw.c:46:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISDIR(0))
^~~~~~~~~~~~~
src/api/ftw.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/ftw.c:47:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISFIFO(0))
^~~~~~~~~~~~~~
src/api/ftw.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/ftw.c:48:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISREG(0))
^~~~~~~~~~~~~
src/api/ftw.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/ftw.c:49:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISLNK(0))
^~~~~~~~~~~~~
src/api/ftw.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/ftw.c:50:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISSOCK(0))
^~~~~~~~~~~~~~
src/api/ftw.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
7 errors generated.
src/api/iso646.c:8:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(0 not_eq 1)
^~~~~~~~~~~~~
src/api/iso646.c:2:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/iso646.c:9:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(0 and 1)
^~~~~~~~~~
src/api/iso646.c:2:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/iso646.c:10:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(0 or 1)
^~~~~~~~~
src/api/iso646.c:2:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/iso646.c:14:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(not 0)
^~~~~~~~
src/api/iso646.c:2:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
4 errors generated.
FAIL src/api/main.exe [status 1]
clang-11: error: no such file or directory: 'src/api/ftw.o'
clang-11: error: no such file or directory: 'src/api/iso646.o'
clang-11: error: no such file or directory: 'src/api/stdlib.o'
clang-11: error: no such file or directory: 'src/api/sys_stat.o'
clang-11: error: no such file or directory: 'src/api/sys_wait.o'
clang-11: error: no such file or directory: 'src/api/unistd.o'
src/api/stdlib.c:20:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(WIFEXITED(0))
^~~~~~~~~~~~~~~
src/api/stdlib.c:4:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/stdlib.c:21:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(WIFSIGNALED(0))
^~~~~~~~~~~~~~~~~
src/api/stdlib.c:4:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/stdlib.c:22:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(WIFSTOPPED(0))
^~~~~~~~~~~~~~~~
src/api/stdlib.c:4:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
3 errors generated.
src/api/sys_stat.c:68:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISBLK(0))
^~~~~~~~~~~~~
src/api/sys_stat.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_stat.c:69:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISCHR(0))
^~~~~~~~~~~~~
src/api/sys_stat.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_stat.c:70:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISDIR(0))
^~~~~~~~~~~~~
src/api/sys_stat.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_stat.c:71:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISFIFO(0))
^~~~~~~~~~~~~~
src/api/sys_stat.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_stat.c:72:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISREG(0))
^~~~~~~~~~~~~
src/api/sys_stat.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_stat.c:73:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISLNK(0))
^~~~~~~~~~~~~
src/api/sys_stat.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_stat.c:74:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(S_ISSOCK(0))
^~~~~~~~~~~~~~
src/api/sys_stat.c:5:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
7 errors generated.
src/api/sys_wait.c:11:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(WIFEXITED(0))
^~~~~~~~~~~~~~~
src/api/sys_wait.c:4:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_wait.c:12:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(WIFSIGNALED(0))
^~~~~~~~~~~~~~~~~
src/api/sys_wait.c:4:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_wait.c:13:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(WIFSTOPPED(0))
^~~~~~~~~~~~~~~~
src/api/sys_wait.c:4:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
src/api/sys_wait.c:20:1: error: switch condition has boolean value [-Werror,-Wswitch-bool]
C(WIFCONTINUED(0))
^~~~~~~~~~~~~~~~~~
src/api/sys_wait.c:4:14: note: expanded from macro 'C'
#define C(n) switch(n){case n:;}
             ^      ~
4 errors generated.
src/api/unistd.c:87:3: error: use of undeclared identifier '_CS_POSIX_V7_THREADS_CFLAGS'
C(_CS_POSIX_V7_THREADS_CFLAGS)
  ^
src/api/unistd.c:88:3: error: use of undeclared identifier '_CS_POSIX_V7_THREADS_LDFLAGS'
C(_CS_POSIX_V7_THREADS_LDFLAGS)
  ^
src/api/unistd.c:117:3: error: use of undeclared identifier '_PC_TIMESTAMP_RESOLUTION'
C(_PC_TIMESTAMP_RESOLUTION)
  ^
src/api/unistd.c:238:3: error: use of undeclared identifier '_SC_XOPEN_UUCP'
C(_SC_XOPEN_UUCP)
  ^
src/api/unistd.c:87:3: error: use of undeclared identifier '_CS_POSIX_V7_THREADS_CFLAGS'
C(_CS_POSIX_V7_THREADS_CFLAGS)
  ^
src/api/unistd.c:88:3: error: use of undeclared identifier '_CS_POSIX_V7_THREADS_LDFLAGS'
C(_CS_POSIX_V7_THREADS_LDFLAGS)
  ^
src/api/unistd.c:117:3: error: use of undeclared identifier '_PC_TIMESTAMP_RESOLUTION'
C(_PC_TIMESTAMP_RESOLUTION)
  ^
src/api/unistd.c:238:3: error: use of undeclared identifier '_SC_XOPEN_UUCP'
C(_SC_XOPEN_UUCP)
  ^
8 errors generated.
src/functional/dlopen.c:39: dlsym main failed: Symbol not found: main
FAIL src/functional/dlopen.exe [status 1]
clang-11: warning: argument unused during compilation: '-rdynamic' [-Wunused-command-line-argument]
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:87: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:87: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:108: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:108: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
FAIL src/functional/pthread_mutex_pi-static.exe [status 1]
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:87: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:87: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:108: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:108: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
FAIL src/functional/pthread_mutex_pi.exe [status 1]
src/functional/pthread_robust.c:39: pthread_mutexattr_setrobust(&mtx_a, PTHREAD_MUTEX_ROBUST) failed: (pshared==0, pi==0) Function not implemented (setting robust attribute)
FAIL src/functional/pthread_robust-static.exe [timed out]
src/functional/pthread_robust.c:39: pthread_mutexattr_setrobust(&mtx_a, PTHREAD_MUTEX_ROBUST) failed: (pshared==0, pi==0) Function not implemented (setting robust attribute)
FAIL src/functional/pthread_robust.exe [timed out]
src/functional/sscanf.c:73:9: warning: magnitude of floating-point constant too large for type 'double'; maximum is 1.7976931348623157E+308 [-Wliteral-range]
        TEST_F(1.234e1234);
               ^
src/functional/sscanf.c:73:9: warning: magnitude of floating-point constant too large for type 'double'; maximum is 1.7976931348623157E+308 [-Wliteral-range]
src/functional/sscanf.c:74:9: warning: magnitude of floating-point constant too small for type 'double'; minimum is 4.9406564584124654E-324 [-Wliteral-range]
        TEST_F(1.234e-1234);
               ^
src/functional/sscanf.c:74:9: warning: magnitude of floating-point constant too small for type 'double'; minimum is 4.9406564584124654E-324 [-Wliteral-range]
src/functional/sscanf.c:75:9: warning: magnitude of floating-point constant too large for type 'double'; maximum is 1.7976931348623157E+308 [-Wliteral-range]
        TEST_F(1.234e56789);
               ^
src/functional/sscanf.c:75:9: warning: magnitude of floating-point constant too large for type 'double'; maximum is 1.7976931348623157E+308 [-Wliteral-range]
src/functional/sscanf.c:76:9: warning: magnitude of floating-point constant too small for type 'double'; minimum is 4.9406564584124654E-324 [-Wliteral-range]
        TEST_F(1.234e-56789);
               ^
src/functional/sscanf.c:76:9: warning: magnitude of floating-point constant too small for type 'double'; minimum is 4.9406564584124654E-324 [-Wliteral-range]
8 warnings generated.
src/functional/strptime.c:23: "%F": failed to parse "1856-07-10"
src/functional/strptime.c:23: "%s": failed to parse "683078400"
src/functional/strptime.c:47: "%z": failed to parse "+0200"
src/functional/strptime.c:47: "%z": failed to parse "-0530"
src/functional/strptime.c:47: "%z": failed to parse "-06"
FAIL src/functional/strptime-static.exe [status 1]
src/functional/strptime.c:23: "%F": failed to parse "1856-07-10"
src/functional/strptime.c:23: "%s": failed to parse "683078400"
src/functional/strptime.c:47: "%z": failed to parse "+0200"
src/functional/strptime.c:47: "%z": failed to parse "-0530"
src/functional/strptime.c:47: "%z": failed to parse "-06"
FAIL src/functional/strptime.exe [status 1]
src/functional/utime.c:63: futimens(fd, ((struct timespec[2]){{.tv_sec=1LL<<32},{.tv_sec=1LL<<32}})) == 0 failed: Not supported
FAIL src/functional/utime-static.exe [status 1]
src/functional/utime.c:63: futimens(fd, ((struct timespec[2]){{.tv_sec=1LL<<32},{.tv_sec=1LL<<32}})) == 0 failed: Not supported
FAIL src/functional/utime.exe [status 1]
X src/math/special/acosh.h:9: RN acosh(0x1.001f1c62cf304p+0) want 0x1.f8d125ff71ccp-6 got 0x1.f8d125ff71cc2p-6 ulperr 1.853 = 0x1p+1 + -0x1.2d785ap-3
X src/math/special/acosh.h:10: RN acosh(0x1.00788c223616fp+0) want 0x1.f0cb8ee812621p-5 got 0x1.f0cb8ee812623p-5 ulperr 1.724 = 0x1p+1 + -0x1.1b0c1ap-2
X src/math/special/acosh.h:11: RN acosh(0x1.007b7a37c7606p+0) want 0x1.f6cb68859ae3p-5 got 0x1.f6cb68859ae2ep-5 ulperr -1.855 = -0x1p+1 + 0x1.280488p-3
X src/math/special/acosh.h:12: RN acosh(0x1.01d173033243cp+0) want 0x1.e7e1b18d99376p-4 got 0x1.e7e1b18d99378p-4 ulperr 1.930 = 0x1p+1 + -0x1.1f3d3ep-4
X src/math/special/acosh.h:13: RN acosh(0x1.01d8f20e90409p+0) want 0x1.ebca3eea5cda5p-4 got 0x1.ebca3eea5cda3p-4 ulperr -1.652 = -0x1p+1 + 0x1.648602p-2
X src/math/special/acosh.h:14: RN acosh(0x1.01ef6122e68bep+0) want 0x1.f74df150afc94p-4 got 0x1.f74df150afc92p-4 ulperr -1.762 = -0x1p+1 + 0x1.e79556p-3
X src/math/special/acosh.h:15: RN acosh(0x1.06822faf07879p+0) want 0x1.ccd73cbc4af78p-3 got 0x1.ccd73cbc4af7ap-3 ulperr 1.674 = 0x1p+1 + -0x1.4df79ep-2
X src/math/special/acosh.h:17: RN acosh(0x1.069d65411ec51p+0) want 0x1.d0928b08facbap-3 got 0x1.d0928b08facbcp-3 ulperr 1.785 = 0x1p+1 + -0x1.b83338p-3
X src/math/special/acosh.h:18: RN acosh(0x1.071d6b2713d08p+0) want 0x1.e1bc6a6c345fdp-3 got 0x1.e1bc6a6c345ffp-3 ulperr 1.818 = 0x1p+1 + -0x1.74a04ep-3
X src/math/special/acosh.h:19: RN acosh(0x1.0728405f5140cp+0) want 0x1.e328ebe92b32cp-3 got 0x1.e328ebe92b32ep-3 ulperr 1.790 = 0x1p+1 + -0x1.ae89ap-3
X src/math/special/acosh.h:20: RN acosh(0x1.07bd2c5c01bcbp+0) want 0x1.f6513c44c131p-3 got 0x1.f6513c44c1312p-3 ulperr 1.719 = 0x1p+1 + -0x1.203932p-2
X src/math/special/acosh.h:21: RN acosh(0x1.1aae7c452c859p+0) want 0x1.cf8d69288e386p-2 got 0x1.cf8d69288e384p-2 ulperr -1.723 = -0x1p+1 + 0x1.1b325ap-2
X src/math/special/acosh.h:23: RN acosh(0x1.1b50764626f1ep+0) want 0x1.d4ec67c71794p-2 got 0x1.d4ec67c717942p-2 ulperr 1.738 = 0x1p+1 + -0x1.0c09dap-2
src/math/special/acosh.h:9: RN acoshl(0x1.001f1c62cf304p+0) want 0x1.f8d125ff71ccp-6 got 0x1.f8d125ff71cc2p-6 ulperr 1.853 = 0x1p+1 + -0x1.2d785ap-3
src/math/special/acosh.h:10: RN acoshl(0x1.00788c223616fp+0) want 0x1.f0cb8ee812621p-5 got 0x1.f0cb8ee812623p-5 ulperr 1.724 = 0x1p+1 + -0x1.1b0c1ap-2
src/math/special/acosh.h:11: RN acoshl(0x1.007b7a37c7606p+0) want 0x1.f6cb68859ae3p-5 got 0x1.f6cb68859ae2ep-5 ulperr -1.855 = -0x1p+1 + 0x1.280488p-3
src/math/special/acosh.h:12: RN acoshl(0x1.01d173033243cp+0) want 0x1.e7e1b18d99376p-4 got 0x1.e7e1b18d99378p-4 ulperr 1.930 = 0x1p+1 + -0x1.1f3d3ep-4
src/math/special/acosh.h:13: RN acoshl(0x1.01d8f20e90409p+0) want 0x1.ebca3eea5cda5p-4 got 0x1.ebca3eea5cda3p-4 ulperr -1.652 = -0x1p+1 + 0x1.648602p-2
src/math/special/acosh.h:14: RN acoshl(0x1.01ef6122e68bep+0) want 0x1.f74df150afc94p-4 got 0x1.f74df150afc92p-4 ulperr -1.762 = -0x1p+1 + 0x1.e79556p-3
src/math/special/acosh.h:15: RN acoshl(0x1.06822faf07879p+0) want 0x1.ccd73cbc4af78p-3 got 0x1.ccd73cbc4af7ap-3 ulperr 1.674 = 0x1p+1 + -0x1.4df79ep-2
src/math/special/acosh.h:17: RN acoshl(0x1.069d65411ec51p+0) want 0x1.d0928b08facbap-3 got 0x1.d0928b08facbcp-3 ulperr 1.785 = 0x1p+1 + -0x1.b83338p-3
src/math/special/acosh.h:18: RN acoshl(0x1.071d6b2713d08p+0) want 0x1.e1bc6a6c345fdp-3 got 0x1.e1bc6a6c345ffp-3 ulperr 1.818 = 0x1p+1 + -0x1.74a04ep-3
src/math/special/acosh.h:19: RN acoshl(0x1.0728405f5140cp+0) want 0x1.e328ebe92b32cp-3 got 0x1.e328ebe92b32ep-3 ulperr 1.790 = 0x1p+1 + -0x1.ae89ap-3
src/math/special/acosh.h:20: RN acoshl(0x1.07bd2c5c01bcbp+0) want 0x1.f6513c44c131p-3 got 0x1.f6513c44c1312p-3 ulperr 1.719 = 0x1p+1 + -0x1.203932p-2
src/math/special/acosh.h:21: RN acoshl(0x1.1aae7c452c859p+0) want 0x1.cf8d69288e386p-2 got 0x1.cf8d69288e384p-2 ulperr -1.723 = -0x1p+1 + 0x1.1b325ap-2
src/math/special/acosh.h:23: RN acoshl(0x1.1b50764626f1ep+0) want 0x1.d4ec67c71794p-2 got 0x1.d4ec67c717942p-2 ulperr 1.738 = 0x1p+1 + -0x1.0c09dap-2
FAIL src/math/acoshl.exe [status 1]
X src/math/special/asinh.h:7: RN asinh(0x1.fbdd0eedf8143p-3) want 0x1.f6cc20d7a594ap-3 got 0x1.f6cc20d7a594cp-3 ulperr 1.513 = 0x1p+1 + -0x1.f327a8p-2
X src/math/special/asinh.h:8: RN asinh(0x1.df2723491f88fp-3) want 0x1.dae2c8444900cp-3 got 0x1.dae2c8444900ap-3 ulperr -1.551 = -0x1p+1 + 0x1.cb8b86p-2
X src/math/special/asinh.h:9: RN asinh(0x1.ef675c6541305p-3) want 0x1.eab20432c9598p-3 got 0x1.eab20432c959ap-3 ulperr 1.568 = 0x1p+1 + -0x1.ba9e34p-2
X src/math/special/asinh.h:10: RN asinh(0x1.f19df3a1722a9p-3) want 0x1.ecd8a7f621554p-3 got 0x1.ecd8a7f621552p-3 ulperr -1.535 = -0x1p+1 + 0x1.dbc1a8p-2
X src/math/special/asinh.h:11: RN asinh(0x1.f1af09dcfa7d6p-3) want 0x1.ece942815ceccp-3 got 0x1.ece942815cecap-3 ulperr -1.526 = -0x1p+1 + 0x1.e5bb5p-2
X src/math/special/asinh.h:12: RN asinh(0x1.f339ebbeac5bap-3) want 0x1.ee68f10a49c42p-3 got 0x1.ee68f10a49c44p-3 ulperr 1.529 = 0x1p+1 + -0x1.e28cbp-2
X src/math/special/asinh.h:13: RN asinh(0x1.f424275dc8787p-3) want 0x1.ef4c7fcb51c56p-3 got 0x1.ef4c7fcb51c54p-3 ulperr -1.642 = -0x1p+1 + 0x1.6e4e9p-2
X src/math/special/asinh.h:14: RN asinh(0x1.f60d54a133665p-3) want 0x1.f127a8dec0c2p-3 got 0x1.f127a8dec0c1ep-3 ulperr -1.512 = -0x1p+1 + 0x1.f3c9eap-2
X src/math/special/asinh.h:15: RN asinh(0x1.fdccdaf285ffdp-3) want 0x1.f8ad4bed7af4cp-3 got 0x1.f8ad4bed7af4ap-3 ulperr -1.576 = -0x1p+1 + 0x1.b1f1f8p-2
X src/math/special/asinh.h:16: RN asinh(0x1.ff5bec94924c7p-3) want 0x1.fa30836c3949ap-3 got 0x1.fa30836c39498p-3 ulperr -1.533 = -0x1p+1 + 0x1.de989p-2
X src/math/special/asinh.h:17: RN asinh(0x1.028e8fd61c8a5p-2) want 0x1.ffc55bd02e9dep-3 got 0x1.ffc55bd02e9ep-3 ulperr 1.670 = 0x1p+1 + -0x1.523c08p-2
X src/math/special/asinh.h:18: RN asinh(0x1.dc71794e1f137p-2) want 0x1.ccbd41a7d058ap-2 got 0x1.ccbd41a7d0588p-2 ulperr -1.585 = -0x1p+1 + 0x1.a944b8p-2
X src/math/special/asinh.h:19: RN asinh(0x1.df308e177c3cbp-2) want 0x1.cf3a638145d7ap-2 got 0x1.cf3a638145d78p-2 ulperr -1.505 = -0x1p+1 + 0x1.fb3684p-2
X src/math/special/asinh.h:20: RN asinh(0x1.ea94e1e267746p-2) want 0x1.d9862533f65f6p-2 got 0x1.d9862533f65f4p-2 ulperr -1.579 = -0x1p+1 + 0x1.af51ecp-2
X src/math/special/asinh.h:21: RN asinh(0x1.ecd4f07608dc7p-2) want 0x1.db8d6fdcc6d74p-2 got 0x1.db8d6fdcc6d76p-2 ulperr 1.517 = 0x1p+1 + -0x1.eeb48p-2
X src/math/special/asinh.h:22: RN asinh(0x1.f30656c78ee7ep-2) want 0x1.e1204e364a186p-2 got 0x1.e1204e364a188p-2 ulperr 1.576 = 0x1p+1 + -0x1.b23ffp-2
X src/math/special/asinh.h:23: RN asinh(0x1.f5c0c6e41b969p-2) want 0x1.e393d3dc3b70ap-2 got 0x1.e393d3dc3b70cp-2 ulperr 1.562 = 0x1p+1 + -0x1.c06dbep-2
X src/math/special/asinh.h:24: RN asinh(0x1.09c58725300e7p-1) want 0x1.fe2c7f25fb172p-2 got 0x1.fe2c7f25fb174p-2 ulperr 1.579 = 0x1p+1 + -0x1.ae9df6p-2
src/math/special/asinh.h:7: RN asinhl(0x1.fbdd0eedf8143p-3) want 0x1.f6cc20d7a594ap-3 got 0x1.f6cc20d7a594cp-3 ulperr 1.513 = 0x1p+1 + -0x1.f327a8p-2
src/math/special/asinh.h:8: RN asinhl(0x1.df2723491f88fp-3) want 0x1.dae2c8444900cp-3 got 0x1.dae2c8444900ap-3 ulperr -1.551 = -0x1p+1 + 0x1.cb8b86p-2
src/math/special/asinh.h:9: RN asinhl(0x1.ef675c6541305p-3) want 0x1.eab20432c9598p-3 got 0x1.eab20432c959ap-3 ulperr 1.568 = 0x1p+1 + -0x1.ba9e34p-2
src/math/special/asinh.h:10: RN asinhl(0x1.f19df3a1722a9p-3) want 0x1.ecd8a7f621554p-3 got 0x1.ecd8a7f621552p-3 ulperr -1.535 = -0x1p+1 + 0x1.dbc1a8p-2
src/math/special/asinh.h:11: RN asinhl(0x1.f1af09dcfa7d6p-3) want 0x1.ece942815ceccp-3 got 0x1.ece942815cecap-3 ulperr -1.526 = -0x1p+1 + 0x1.e5bb5p-2
src/math/special/asinh.h:12: RN asinhl(0x1.f339ebbeac5bap-3) want 0x1.ee68f10a49c42p-3 got 0x1.ee68f10a49c44p-3 ulperr 1.529 = 0x1p+1 + -0x1.e28cbp-2
src/math/special/asinh.h:13: RN asinhl(0x1.f424275dc8787p-3) want 0x1.ef4c7fcb51c56p-3 got 0x1.ef4c7fcb51c54p-3 ulperr -1.642 = -0x1p+1 + 0x1.6e4e9p-2
src/math/special/asinh.h:14: RN asinhl(0x1.f60d54a133665p-3) want 0x1.f127a8dec0c2p-3 got 0x1.f127a8dec0c1ep-3 ulperr -1.512 = -0x1p+1 + 0x1.f3c9eap-2
src/math/special/asinh.h:15: RN asinhl(0x1.fdccdaf285ffdp-3) want 0x1.f8ad4bed7af4cp-3 got 0x1.f8ad4bed7af4ap-3 ulperr -1.576 = -0x1p+1 + 0x1.b1f1f8p-2
src/math/special/asinh.h:16: RN asinhl(0x1.ff5bec94924c7p-3) want 0x1.fa30836c3949ap-3 got 0x1.fa30836c39498p-3 ulperr -1.533 = -0x1p+1 + 0x1.de989p-2
src/math/special/asinh.h:17: RN asinhl(0x1.028e8fd61c8a5p-2) want 0x1.ffc55bd02e9dep-3 got 0x1.ffc55bd02e9ep-3 ulperr 1.670 = 0x1p+1 + -0x1.523c08p-2
src/math/special/asinh.h:18: RN asinhl(0x1.dc71794e1f137p-2) want 0x1.ccbd41a7d058ap-2 got 0x1.ccbd41a7d0588p-2 ulperr -1.585 = -0x1p+1 + 0x1.a944b8p-2
src/math/special/asinh.h:19: RN asinhl(0x1.df308e177c3cbp-2) want 0x1.cf3a638145d7ap-2 got 0x1.cf3a638145d78p-2 ulperr -1.505 = -0x1p+1 + 0x1.fb3684p-2
src/math/special/asinh.h:20: RN asinhl(0x1.ea94e1e267746p-2) want 0x1.d9862533f65f6p-2 got 0x1.d9862533f65f4p-2 ulperr -1.579 = -0x1p+1 + 0x1.af51ecp-2
src/math/special/asinh.h:21: RN asinhl(0x1.ecd4f07608dc7p-2) want 0x1.db8d6fdcc6d74p-2 got 0x1.db8d6fdcc6d76p-2 ulperr 1.517 = 0x1p+1 + -0x1.eeb48p-2
src/math/special/asinh.h:22: RN asinhl(0x1.f30656c78ee7ep-2) want 0x1.e1204e364a186p-2 got 0x1.e1204e364a188p-2 ulperr 1.576 = 0x1p+1 + -0x1.b23ffp-2
src/math/special/asinh.h:23: RN asinhl(0x1.f5c0c6e41b969p-2) want 0x1.e393d3dc3b70ap-2 got 0x1.e393d3dc3b70cp-2 ulperr 1.562 = 0x1p+1 + -0x1.c06dbep-2
src/math/special/asinh.h:24: RN asinhl(0x1.09c58725300e7p-1) want 0x1.fe2c7f25fb172p-2 got 0x1.fe2c7f25fb174p-2 ulperr 1.579 = 0x1p+1 + -0x1.ae9df6p-2
FAIL src/math/asinhl.exe [status 1]
X src/math/special/erfc.h:6: RN erfc(0x1.5db559fe5c0bap+0) want 0x1.b53cf571d328fp-5 got 0x1.b53cf571d328cp-5 ulperr -2.609 = -0x1.8p+1 + 0x1.900982p-2
src/math/special/erfc.h:6: RN erfcl(0x1.5db559fe5c0bap+0) want 0x1.b53cf571d328fp-5 got 0x1.b53cf571d328cp-5 ulperr -2.609 = -0x1.8p+1 + 0x1.900982p-2
FAIL src/math/erfcl.exe [status 1]
X src/math/special/exp2.h:12: bad fp exception: RN exp2(-0x1.ff8p+9)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/special/exp2.h:18: bad fp exception: RN exp2(-0x1.ff8p+9)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/special/exp2.h:20: bad fp exception: RN exp2(-0x1p+10)=0x1p-1024, want 0 got INEXACT|UNDERFLOW
X src/math/special/exp2.h:21: bad fp exception: RN exp2(-0x1.004p+10)=0x1p-1025, want 0 got INEXACT|UNDERFLOW
X src/math/special/exp2.h:22: bad fp exception: RN exp2(-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:12: bad fp exception: RN exp2l(-0x1.ff8p+9)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:18: bad fp exception: RN exp2l(-0x1.ff8p+9)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:20: bad fp exception: RN exp2l(-0x1p+10)=0x1p-1024, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:21: bad fp exception: RN exp2l(-0x1.004p+10)=0x1p-1025, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:22: bad fp exception: RN exp2l(-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
FAIL src/math/exp2l.exe [status 1]
src/math/sanity/fma.h:1: RN fmal(-0x1.02239f3c6a8f1p+3,0x1.22484b9ef31fp+2,0x1.52fb12ef638a1p-1) want -0x1.1f69545c32effp+5 got -0x1.9ee52705ep+4 ulperr 1406739496828928.000 = 0x1.3fdb04p+50 + -0x1.759846p-3
src/math/sanity/fma.h:2: RN fmal(0x1.161868e18bc67p+2,-0x1.1c6a6cdce75e8p+3,0x1.ab3ff8575b21dp-5) want -0x1.348be0b9d32d3p+5 got -0x1.c8a99f416p+3 ulperr 3419582362550272.000 = 0x1.84c2f2p+51 + 0x1.b43916p-3
src/math/sanity/fma.h:3: RN fmal(-0x1.0c34b3e01e6e7p+3,-0x1.61bde29e83f6dp+1,0x1.eb4a2e7ce0693p+2) want 0x1.ed6e27fca81b7p+4 got 0x1.487be8a56cp+2 ulperr -7235829650948096.000 = -0x1.9b4f2ep+52 + -0x1.f11488p-2
src/math/sanity/fma.h:4: RN fmal(-0x1.a206f0a19dcc4p+2,0x1.24527f7b576acp+2,-0x1.95882b433fad3p-1) want -0x1.ea02e2365f336p+4 got 0x1.2e3092a8ap+3 ulperr 11278458491502592.000 = 0x1.408d96p+53 + 0x1.41da3ap-2
src/math/sanity/fma.h:5: RN fmal(0x1.288bbb0d6a1e6p+3,0x1.33edd910a3c01p+2,-0x1.1e159e36313eep-1) want 0x1.603abfa620e23p+5 got -0x1.7341dbb0dp+2 ulperr -7012890246643712.000 = -0x1.8ea2fcp+52 + -0x1.7be8ccp-3
src/math/special/fma.h:42: RN fmal(0x1p+0,0x1p+0,-0x1p-1074) want 0x1p+0 got -0x1.fffffp-43 ulperr -4503599627370496.000 = -0x1p+52 + 0x0p+0
src/math/special/fma.h:43: bad fp exception: RN fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022)=0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:43: RN fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.fffffffffffffp-1022 got 0x1p-1074 ulperr -9007199254740992.000 = -0x1p+53 + 0x0p+0
src/math/special/fma.h:44: bad fp exception: RN fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022)=0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:44: RN fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.fffffffffffffp-1022 got -0x0p+0 ulperr -9007199254740992.000 = -0x1p+53 + 0x0p+0
src/math/special/fma.h:45: bad fp exception: RN fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:45: RN fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.fffffffffffffp-1022 got -0x1p-1074 ulperr 9007199254740992.000 = 0x1p+53 + 0x0p+0
src/math/special/fma.h:46: bad fp exception: RN fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:46: RN fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.fffffffffffffp-1022 got 0x0p+0 ulperr 9007199254740992.000 = 0x1p+53 + 0x0p+0
src/math/special/fma.h:47: RN fmal(0x1p-1074,-0x1p-1074,0x1p-1074) want 0x1p-1074 got -0x0p+0 ulperr -1.000 = -0x1p+0 + 0x0p+0
src/math/special/fma.h:48: RN fmal(0x1p-1074,-0x1p-1074,-0x1p-1074) want -0x1p-1074 got -0x0p+0 ulperr 1.000 = 0x1p+0 + 0x0p+0
src/math/special/fma.h:49: RN fmal(0x1.0000000000001p+0,0x1p+0,0x1p+53) want 0x1.0000000000001p+53 got 0x1.000008p+12 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:50: RN fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p+53) want 0x1.0000000000001p+53 got 0x1.ffc02p+10 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:51: RN fmal(0x1p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp+53) want 0x1.fffffffffffffp+53 got -0x1.ffffep+10 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:52: RN fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep+53) want 0x1.fffffffffffffp+53 got 0x1.ffc02p+10 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:53: RN fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p-52) want 0x1.0000000000001p+0 got -0x1.fffffp-42 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:54: RN fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp-53) want 0x1.0000000000001p+0 got -0x1.fffff8p-41 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:55: RN fmal(0x1.0000000000005p+0,0x1.ffffffffffffbp-1,0x1p-52) want 0x1.0000000000003p+0 got -0x1.8fffff8p-37 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:56: RN fmal(0x1.0000000000006p+0,0x1.ffffffffffffdp-1,0x1p-52) want 0x1.0000000000005p+0 got -0x1.1fffff8p-37 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:75: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff5p+0 got 0x1.6800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:76: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1p+0) want 0x1.ffffffffffff9p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:77: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffff7p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:78: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffff5p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:79: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffff7p+0 got 0x1.f800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:80: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffff5p+0 got 0x1.f800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:81: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffff7p+0 got 0x1.2000004p-36 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:82: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffff5p+0 got 0x1.2000004p-36 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:83: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.fffffffffffffp-1) want 0x1.ffffffffffff7p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:84: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffff5p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:85: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff3p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:86: RN fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep-1) want 0x1.fffffffffffffp+0 got -0x1.fffffp-42 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:87: RN fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffp-42 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:88: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.fffffffffffffp-1) want 0x1.fffffffffffffp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:89: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:90: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:91: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1p+0) want 0x1.fffffffffffffp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:92: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:93: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:94: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:95: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:96: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffffdp+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:97: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffbp+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:98: RN fmal(0x1.5872449b765b9p+0,0x1.c9acf91f8de2bp+0,0x1.9265607e4d168p+0) want 0x1.fd190c77c2a67p+1 got -0x1.b3fc37bedp-4 ulperr -9195829923414016.000 = -0x1.055c78p+53 + -0x1.fffc98p-2
src/math/special/fma.h:99: RN fmal(0x1.81d010b146d0ep+0,0x1.2d3c680dc9071p+0,0x1.a80b69538754cp+0) want 0x1.b7040b44973a7p+1 got 0x1.4d0cb20197p+1 ulperr -1864177270390784.000 = -0x1.a7dd66p+50 + 0x1.ffacbcp-2
src/math/special/fma.h:100: RN fmal(0x1.6a44f2252b6a2p+0,0x1.da452a378b832p+0,0x1.1fe2ce329104p+0) want 0x1.df842b6f48b13p+1 got 0x1.12e95c1ba4p+0 ulperr -6017592242208768.000 = -0x1.560f7ep+52 + 0x1.ffdda2p-2
src/math/special/fma.h:101: RN fmal(0x1.096b1d26463eep+0,0x1.d846d3e34333p+0,0x1.721e3480922b8p+0) want 0x1.ade2909c0269fp+1 got -0x1.a139d9b2cp-1 ulperr -9397596749561856.000 = -0x1.0b1884p+53 + -0x1.ffe5ecp-2
src/math/special/fma.h:102: RN fmal(0x1.99bd3434c454bp+0,0x1.03cb8e4115bdep+0,0x1.109f107188b08p+0) want 0x1.5837a47d37fafp+1 got 0x1.cfdec0c00ap+0 ulperr -1975290892910592.000 = -0x1.c1211p+50 + 0x1.ffc604p-2
src/math/special/fma.h:103: RN fmal(0x1.ba930a0a78ed2p+0,0x1.8c24e8d67f636p+0,0x1.ac49dbfbf8affp+0) want 0x1.164947ae6a5d9p+2 got -0x1.33e3b04edp-2 ulperr -5234191281160192.000 = -0x1.298782p+52 + -0x1.fffb3p-2
src/math/special/fma.h:104: RN fmal(0x1.be224ad773191p+0,0x1.d96b77169731fp+0,0x1.662cfb75d8edep+0) want 0x1.27cd67e720f79p+2 got 0x1.e4711611c78p+1 ulperr -942615600037888.000 = -0x1.aca6e6p+49 + 0x1.ffc372p-2
src/math/special/fma.h:105: RN fmal(0x1.59e7a1b0bdb3cp+0,0x1.2decba4d46421p+0,0x1.88f4062e96df5p+0) want 0x1.90749e4794f79p+1 got -0x1.b3c84a9a88p-1 ulperr -8961479327875072.000 = -0x1.fd66bp+52 + -0x1.ffe4c4p-2
src/math/special/fma.h:106: RN fmal(0x1.22edf4b4da9a7p+0,0x1.dfa8d65f506cdp+0,0x1.2799208da2fbap+0) want 0x1.a45a1e99ed7a9p+1 got 0x1.a0bdfb8976p-1 ulperr -5562059957731328.000 = -0x1.3c2aap+52 + 0x1.ffe5f4p-2
src/math/special/fma.h:107: RN fmal(0x1.ad5b991a2a279p+0,0x1.f02fd26706024p+0,0x1.831cdd5c8797cp+0) want 0x1.30d3a2ac90a61p+2 got 0x1.c7c15e1c82p+1 ulperr -1353701616779264.000 = -0x1.33cbcep+50 + 0x1.ffc708p-2
src/math/special/fma.h:108: RN fmal(0x1.531f9620e764ap+0,0x1.cad61b54d4425p+0,0x1.df817cae8a9afp+0) want 0x1.0fd4e7f8671ddp+2 got 0x1.8e74e26059p+1 ulperr -1277252138434560.000 = -0x1.2269dcp+50 + 0x1.ffce32p-2
src/math/special/fma.h:109: RN fmal(0x1.629a5ad79494fp+0,0x1.049e58693f4c4p+0,0x1.45b0109e4d00cp+0) want 0x1.5758154e14965p+1 got -0x1.01173c9c2p-3 ulperr -6322847379095552.000 = -0x1.67698ap+52 + -0x1.fffbfcp-2
src/math/special/fma.h:110: RN fmal(0x1.2f52b53f9240ap+0,0x1.1d5c686dbb0dap+0,0x1.6da3e392a4fd4p+0) want 0x1.5fe03a6795913p+1 got 0x1.5bdb7d9084p+0 ulperr -3130480329228288.000 = -0x1.63e4f8p+51 + 0x1.ffd484p-2
src/math/special/fma.h:111: RN fmal(0x1.058667552b49ep+0,0x1.23307bacc1c42p+0,0x1.5b059b47cd8f5p+0) want 0x1.423f752486d13p+1 got -0x1.4bfb042744p+0 ulperr -8589176530272256.000 = -0x1.e83cf8p+52 + -0x1.ffd68p-2
src/math/special/fma.h:112: RN fmal(0x1.a717d95337ed8p+0,0x1.2b1c37846aaadp+0,0x1.be65672f885b1p+0) want 0x1.d65e72303c075p+1 got -0x1.7e0573ec04p+1 ulperr -14995408015065088.000 = -0x1.aa31f4p+53 + -0x1.ffa07ep-2
src/math/special/fma.h:113: RN fmal(0x1.deb79287b3d32p+0,0x1.62776b829babap+0,0x1.67daf18bd2eb1p+0) want 0x1.ff5a0d45c69d7p+1 got 0x1.ad881652ap-3 ulperr -8523520438960128.000 = -0x1.e4818cp+52 + 0x1.fff94ap-2
src/math/special/fma.h:114: RN fmal(0x1.fbf12d3a6de91p+0,0x1.879fe6124f11p+0,0x1.9f3f1247a8641p+0) want 0x1.2a126c6980019p+2 got 0x1.45e3d61a84p+2 ulperr 489379780886528.000 = 0x1.bd169cp+48 + 0x1.ffae88p-2
src/math/special/fma.h:115: RN fmal(0x1.c589628460e01p+0,0x1.e1bec1c797533p+0,0x1.349f30cdb84bbp+0) want 0x1.2286118b6f6e5p+2 got -0x1.8e9d95e0668p+1 ulperr -8617206560587776.000 = -0x1.e9d4dcp+52 + -0x1.ffce2cp-2
src/math/special/fma.h:116: RN fmal(0x1.46fd6c2c924ebp+0,0x1.65e2f02e730a1p+0,0x1.37739d2751098p+0) want 0x1.804a71c1f1273p+1 got 0x1.855d7947cbp+0 ulperr -3335623268106240.000 = -0x1.7b376ap+51 + 0x1.ffcf54p-2
src/math/special/fma.h:117: RN fmal(0x1.f99e595ae11fdp+0,0x1.bd33d9a1d81bp+0,0x1.932a2a2e244c1p+0) want 0x1.409e34f8f2f89p+2 got -0x1.7a49668944p+2 ulperr -12295261934059520.000 = -0x1.5d73cep+53 + -0x1.ffa16ep-2
src/math/special/fma.h:118: RN fmal(0x1.59ea1e56bfe55p+0,0x1.6f46b7d412a44p+0,0x1.80f2bc9a32cc3p+0) want 0x1.b89c7640e32ffp+1 got -0x1.ca180bfb6p-3 ulperr -8254993714905088.000 = -0x1.d53df8p+52 + -0x1.fff8d8p-2
src/math/special/fma.h:119: RN fmal(0x1.61490fcb44129p+0,0x1.0038ec4fc35c2p+0,0x1.df7436ed7a7b7p+0) want 0x1.a085ea68d05cfp+1 got -0x1.5ed2c690f7p+1 ulperr -13499301254660096.000 = -0x1.7fac58p+53 + -0x1.ffa84cp-2
src/math/special/fma.h:120: RN fmal(0x1.d41b98788502bp+0,0x1.1a7b77843aca6p+0,0x1.05be891837d36p+0) want 0x1.8523596ceced9p+1 got -0x1.48c8fc403cp-1 ulperr -8291801584631808.000 = -0x1.d75598p+52 + -0x1.ffeb74p-2
src/math/special/fma.h:121: RN fmal(0x1.3153cf6f69af9p+0,0x1.aaa947e38e57ap+0,0x1.8519f9b590645p+0) want 0x1.c0fcab7b46369p+1 got 0x1.25f4f4bd5p-3 ulperr -7575453653008384.000 = -0x1.ae9d5cp+52 + 0x1.fffb68p-2
src/math/special/fma.h:122: RN fmal(0x1.c25a1f73581aap+0,0x1.0a51ffca372ap+0,0x1.0c77e3ebac5f3p+0) want 0x1.707ce48c7d72dp+1 got -0x1.3261c9a0ep+1 ulperr -11872436362412032.000 = -0x1.516f58p+53 + -0x1.ffb368p-2
src/math/special/fma.h:123: RN fmal(0x1.829c2cde44b7p+0,0x1.f692e86d8cb36p+0,0x1.455e72d264bfp+0) want 0x1.0f16a3b8b3f97p+2 got -0x1.684386466p+0 ulperr -6353495191977984.000 = -0x1.692786p+52 + -0x1.ffe97cp-2
src/math/special/fma.h:124: RN fmal(0x1.94729588dcc69p+0,0x1.c3bb794c6edf8p+0,0x1.9da4e94d262d2p+0) want 0x1.19d4bd84d9fd3p+2 got 0x1.e1b9a2757p-1 ulperr -3898698849320960.000 = -0x1.bb3b12p+51 + 0x1.fff0f2p-2
src/math/special/fma.h:125: RN fmal(0x1.e6a5e7e39c3d5p+0,0x1.1b69af2bdd978p+0,0x1.e7ef1eafa119cp+0) want 0x1.00ac5b44c9f31p+2 got -0x1.6777d5d394p+1 ulperr -7677358731427840.000 = -0x1.b46846p+52 + -0x1.ffd312p-2
src/math/special/fma.h:126: RN fmal(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022) want 0x1.b594d0e4368efp-1022 got -0x1.9dedc9561p-1023 ulperr -11338968138252288.000 = -0x1.4245dap+53 + -0x1.ffcc42p-2
src/math/special/fma.h:127: RN fmal(0x1.022db53c98d14p-1022,0x1.21157eef74848p-2,0x1.2f880432b1bc1p-1022) want 0x1.786ad60a02b3dp-1022 got -0x1.150255ac98p-1022 ulperr -11495199721127936.000 = -0x1.46b696p+53 + -0x1.ffbacp-2
src/math/special/fma.h:128: RN fmal(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022) want 0x1.cbb085199a3f5p-1022 got -0x1.6ed115da2f8p-1023 ulperr -11313497908445184.000 = -0x1.418c88p+53 + -0x1.ffd226p-2
src/math/special/fma.h:129: RN fmal(0x1.adbc3a9d816dep-1022,0x1.e039d4431e3cdp-2,0x1.93ceef6fe18a2p-1022) want 0x1.2eabb7dc0e2f1p-1021 got 0x1.ef7b6794e3p-1023 ulperr -3145487481831424.000 = -0x1.6599bcp+51 + 0x1.ffe108p-2
src/math/special/fma.h:130: RN fmal(0x1.645aa5c2df3afp-1022,0x1.649edfcad854fp-2,0x1.8b43e0bbaeb01p-1022) want 0x1.03af571d2b505p-1021 got 0x1.0ce86163c02p-1021 ulperr 162249436037120.000 = 0x1.272148p+47 + 0x1.ffbcc6p-2
src/math/special/fma.h:131: RN fmal(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022) want 0x1.ad9ce7fcefa3fp-1022 got -0x1.12bc4931e6p-1025 ulperr -8161980292530176.000 = -0x1.cff472p+52 + -0x1.fff76ap-2
src/math/special/fma.h:132: RN fmal(0x1.8ee3feb00c3e7p-1022,0x1.53bd9353313bcp-2,0x1.5501b57dc3b6fp-1022) want 0x1.d9598906f0bb3p-1022 got -0x1.4660b83f57p-1022 ulperr -14068955652030464.000 = -0x1.8fdd2p+53 + -0x1.ffae68p-2
src/math/special/fma.h:133: RN fmal(0x1.161225cfa61e2p-1022,0x1.b6dd69a0af5bp-2,0x1.924ffc3ead5c3p-1022) want 0x1.04be6fc25367bp-1021 got -0x1.f3ab56daa8p-1022 ulperr -8982192881401856.000 = -0x1.fe941cp+52 + -0x1.ffc18ap-2
src/math/special/fma.h:134: RN fmal(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022) want 0x1.70b6c3169f043p-1022 got -0x1.a779baefbe8p-1023 ulperr -10211413595258880.000 = -0x1.2239dp+53 + -0x1.ffcb1p-2
src/math/special/fma.h:135: RN fmal(0x1.ce0e2ea55040ep-1022,0x1.ce5a55fa3828dp-2,0x1.f2f444d50ce59p-1022) want 0x1.61ca36f5a8a79p-1021 got -0x1.173f0cea128p-1022 ulperr -8680214267691008.000 = -0x1.ed69bep+52 + -0x1.ffdd18p-2
src/math/special/fma.h:136: RN fmal(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022) want 0x1.1440cf1c105ebp-1021 got -0x1.f88fda6p-1030 ulperr -4877233864835072.000 = -0x1.153d18p+52 + -0x1.ffffcp-2
src/math/special/fma.h:137: RN fmal(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022) want 0x1.1186e1f77012dp-1021 got -0x1.2ffba526fcp-1025 ulperr -5146168610783232.000 = -0x1.24869cp+52 + -0x1.fffb4p-2
src/math/special/fma.h:138: RN fmal(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022) want 0x1.8d86310bad175p-1022 got -0x1.1b755c367f8p-1023 ulperr -9486646453993472.000 = -0x1.0da07p+53 + -0x1.ffdc92p-2
src/math/special/fma.h:139: RN fmal(0x1.fb3391a4b1d23p-1022,0x1.4d8705b057caep-2,0x1.d026cb6dae73bp-1022) want 0x1.3aad18b424c67p-1021 got -0x1.0a1784c7c6cp-1021 ulperr -10216978799132672.000 = -0x1.22624ep+53 + -0x1.ffbd7ap-2
src/math/special/fma.h:140: RN fmal(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022) want 0x1.c0048fd33a417p-1022 got -0x1.d026e457f1p-1024 ulperr -9922974329077760.000 = -0x1.1a0724p+53 + -0x1.ffe2fep-2
src/math/special/fma.h:141: RN fmal(0x1.aa9eff070281cp-1022,0x1.fab05661b48ebp-2,0x1.cbe2af6c69c6ep-1022) want 0x1.4f7ddbe122765p-1021 got 0x1.9e529858dap-1023 ulperr -4079821109854208.000 = -0x1.cfd26cp+51 + 0x1.ffe61ap-2
src/math/special/fma.h:142: RN fmal(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022) want 0x1.e0e762ee2e7c5p-1022 got -0x1.e2fe0f96ecp-1023 ulperr -12708596701724672.000 = -0x1.693336p+53 + -0x1.ffc3ap-2
src/math/special/fma.h:143: RN fmal(0x1.4dab43918a9a8p-1022,0x1.ed667442b4751p-2,0x1.3f25f82e02e3ep-1022) want 0x1.dfec0ee732dcbp-1022 got 0x1.6a41c4d18ap-1022 ulperr -2069987942465536.000 = -0x1.d6a928p+50 + 0x1.ffa57p-2
src/math/special/fma.h:144: RN fmal(0x1.7943735951931p-1022,0x1.fa6a357c5c9ddp-2,0x1.0bed44b0b71b4p-1022) want 0x1.c6803a6059abfp-1022 got 0x1.0e970cce134p-1022 ulperr -3235394032238592.000 = -0x1.6fd25cp+51 + 0x1.ffbc5ap-2
src/math/special/fma.h:145: RN fmal(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022) want 0x1.8640492c45959p-1022 got -0x1.3271a1b38p-1027 ulperr -7033839486500864.000 = -0x1.8fd3d6p+52 + -0x1.fffd9cp-2
src/math/special/fma.h:146: RN fmal(0x1.f52172c56bdf5p-1022,0x1.672b2de422734p-2,0x1.7bc5d708e5a34p-1022) want 0x1.15c5b95145cc7p-1021 got 0x1.3cf4f71d188p-1021 ulperr 689341647028224.000 = 0x1.3979eep+49 + 0x1.ffb0c2p-2
src/math/special/fma.h:147: RN fmal(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022) want 0x1.e7fa0dd76fbefp-1022 got -0x1.60a5d541bp-1024 ulperr -10135539776749568.000 = -0x1.2011c2p+53 + -0x1.ffe9f6p-2
src/math/special/fma.h:148: RN fmal(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022) want 0x1.b63a7f56fce1fp-1022 got -0x1.497a9bc52p-1024 ulperr -9158461560455168.000 = -0x1.044c94p+53 + -0x1.ffeb68p-2
src/math/special/fma.h:149: RN fmal(0x1.f73d5f4e81fd8p-1022,0x1.7ccff2642124ap-2,0x1.e7d836a0c8308p-1022) want 0x1.517f1763126d3p-1021 got -0x1.06939f3372p-1021 ulperr -10556597969354752.000 = -0x1.2c095cp+53 + -0x1.ffbe5cp-2
src/math/special/fma.h:150: RN fmal(0x1.b4328925969fbp-1022,0x1.8fa02832a22d5p-2,0x1.2084598e2f8c6p-1022) want 0x1.cabf43838dc51p-1022 got -0x1.7c61d65f0a4p-1022 ulperr -14762118276448256.000 = -0x1.a3908cp+53 + -0x1.ffa0e8p-2
src/math/special/fma.h:151: RN fmal(0x1.66ee60a92676fp-1022,0x1.eddd2e7681ce4p-2,0x1.b81d57daeb3a7p-1022) want 0x1.329c918ffb683p-1021 got 0x1.cd379885b8p-1025 ulperr -4886854591578112.000 = -0x1.15c918p+52 + 0x1.fff8ccp-2
src/math/special/fma.h:152: RN fmal(0x1.ff2737585895dp-1022,0x1.fb4bf3828ae4ap-2,0x1.4a866847740fp-1022) want 0x1.23e07e4dbbeabp-1021 got 0x1.46c53f7571p-1023 ulperr -3697601232764928.000 = -0x1.a45e5cp+51 + 0x1.ffeb94p-2
src/math/special/fma.h:153: RN fmal(0x1.5e2008d269a86p-1022,0x1.507bbbe4d78eep-2,0x1.6220c6f83f636p-1022) want 0x1.d52d9874f1c75p-1022 got 0x1.eda0503c4ap-1023 ulperr -3911886277967872.000 = -0x1.bcbaep+51 + 0x1.ffc24cp-2
src/math/special/fma.h:154: RN fmal(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022) want 0x1.9864925e2fb0fp-1022 got -0x1.53ae580e8cp-1025 ulperr -7931489798848512.000 = -0x1.c2da5ep+52 + -0x1.fff562p-2
src/math/special/fma.h:155: RN fmal(0x1.7b353b81e793dp-1022,0x1.82b426f874c6dp-2,0x1.d92b19d21fd5cp-1022) want 0x1.342fb0c544a79p-1021 got 0x1.2af4c8aebe4p-1022 ulperr -2792024021401600.000 = -0x1.3d6a98p+51 + 0x1.ffdaa2p-2
src/math/special/fma.h:156: RN fmal(0x1.5be667823370ap-1022,0x1.a8a99b163869bp-2,0x1.95456b68dc3bcp-1022) want 0x1.12c638de03c71p-1021 got 0x1.49af7fc787p-1023 ulperr -3383908364189696.000 = -0x1.80b4b2p+51 + 0x1.ffeb66p-2
src/math/special/fma.h:157: RN fmal(0x1.17b0fc6c850e5p-1022,0x1.d1d0a4853c315p-2,0x1.36b79f7c0c24p-1022) want 0x1.b5f2baff5635dp-1022 got 0x1.6a19304724p-1026 ulperr -7306334223466496.000 = -0x1.9f5128p+52 + 0x1.fffa58p-2
src/math/special/fma.h:158: RN fmal(0x1.bd97819bacfd8p-1022,0x1.2c25f267ba4eep-2,0x1.804b5204a3f3ap-1022) want 0x1.01739c190fd97p-1021 got 0x1.b9e166e6b4p-1022 ulperr -642314707927040.000 = -0x1.241746p+49 + 0x1.ffc8c4p-2
src/math/special/fma.h:159: RN fmal(0x1.596577053873dp-1022,0x1.3562ab2d29949p-2,0x1.b3f1ee75db6e7p-1022) want 0x1.0e268a498009bp-1021 got 0x1.e8136bc1594p-1022 ulperr -459377991483392.000 = -0x1.a1cd46p+48 + 0x1.ffc2fep-2
src/math/special/fma.h:160: RN fmal(0x1.3c7a68cf0f7b3p-1022,0x1.9a55c15b167bdp-2,0x1.7635b7b163c07p-1022) want 0x1.f5073b93b7b81p-1022 got 0x1.75f9a972138p-1023 ulperr -5524660993130496.000 = -0x1.3a0a66p+52 + 0x1.ffd14p-2
src/math/special/fma.h:161: RN fmal(0x1.5825164bc4068p-1022,0x1.dcbb6e5ff3245p-2,0x1.52fc3be0e84dap-1022) want 0x1.f334771c2dcfbp-1022 got 0x1.2b86ba6b02p-1022 ulperr -3512784226615296.000 = -0x1.8f5b7ap+51 + 0x1.ffb51ep-2
src/math/special/fma.h:162: RN fmal(0x1.139ea77b760ecp+1022,0x1.9b25f2fd017eap+2,-0x1.bc16788922b6fp+1023) want 0x1.b93aac527380fp+1023 got 0x1.c3ec4f2eep+1022 ulperr -3787028625883136.000 = -0x1.ae890ap+51 + 0x1.ffc782p-2
src/math/special/fma.h:163: RN fmal(0x1.0e6f9c1657d7cp+1022,0x1.4d5c6b55ab5f1p+2,-0x1.e027dd5742e2cp+1023) want 0x1.c0538372b4bbfp+1022 got 0x1.54dede6dep+1021 ulperr -4888708943708160.000 = -0x1.15e414p+52 + 0x1.ffd564p-2
src/math/special/fma.h:164: RN fmal(0x1.1182524fa411cp+1022,0x1.a3dba56842d19p+2,-0x1.c1ad59474d71fp+1023) want 0x1.bf78969300a77p+1023 got 0x1.8651491efp+1022 ulperr -4438724683235328.000 = -0x1.f89fe4p+51 + 0x1.ffcf36p-2
src/math/special/fma.h:165: RN fmal(0x1.1cbf4fb8ec82p+1022,0x1.5e32019a84fbbp+2,-0x1.985af08f32edep+1023) want 0x1.72af6bbad4a29p+1023 got 0x1.a68c1c1ecp+1023 ulperr 912367152005120.000 = 0x1.9ee584p+49 + 0x1.ff965cp-2
src/math/special/fma.h:166: RN fmal(0x1.311e25c6db346p+1022,0x1.4e30db6c4b51dp+2,-0x1.7681f7a9786a7p+1023) want 0x1.a61d29434fc13p+1023 got -0x1.791d1989p+1017 ulperr -7529566759288832.000 = -0x1.ac019ep+52 + -0x1.fffe86p-2
src/math/special/fma.h:167: RN fmal(0x1.1201cf577052fp+1022,0x1.59730b2db7a16p+2,-0x1.56f1a64a078d5p+1023) want 0x1.8c8d801df34d9p+1023 got -0x1.3048609fd8p+1022 ulperr -inf = -inf + -0x1.ffd9f6p-2
src/math/special/fma.h:168: RN fmal(0x1.3e52335b76e81p+1022,0x1.4dbd56f857479p+2,-0x1.509340c11bd2ep+1023) want 0x1.ed6576837f653p+1023 got -0x1.e498d5441cp+1022 ulperr -inf = -inf + -0x1.ffc36cp-2
src/math/special/fma.h:169: RN fmal(0x1.18566b4f843cbp+1022,0x1.444fba10eaf29p+2,-0x1.f927beae57f0ap+1023) want 0x1.9a433b9796559p+1022 got 0x1.a048d2820cp+1022 ulperr 105937222238208.000 = 0x1.8165bap+46 + -0x1.ff6812p-2
src/math/special/fma.h:170: RN fmal(0x1.3fbe544fe1be8p+1022,0x1.2d2a5fda03639p+2,-0x1.007407dbfd03cp+1023) want 0x1.efdb644b613e5p+1023 got -0x1.e14223656p+1022 ulperr -inf = -inf + -0x1.ffc3d8p-2
src/math/special/fma.h:171: RN fmal(0x1.263a0d3bc2e4p+1022,0x1.4cc198adbc651p+2,-0x1.734b1c1f7fdb8p+1023) want 0x1.899878afc0fa3p+1023 got 0x1.a13620448p+1023 ulperr 415454233362432.000 = 0x1.79da7ap+48 + 0x1.ff97b2p-2
src/math/special/fma.h:172: RN fmal(0x1.5bf4aec8efc8ep+1022,0x1.555f0341516c9p+2,-0x1.c706408acd14cp+1023) want 0x1.d8f5e18b868bdp+1023 got 0x1.3e5679fdf8p+1022 ulperr -5520279589617664.000 = -0x1.39caa4p+52 + 0x1.ffd836p-2
src/math/special/fma.h:173: RN fmal(0x1.1e57f1af78279p+1022,0x1.34bc0c7f082b3p+2,-0x1.497b92c1365edp+1023) want 0x1.692cb7ec68a93p+1023 got -0x1.c0a1f29b28p+1021 ulperr -8326959113175040.000 = -0x1.d95534p+52 + -0x1.ffe3f6p-2
src/math/special/fma.h:174: RN fmal(0x1.1d9824cd73511p+1022,0x1.1d557ddfe47ffp+2,-0x1.556cdb1d20a72p+1023) want 0x1.2736a6b6e35f3p+1023 got 0x1.bc6f9c9778p+1021 ulperr -3238800478175232.000 = -0x1.70358p+51 + 0x1.ffe43ap-2
src/math/special/fma.h:175: RN fmal(0x1.1ff85a24aff31p+1022,0x1.39ab374b2680dp+2,-0x1.35e6b07b651b8p+1023) want 0x1.8bc7ce2087081p+1023 got 0x1.84b319bafap+1023 ulperr -124568119279616.000 = -0x1.c52d1ap+46 + 0x1.ff9ed4p-2
src/math/special/fma.h:176: RN fmal(0x1.0449b3965227ep+1022,0x1.4430d4441f9f2p+2,-0x1.a6966c96307ep+1023) want 0x1.d94eda8c81771p+1022 got -0x1.992ed6b72p+1021 ulperr -11925733685329920.000 = -0x1.52f322p+53 + -0x1.ffccdap-2
src/math/special/fma.h:177: RN fmal(0x1.3c91fa00fd0c7p+1022,0x1.1b6661c0b0303p+2,-0x1.f1f2846b64483p+1023) want 0x1.95eae0d2644d3p+1022 got 0x1.9985d8eaap+1019 ulperr -6240425882943488.000 = -0x1.62ba26p+52 + -0x1.ff0cccp-2
src/math/special/fma.h:178: RN fmal(0x1.0979b36d46534p+1022,0x1.12fa205f41f7fp+2,-0x1.a83ecf4544a63p+1023) want 0x1.2420f34e2aa3dp+1022 got -0x1.335a0fe68p+1019 ulperr -5815056616914944.000 = -0x1.4a8c36p+52 + 0x1.ff099ap-2
src/math/special/fma.h:179: RN fmal(0x1.4c89df582a599p+1022,0x1.55f3dc473ea8fp+2,-0x1.e35037292ddfp+1023) want 0x1.95109fdbc3771p+1023 got -0x1.afa3b29624p+1022 ulperr -inf = -inf + -0x1.ffca0cp-2
src/math/special/fma.h:180: RN fmal(0x1.35ee0a669c4fbp+1022,0x1.2263cb63f386ap+2,-0x1.449218ae35ac7p+1023) want 0x1.7a8ed977d817bp+1023 got 0x1.47da9ddfb8p+1022 ulperr -3775828961787904.000 = -0x1.ad4316p+51 + 0x1.ffd704p-2
src/math/special/fma.h:181: RN fmal(0x1.117cc860f61bcp+1022,0x1.440985b25d994p+2,-0x1.d7a7d82000449p+1023) want 0x1.b960b7088e74fp+1022 got 0x1.ddfba372cp+1022 ulperr 643964982001664.000 = 0x1.24d764p+49 + -0x1.ff777ep-2
src/math/special/fma.h:182: RN fmal(0x1.1e78a37be320fp+1022,0x1.0db0fce62287bp+2,-0x1.376337da5eb53p+1023) want 0x1.24326b9956dfbp+1023 got -0x1.d2881b3596p+1023 ulperr -inf = -inf + -0x1.ff8b5ep-2
src/math/special/fma.h:183: RN fmal(0x1.0c79b5c8331c2p+1022,0x1.0aba6ea746b5p+2,-0x1.c86f1fcaf0741p+1023) want 0x1.9c135bb2cff85p+1021 got -0x1.cc298bacp+1019 ulperr -9273126449840128.000 = -0x1.078eep+53 + 0x1.fe1cc2p-2
src/math/special/fma.h:184: RN fmal(0x1.556c4c072f272p+1022,0x1.347758d7d4eb5p+2,-0x1.c6fe4f24b248dp+1023) want 0x1.6fcc9f756df6dp+1023 got -0x1.f6f4c76598p+1022 ulperr -inf = -inf + -0x1.ffc122p-2
src/math/special/fma.h:185: RN fmal(-0x1.e8349b891b2fp-1,0x1.4a6dec9b72578p-1,0x1.3b6151ce809ddp-1) want 0x1.3a62fe330b355p-11 got -0x1.d97121p-11 ulperr -13859627535958016.000 = -0x1.89ea1p+53 + -0x1.ff89a4p-2
src/math/special/fma.h:186: RN fmal(0x1.2996632ac7d74p-1,-0x1.bb3c58b654d94p-1,0x1.01a6660e64a31p-1) want 0x1.ed045bb956a8ep-15 got -0x1.070d62p-15 ulperr -13300911346548736.000 = -0x1.7a08dep+53 + -0x1.eabe3cp-2
src/math/special/fma.h:187: RN fmal(-0x1.c602e894c1df8p-1,0x1.a1c980e7d3f94p-1,0x1.7271244b43386p-1) want -0x1.ba251fe026e5bp-15 got -0x1.af2b6cp-15 ulperr 193081294979072.000 = 0x1.5f367cp+47 + 0x1.fa6bcap-2
src/math/special/fma.h:188: RN fmal(-0x1.c84baf47e85cp-1,0x1.770b5149ef2ep-1,0x1.4d80f139320bap-1) want -0x1.79277433b9e23p-10 got 0x1.d4b6fp-11 ulperr 10757822555881472.000 = 0x1.31c176p+53 + 0x1.ffc56ap-2
src/math/special/fma.h:189: RN fmal(-0x1.36e667dcf9c6p-1,0x1.2591f82556b88p-1,0x1.2452a0f795f95p-1) want 0x1.c83c8e63c159fp-3 got -0x1.221cccp-12 ulperr -8036166204915712.000 = -0x1.c8cd9cp+52 + -0x1.ffffdcp-2
src/math/special/fma.h:190: RN fmal(0x1.88b2cede61e4cp-1,-0x1.71dcab5ad9e9p-3,0x1.32b27fea2ae97p-3) want 0x1.70461909b25e2p-7 got -0x1.affe57fffffffp-17 ulperr -6486162973655040.000 = -0x1.70b218p+52 + -0x1.ffffe6p-2
src/math/special/fma.h:191: RN fmal(0x1.8d1e44002c98p-3,-0x1.af9fdfb347834p-1,0x1.e280942fb4146p-4) want -0x1.761ac23896dfdp-5 got 0x1.0bec48p-14 ulperr 6590522089013248.000 = 0x1.76a0b8p+52 + 0x1.ffffdep-2
src/math/special/fma.h:192: RN fmal(0x1.236e8cb9492c8p-1,-0x1.d37443a57f1c4p-1,0x1.ca10df801aabcp-4) want -0x1.a1a2cdf0138f9p-2 got 0x1.f090cab7p-5 ulperr 8439088898113536.000 = 0x1.dfb4e8p+52 + 0x1.fff07cp-2
src/math/special/fma.h:193: RN fmal(-0x1.6ad943e610fb8p-1,-0x1.cef92a7bb18bcp-1,0x1.f28587d8fb0ep-4) want 0x1.866b5204b9aecp-1 got -0x1.8c9eb9a7p-5 ulperr -7304415983697920.000 = -0x1.9f353ep+52 + -0x1.fff9cep-2
src/math/special/fma.h:194: RN fmal(-0x1.60a8569a5d894p-1,-0x1.ca07e29dd171cp-1,0x1.b6c475ace09ecp-4) want 0x1.72549291e2f7ap-1 got -0x1.b6fd181e8p-5 ulperr -6997593720619008.000 = -0x1.8dc464p+52 + -0x1.fff924p-2
src/math/special/fma.h:195: RN fmal(0x1.d1962720d678cp-1,-0x1.4548ee45c4084p-1,0x1.f416ab193d75cp-4) want -0x1.d2929879dc853p-2 got 0x1.fc38e6f4p-8 ulperr 8347731722502144.000 = 0x1.da837cp+52 + 0x1.fffe04p-2
src/math/special/fma.h:196: RN fmal(-0x1.9ddcb295a7d64p-1,0x1.67fb3a2068a78p-1,0x1.da9cd4597fe0ap-4) want -0x1.cf4f6eb4fc5d8p-2 got 0x1.59da5512p-6 ulperr 8530909930192896.000 = 0x1.e4ed14p+52 + 0x1.fffa98p-2
src/math/special/fma.h:197: RN fmal(0x1.c00d16ed45b88p+0,0x1.c787eddda3664p+0,0x1.1e3e6f0cc1802p-5) want 0x1.931b8f379dcc3p+1 got -0x1.63fb63b8p-6 ulperr -7140470639558656.000 = -0x1.95e386p+52 + -0x1.ffff4ep-2
src/math/special/fma.h:198: RN fmal(0x1.19c2a2372c184p+0,-0x1.cb506961c19fp+0,0x1.db1abf3f7ba3ap-6) want -0x1.f21c0eab0bc18p+0 got 0x1.a29607ffffff8p-13 ulperr 8763735812341760.000 = 0x1.f22924p+52 + 0x1.fffffcp-2
src/math/special/fma.h:199: RN fmal(-0x1.3a263218ccd1cp+0,-0x1.e818d390df27cp+0,0x1.2a81ed71785f5p-5) want 0x1.3025ab0f63925p+1 got -0x1.bfdf0b9cp-6 ulperr -5412168283455488.000 = -0x1.33a56ap+52 + -0x1.ffff2p-2
src/math/special/fma.h:200: RN fmal(0x1.b0b041fbaca58p+0,-0x1.9d5f76d178e6p+0,0x1.0215c7bb84cf9p-6) want -0x1.5b52aec7ef4p+1 got 0x1.6be7a78p-7 ulperr 6135177709355008.000 = 0x1.5cbe96p+52 + 0x1.ffffa6p-2
src/math/special/fma.h:201: RN fmal(-0x1.377549d9a87f4p+0,-0x1.a13d4a03dd6d8p+0,0x1.f190388bc5cc6p-7) want 0x1.ff83bebbd6fe4p+0 got -0x1.e5a6a44p-9 ulperr -9015347881443328.000 = -0x1.003b4ap+53 + -0x1.ffffc4p-2
src/math/special/fma.h:202: RN fmal(0x1.6a726c0762ac8p-1,-0x1.d32f2d30e483cp+0,0x1.f953eb70fbde6p-7) want -0x1.46c61b3070332p+0 got 0x1.e556e47fffffep-11 ulperr 5752835425697792.000 = 0x1.4702c6p+52 + 0x1.fffffp-2
src/math/special/fma.h:203: RN fmal(0x1.94cf2509d40cp-1,0x1.721976af6dfbp+0,0x1.f51a456921c3ep-7) want 0x1.28880842acc6p+0 got -0x1.effe1ep-8 ulperr -5250719389057024.000 = -0x1.2a7806p+52 + -0x1.ffff84p-2
src/math/special/fma.h:204: RN fmal(0x1.b128eb0ad8728p-1,0x1.7682566a54268p+0,0x1.bd4122a074cafp-8) want 0x1.3e9469530e762p+0 got -0x1.6fe0c7cp-9 ulperr -5617154187591680.000 = -0x1.3f4c5ap+52 + -0x1.ffffd2p-2
src/math/special/fma.h:205: RN fmal(0x1.c4ae75976e35cp+0,-0x1.11c329dd1160cp+0,0x1.9993f5e13c9bdp-8) want -0x1.e27d925b07cf1p+0 got 0x1.198edf6p-9 ulperr 8497737213411328.000 = 0x1.e30a5ap+52 + 0x1.ffffdcp-2
src/math/special/fma.h:206: RN fmal(-0x1.85f81f88fa3c4p+0,-0x1.17648a494fa18p-1,0x1.37d305113b48p-10) want 0x1.aa367b7490e57p-1 got -0x1.7a59ecffffffep-12 ulperr -7501265072291840.000 = -0x1.aa65c6p+52 + -0x1.fffff4p-2
src/math/special/fma.h:207: RN fmal(-0x1.311f2b4319efcp+0,0x1.abbb5272e3d18p-1,0x1.35841b7bdbcfep-10) want -0x1.fd337f24b39ep-1 got 0x1.4cbc317ffffffp-11 ulperr 8963677814259712.000 = 0x1.fd86aep+52 + 0x1.ffffecp-2
src/math/special/fma.h:208: RN fmal(0x1.ab94369a9a0dp-1,0x1.9d1e0e0aa3bacp+0,0x1.0a63ca87cfa78p-11) want 0x1.592173ee296b6p+0 got -0x1.fd8043ffffff8p-13 ulperr -6072697209487360.000 = -0x1.59316p+52 + -0x1.fffffcp-2
src/math/special/fma.h:250: RZ fmal(0x1p+0,0x1p+0,-0x1p-1074) want 0x1.fffffffffffffp-1 got -0x1.fffffp-43 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p+0
src/math/special/fma.h:251: bad fp exception: RZ fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022)=0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:251: RZ fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.fffffffffffffp-1022 got 0x0p+0 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x0p+0
src/math/special/fma.h:252: bad fp exception: RZ fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022)=0x1.ffffffffffffep-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:252: RZ fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.ffffffffffffep-1022 got -0x0p+0 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p+0
src/math/special/fma.h:253: bad fp exception: RZ fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:253: RZ fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.fffffffffffffp-1022 got -0x0p+0 ulperr 9007198717870080.000 = 0x1.fffffep+52 + 0x0p+0
src/math/special/fma.h:254: bad fp exception: RZ fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.ffffffffffffep-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:254: RZ fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.ffffffffffffep-1022 got 0x0p+0 ulperr 9007198717870080.000 = 0x1.fffffcp+52 + 0x1p+0
src/math/special/fma.h:255: RZ fmal(0x1p-1074,-0x1p-1074,0x1p-1074) want 0x0p+0 got -0x0p+0 ulperr inf = inf + -0x1p+0
src/math/special/fma.h:256: RZ fmal(0x1p-1074,-0x1p-1074,-0x1p-1074) want -0x1p-1074 got -0x0p+0 ulperr 1.000 = 0x1p+0 + 0x0p+0
src/math/special/fma.h:257: RZ fmal(0x1.0000000000001p+0,0x1p+0,0x1p+53) want 0x1p+53 got 0x1.000008p+12 ulperr -4503599358935040.000 = -0x1.fffffcp+51 + -0x1p-1
src/math/special/fma.h:258: RZ fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p+53) want 0x1p+53 got 0x1.ffc02p+10 ulperr -4503599358935040.000 = -0x1.fffffcp+51 + -0x1p-1
src/math/special/fma.h:259: RZ fmal(0x1p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp+53) want 0x1.fffffffffffffp+53 got -0x1.ffffep+10 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:260: RZ fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep+53) want 0x1.ffffffffffffep+53 got 0x1.ffc02p+10 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:261: RZ fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p-52) want 0x1.0000000000001p+0 got -0x1.fffffp-42 ulperr -4503599627370496.000 = -0x1.fffffep+51 + -0x1p-1
src/math/special/fma.h:262: RZ fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp-53) want 0x1.0000000000001p+0 got -0x1.fffff8p-41 ulperr -4503599627370496.000 = -0x1.fffffep+51 + -0x1p-1
src/math/special/fma.h:263: RZ fmal(0x1.0000000000005p+0,0x1.ffffffffffffbp-1,0x1p-52) want 0x1.0000000000003p+0 got -0x1.8fffff8p-37 ulperr -4503599627370496.000 = -0x1.fffffep+51 + -0x1p-1
src/math/special/fma.h:264: RZ fmal(0x1.0000000000006p+0,0x1.ffffffffffffdp-1,0x1p-52) want 0x1.0000000000005p+0 got -0x1.1fffff8p-37 ulperr -4503599627370496.000 = -0x1.fffffep+51 + -0x1p-1
src/math/special/fma.h:283: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff4p+0 got 0x1.6800008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:284: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1p+0) want 0x1.ffffffffffff8p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:285: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffff6p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:286: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffff4p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:287: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffff6p+0 got 0x1.f800008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:288: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffff4p+0 got 0x1.f800008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:289: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffff6p+0 got 0x1.2000004p-36 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:290: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffff4p+0 got 0x1.2000004p-36 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:291: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.fffffffffffffp-1) want 0x1.ffffffffffff6p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:292: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffff4p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:293: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff2p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:294: RZ fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep-1) want 0x1.fffffffffffffp+0 got -0x1.fffffp-42 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:295: RZ fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffp-42 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:296: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.fffffffffffffp-1) want 0x1.fffffffffffffp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:297: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:298: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:299: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1p+0) want 0x1.fffffffffffffp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:300: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:301: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:302: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:303: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:304: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffffdp+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:305: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffbp+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:306: RZ fmal(0x1.5872449b765b9p+0,0x1.c9acf91f8de2bp+0,0x1.9265607e4d168p+0) want 0x1.fd190c77c2a67p+1 got -0x1.b3fc37becffffp-4 ulperr -9195828849672192.000 = -0x1.055c74p+53 + -0x1.fffc98p-2
src/math/special/fma.h:307: RZ fmal(0x1.81d010b146d0ep+0,0x1.2d3c680dc9071p+0,0x1.a80b69538754cp+0) want 0x1.b7040b44973a6p+1 got 0x1.4d0cb20197p+1 ulperr -1864177136173056.000 = -0x1.a7dd62p+50 + -0x1.0029a2p-1
src/math/special/fma.h:308: RZ fmal(0x1.6a44f2252b6a2p+0,0x1.da452a378b832p+0,0x1.1fe2ce329104p+0) want 0x1.df842b6f48b12p+1 got 0x1.12e95c1ba4p+0 ulperr -6017591705337856.000 = -0x1.560f7ap+52 + -0x1.00112ep-1
src/math/special/fma.h:309: RZ fmal(0x1.096b1d26463eep+0,0x1.d846d3e34333p+0,0x1.721e3480922b8p+0) want 0x1.ade2909c0269fp+1 got -0x1.a139d9b2bffffp-1 ulperr -9397595675820032.000 = -0x1.0b188p+53 + -0x1.ffe5ecp-2
src/math/special/fma.h:310: RZ fmal(0x1.99bd3434c454bp+0,0x1.03cb8e4115bdep+0,0x1.109f107188b08p+0) want 0x1.5837a47d37faep+1 got 0x1.cfdec0c00ap+0 ulperr -1975290892910592.000 = -0x1.c1210ep+50 + -0x1.001cfep-1
src/math/special/fma.h:311: RZ fmal(0x1.ba930a0a78ed2p+0,0x1.8c24e8d67f636p+0,0x1.ac49dbfbf8affp+0) want 0x1.164947ae6a5d9p+2 got -0x1.33e3b04ecffffp-2 ulperr -5234191281160192.000 = -0x1.29878p+52 + -0x1.fffb3p-2
src/math/special/fma.h:312: RZ fmal(0x1.be224ad773191p+0,0x1.d96b77169731fp+0,0x1.662cfb75d8edep+0) want 0x1.27cd67e720f78p+2 got 0x1.e4711611c78p+1 ulperr -942615600037888.000 = -0x1.aca6e4p+49 + -0x1.001e48p-1
src/math/special/fma.h:313: RZ fmal(0x1.59e7a1b0bdb3cp+0,0x1.2decba4d46421p+0,0x1.88f4062e96df5p+0) want 0x1.90749e4794f79p+1 got -0x1.b3c84a9a87fffp-1 ulperr -8961479327875072.000 = -0x1.fd66aep+52 + -0x1.ffe4c4p-2
src/math/special/fma.h:314: RZ fmal(0x1.22edf4b4da9a7p+0,0x1.dfa8d65f506cdp+0,0x1.2799208da2fbap+0) want 0x1.a45a1e99ed7a8p+1 got 0x1.a0bdfb8976p-1 ulperr -5562059420860416.000 = -0x1.3c2a9cp+52 + -0x1.000d06p-1
src/math/special/fma.h:315: RZ fmal(0x1.ad5b991a2a279p+0,0x1.f02fd26706024p+0,0x1.831cdd5c8797cp+0) want 0x1.30d3a2ac90a6p+2 got 0x1.c7c15e1c82p+1 ulperr -1353701616779264.000 = -0x1.33cbccp+50 + -0x1.001c7cp-1
src/math/special/fma.h:316: RZ fmal(0x1.531f9620e764ap+0,0x1.cad61b54d4425p+0,0x1.df817cae8a9afp+0) want 0x1.0fd4e7f8671dcp+2 got 0x1.8e74e26059p+1 ulperr -1277252004216832.000 = -0x1.2269d8p+50 + -0x1.0018e8p-1
src/math/special/fma.h:317: RZ fmal(0x1.629a5ad79494fp+0,0x1.049e58693f4c4p+0,0x1.45b0109e4d00cp+0) want 0x1.5758154e14965p+1 got -0x1.01173c9c1ffffp-3 ulperr -6322846842224640.000 = -0x1.676986p+52 + -0x1.fffbfcp-2
src/math/special/fma.h:318: RZ fmal(0x1.2f52b53f9240ap+0,0x1.1d5c686dbb0dap+0,0x1.6da3e392a4fd4p+0) want 0x1.5fe03a6795912p+1 got 0x1.5bdb7d9084p+0 ulperr -3130480060792832.000 = -0x1.63e4f4p+51 + -0x1.0015bep-1
src/math/special/fma.h:319: RZ fmal(0x1.058667552b49ep+0,0x1.23307bacc1c42p+0,0x1.5b059b47cd8f5p+0) want 0x1.423f752486d13p+1 got -0x1.4bfb042743fffp+0 ulperr -8589175993401344.000 = -0x1.e83cf4p+52 + -0x1.ffd68p-2
src/math/special/fma.h:320: RZ fmal(0x1.a717d95337ed8p+0,0x1.2b1c37846aaadp+0,0x1.be65672f885b1p+0) want 0x1.d65e72303c075p+1 got -0x1.7e0573ec03fffp+1 ulperr -14995406941323264.000 = -0x1.aa31fp+53 + -0x1.ffa07ep-2
src/math/special/fma.h:321: RZ fmal(0x1.deb79287b3d32p+0,0x1.62776b829babap+0,0x1.67daf18bd2eb1p+0) want 0x1.ff5a0d45c69d6p+1 got 0x1.ad881652ap-3 ulperr -8523519902089216.000 = -0x1.e48188p+52 + -0x1.00035cp-1
src/math/special/fma.h:322: RZ fmal(0x1.fbf12d3a6de91p+0,0x1.879fe6124f11p+0,0x1.9f3f1247a8641p+0) want 0x1.2a126c6980018p+2 got 0x1.45e3d61a84p+2 ulperr 489379747332096.000 = 0x1.bd169ap+48 + -0x1.0028bcp-1
src/math/special/fma.h:323: RZ fmal(0x1.c589628460e01p+0,0x1.e1bec1c797533p+0,0x1.349f30cdb84bbp+0) want 0x1.2286118b6f6e5p+2 got -0x1.8e9d95e0667ffp+1 ulperr -8617206560587776.000 = -0x1.e9d4dap+52 + -0x1.ffce2cp-2
src/math/special/fma.h:324: RZ fmal(0x1.46fd6c2c924ebp+0,0x1.65e2f02e730a1p+0,0x1.37739d2751098p+0) want 0x1.804a71c1f1272p+1 got 0x1.855d7947cbp+0 ulperr -3335623268106240.000 = -0x1.7b3768p+51 + -0x1.001856p-1
src/math/special/fma.h:325: RZ fmal(0x1.f99e595ae11fdp+0,0x1.bd33d9a1d81bp+0,0x1.932a2a2e244c1p+0) want 0x1.409e34f8f2f89p+2 got -0x1.7a49668943fffp+2 ulperr -12295260860317696.000 = -0x1.5d73cap+53 + -0x1.ffa16ep-2
src/math/special/fma.h:326: RZ fmal(0x1.59ea1e56bfe55p+0,0x1.6f46b7d412a44p+0,0x1.80f2bc9a32cc3p+0) want 0x1.b89c7640e32ffp+1 got -0x1.ca180bfb5ffffp-3 ulperr -8254993178034176.000 = -0x1.d53df4p+52 + -0x1.fff8d8p-2
src/math/special/fma.h:327: RZ fmal(0x1.61490fcb44129p+0,0x1.0038ec4fc35c2p+0,0x1.df7436ed7a7b7p+0) want 0x1.a085ea68d05cfp+1 got -0x1.5ed2c690f6fffp+1 ulperr -13499301254660096.000 = -0x1.7fac56p+53 + -0x1.ffa84cp-2
src/math/special/fma.h:328: RZ fmal(0x1.d41b98788502bp+0,0x1.1a7b77843aca6p+0,0x1.05be891837d36p+0) want 0x1.8523596ceced9p+1 got -0x1.48c8fc403bfffp-1 ulperr -8291801584631808.000 = -0x1.d75596p+52 + -0x1.ffeb74p-2
src/math/special/fma.h:329: RZ fmal(0x1.3153cf6f69af9p+0,0x1.aaa947e38e57ap+0,0x1.8519f9b590645p+0) want 0x1.c0fcab7b46368p+1 got 0x1.25f4f4bd5p-3 ulperr -7575453653008384.000 = -0x1.ae9d5ap+52 + -0x1.00024cp-1
src/math/special/fma.h:330: RZ fmal(0x1.c25a1f73581aap+0,0x1.0a51ffca372ap+0,0x1.0c77e3ebac5f3p+0) want 0x1.707ce48c7d72dp+1 got -0x1.3261c9a0dffffp+1 ulperr -11872435288670208.000 = -0x1.516f54p+53 + -0x1.ffb368p-2
src/math/special/fma.h:331: RZ fmal(0x1.829c2cde44b7p+0,0x1.f692e86d8cb36p+0,0x1.455e72d264bfp+0) want 0x1.0f16a3b8b3f97p+2 got -0x1.684386465ffffp+0 ulperr -6353494655107072.000 = -0x1.692782p+52 + -0x1.ffe97cp-2
src/math/special/fma.h:332: RZ fmal(0x1.94729588dcc69p+0,0x1.c3bb794c6edf8p+0,0x1.9da4e94d262d2p+0) want 0x1.19d4bd84d9fd2p+2 got 0x1.e1b9a2757p-1 ulperr -3898698849320960.000 = -0x1.bb3b1p+51 + -0x1.000786p-1
src/math/special/fma.h:333: RZ fmal(0x1.e6a5e7e39c3d5p+0,0x1.1b69af2bdd978p+0,0x1.e7ef1eafa119cp+0) want 0x1.00ac5b44c9f31p+2 got -0x1.6777d5d393fffp+1 ulperr -7677358731427840.000 = -0x1.b46844p+52 + -0x1.ffd312p-2
src/math/special/fma.h:334: bad fp exception: RZ fmal(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022)=0x1.b594d0e4368efp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:334: RZ fmal(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022) want 0x1.b594d0e4368efp-1022 got -0x1.9dedc9560fffep-1023 ulperr -11338968138252288.000 = -0x1.4245d8p+53 + -0x1.ffcc42p-2
src/math/special/fma.h:335: RZ fmal(0x1.022db53c98d14p-1022,0x1.21157eef74848p-2,0x1.2f880432b1bc1p-1022) want 0x1.786ad60a02b3dp-1022 got -0x1.150255ac97fffp-1022 ulperr -11495198647386112.000 = -0x1.46b692p+53 + -0x1.ffbacp-2
src/math/special/fma.h:336: bad fp exception: RZ fmal(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022)=0x1.cbb085199a3f5p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:336: RZ fmal(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022) want 0x1.cbb085199a3f5p-1022 got -0x1.6ed115da2f7fep-1023 ulperr -11313497908445184.000 = -0x1.418c86p+53 + -0x1.ffd226p-2
src/math/special/fma.h:337: RZ fmal(0x1.adbc3a9d816dep-1022,0x1.e039d4431e3cdp-2,0x1.93ceef6fe18a2p-1022) want 0x1.2eabb7dc0e2fp-1021 got 0x1.ef7b6794e3p-1023 ulperr -3145487213395968.000 = -0x1.6599b8p+51 + -0x1.000f7cp-1
src/math/special/fma.h:338: RZ fmal(0x1.645aa5c2df3afp-1022,0x1.649edfcad854fp-2,0x1.8b43e0bbaeb01p-1022) want 0x1.03af571d2b504p-1021 got 0x1.0ce86163c02p-1021 ulperr 162249436037120.000 = 0x1.272148p+47 + -0x1.00219ep-1
src/math/special/fma.h:339: bad fp exception: RZ fmal(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022)=0x1.ad9ce7fcefa3fp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:339: RZ fmal(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022) want 0x1.ad9ce7fcefa3fp-1022 got -0x1.12bc4931e5ff8p-1025 ulperr -8161979755659264.000 = -0x1.cff46ep+52 + -0x1.fff76ap-2
src/math/special/fma.h:340: RZ fmal(0x1.8ee3feb00c3e7p-1022,0x1.53bd9353313bcp-2,0x1.5501b57dc3b6fp-1022) want 0x1.d9598906f0bb3p-1022 got -0x1.4660b83f56fffp-1022 ulperr -14068955652030464.000 = -0x1.8fdd1ep+53 + -0x1.ffae68p-2
src/math/special/fma.h:341: RZ fmal(0x1.161225cfa61e2p-1022,0x1.b6dd69a0af5bp-2,0x1.924ffc3ead5c3p-1022) want 0x1.04be6fc25367bp-1021 got -0x1.f3ab56daa7fffp-1022 ulperr -8982192344530944.000 = -0x1.fe9418p+52 + -0x1.ffc18ap-2
src/math/special/fma.h:342: bad fp exception: RZ fmal(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022)=0x1.70b6c3169f043p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:342: RZ fmal(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022) want 0x1.70b6c3169f043p-1022 got -0x1.a779baefbe7fep-1023 ulperr -10211413595258880.000 = -0x1.2239cep+53 + -0x1.ffcb1p-2
src/math/special/fma.h:343: RZ fmal(0x1.ce0e2ea55040ep-1022,0x1.ce5a55fa3828dp-2,0x1.f2f444d50ce59p-1022) want 0x1.61ca36f5a8a79p-1021 got -0x1.173f0cea127ffp-1022 ulperr -8680213730820096.000 = -0x1.ed69bap+52 + -0x1.ffdd18p-2
src/math/special/fma.h:344: bad fp exception: RZ fmal(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022)=0x1.1440cf1c105ebp-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:344: RZ fmal(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022) want 0x1.1440cf1c105ebp-1021 got -0x1.f88fda5ffffp-1030 ulperr -4877233327964160.000 = -0x1.153d14p+52 + -0x1.ffffcp-2
src/math/special/fma.h:345: bad fp exception: RZ fmal(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022)=0x1.1186e1f77012dp-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:345: RZ fmal(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022) want 0x1.1186e1f77012dp-1021 got -0x1.2ffba526fbff8p-1025 ulperr -5146168610783232.000 = -0x1.24869ap+52 + -0x1.fffb4p-2
src/math/special/fma.h:346: bad fp exception: RZ fmal(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022)=0x1.8d86310bad175p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:346: RZ fmal(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022) want 0x1.8d86310bad175p-1022 got -0x1.1b755c367f7fep-1023 ulperr -9486645380251648.000 = -0x1.0da06cp+53 + -0x1.ffdc92p-2
src/math/special/fma.h:347: RZ fmal(0x1.fb3391a4b1d23p-1022,0x1.4d8705b057caep-2,0x1.d026cb6dae73bp-1022) want 0x1.3aad18b424c67p-1021 got -0x1.0a1784c7c6bffp-1021 ulperr -10216978799132672.000 = -0x1.22624cp+53 + -0x1.ffbd7ap-2
src/math/special/fma.h:348: bad fp exception: RZ fmal(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022)=0x1.c0048fd33a417p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:348: RZ fmal(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022) want 0x1.c0048fd33a417p-1022 got -0x1.d026e457f0ffcp-1024 ulperr -9922974329077760.000 = -0x1.1a0722p+53 + -0x1.ffe2fep-2
src/math/special/fma.h:349: RZ fmal(0x1.aa9eff070281cp-1022,0x1.fab05661b48ebp-2,0x1.cbe2af6c69c6ep-1022) want 0x1.4f7ddbe122764p-1021 got 0x1.9e529858dap-1023 ulperr -4079820841418752.000 = -0x1.cfd268p+51 + -0x1.000cf2p-1
src/math/special/fma.h:350: bad fp exception: RZ fmal(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022)=0x1.e0e762ee2e7c5p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:350: RZ fmal(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022) want 0x1.e0e762ee2e7c5p-1022 got -0x1.e2fe0f96ebffep-1023 ulperr -12708595627982848.000 = -0x1.693332p+53 + -0x1.ffc3ap-2
src/math/special/fma.h:351: RZ fmal(0x1.4dab43918a9a8p-1022,0x1.ed667442b4751p-2,0x1.3f25f82e02e3ep-1022) want 0x1.dfec0ee732dcap-1022 got 0x1.6a41c4d18ap-1022 ulperr -2069987942465536.000 = -0x1.d6a926p+50 + -0x1.002d48p-1
src/math/special/fma.h:352: RZ fmal(0x1.7943735951931p-1022,0x1.fa6a357c5c9ddp-2,0x1.0bed44b0b71b4p-1022) want 0x1.c6803a6059abep-1022 got 0x1.0e970cce134p-1022 ulperr -3235393763803136.000 = -0x1.6fd258p+51 + -0x1.0021d2p-1
src/math/special/fma.h:353: bad fp exception: RZ fmal(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022)=0x1.8640492c45959p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:353: RZ fmal(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022) want 0x1.8640492c45959p-1022 got -0x1.3271a1b37ffep-1027 ulperr -7033839486500864.000 = -0x1.8fd3d4p+52 + -0x1.fffd9cp-2
src/math/special/fma.h:354: RZ fmal(0x1.f52172c56bdf5p-1022,0x1.672b2de422734p-2,0x1.7bc5d708e5a34p-1022) want 0x1.15c5b95145cc6p-1021 got 0x1.3cf4f71d188p-1021 ulperr 689341647028224.000 = 0x1.3979eep+49 + -0x1.00279ep-1
src/math/special/fma.h:355: bad fp exception: RZ fmal(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022)=0x1.e7fa0dd76fbefp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:355: RZ fmal(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022) want 0x1.e7fa0dd76fbefp-1022 got -0x1.60a5d541afffcp-1024 ulperr -10135538703007744.000 = -0x1.2011bep+53 + -0x1.ffe9f6p-2
src/math/special/fma.h:356: bad fp exception: RZ fmal(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022)=0x1.b63a7f56fce1fp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:356: RZ fmal(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022) want 0x1.b63a7f56fce1fp-1022 got -0x1.497a9bc51fffcp-1024 ulperr -9158460486713344.000 = -0x1.044c9p+53 + -0x1.ffeb68p-2
src/math/special/fma.h:357: RZ fmal(0x1.f73d5f4e81fd8p-1022,0x1.7ccff2642124ap-2,0x1.e7d836a0c8308p-1022) want 0x1.517f1763126d3p-1021 got -0x1.06939f3371fffp-1021 ulperr -10556596895612928.000 = -0x1.2c0958p+53 + -0x1.ffbe5cp-2
src/math/special/fma.h:358: RZ fmal(0x1.b4328925969fbp-1022,0x1.8fa02832a22d5p-2,0x1.2084598e2f8c6p-1022) want 0x1.cabf43838dc51p-1022 got -0x1.7c61d65f0a3ffp-1022 ulperr -14762118276448256.000 = -0x1.a3908ap+53 + -0x1.ffa0e8p-2
src/math/special/fma.h:359: RZ fmal(0x1.66ee60a92676fp-1022,0x1.eddd2e7681ce4p-2,0x1.b81d57daeb3a7p-1022) want 0x1.329c918ffb682p-1021 got 0x1.cd379885b8p-1025 ulperr -4886854591578112.000 = -0x1.15c916p+52 + -0x1.00039ap-1
src/math/special/fma.h:360: RZ fmal(0x1.ff2737585895dp-1022,0x1.fb4bf3828ae4ap-2,0x1.4a866847740fp-1022) want 0x1.23e07e4dbbeaap-1021 got 0x1.46c53f7571p-1023 ulperr -3697601232764928.000 = -0x1.a45e5ap+51 + -0x1.000a36p-1
src/math/special/fma.h:361: RZ fmal(0x1.5e2008d269a86p-1022,0x1.507bbbe4d78eep-2,0x1.6220c6f83f636p-1022) want 0x1.d52d9874f1c74p-1022 got 0x1.eda0503c4ap-1023 ulperr -3911886277967872.000 = -0x1.bcbadep+51 + -0x1.001edap-1
src/math/special/fma.h:362: bad fp exception: RZ fmal(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022)=0x1.9864925e2fb0fp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:362: RZ fmal(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022) want 0x1.9864925e2fb0fp-1022 got -0x1.53ae580e8bff8p-1025 ulperr -7931489261977600.000 = -0x1.c2da5ap+52 + -0x1.fff562p-2
src/math/special/fma.h:363: RZ fmal(0x1.7b353b81e793dp-1022,0x1.82b426f874c6dp-2,0x1.d92b19d21fd5cp-1022) want 0x1.342fb0c544a78p-1021 got 0x1.2af4c8aebe4p-1022 ulperr -2792024021401600.000 = -0x1.3d6a96p+51 + -0x1.0012bp-1
src/math/special/fma.h:364: RZ fmal(0x1.5be667823370ap-1022,0x1.a8a99b163869bp-2,0x1.95456b68dc3bcp-1022) want 0x1.12c638de03c7p-1021 got 0x1.49af7fc787p-1023 ulperr -3383908095754240.000 = -0x1.80b4aep+51 + -0x1.000a4ep-1
src/math/special/fma.h:365: RZ fmal(0x1.17b0fc6c850e5p-1022,0x1.d1d0a4853c315p-2,0x1.36b79f7c0c24p-1022) want 0x1.b5f2baff5635cp-1022 got 0x1.6a19304724p-1026 ulperr -7306333686595584.000 = -0x1.9f5124p+52 + -0x1.0002d4p-1
src/math/special/fma.h:366: RZ fmal(0x1.bd97819bacfd8p-1022,0x1.2c25f267ba4eep-2,0x1.804b5204a3f3ap-1022) want 0x1.01739c190fd96p-1021 got 0x1.b9e166e6b4p-1022 ulperr -642314640818176.000 = -0x1.241742p+49 + -0x1.001b9ep-1
src/math/special/fma.h:367: RZ fmal(0x1.596577053873dp-1022,0x1.3562ab2d29949p-2,0x1.b3f1ee75db6e7p-1022) want 0x1.0e268a498009ap-1021 got 0x1.e8136bc1594p-1022 ulperr -459377991483392.000 = -0x1.a1cd44p+48 + -0x1.001e82p-1
src/math/special/fma.h:368: RZ fmal(0x1.3c7a68cf0f7b3p-1022,0x1.9a55c15b167bdp-2,0x1.7635b7b163c07p-1022) want 0x1.f5073b93b7b8p-1022 got 0x1.75f9a972138p-1023 ulperr -5524660993130496.000 = -0x1.3a0a64p+52 + -0x1.00176p-1
src/math/special/fma.h:369: RZ fmal(0x1.5825164bc4068p-1022,0x1.dcbb6e5ff3245p-2,0x1.52fc3be0e84dap-1022) want 0x1.f334771c2dcfap-1022 got 0x1.2b86ba6b02p-1022 ulperr -3512783958179840.000 = -0x1.8f5b76p+51 + -0x1.00257p-1
src/math/special/fma.h:370: RZ fmal(0x1.139ea77b760ecp+1022,0x1.9b25f2fd017eap+2,-0x1.bc16788922b6fp+1023) want 0x1.b93aac527380ep+1023 got 0x1.c3ec4f2eep+1022 ulperr -3787028357447680.000 = -0x1.ae8906p+51 + -0x1.001c3ep-1
src/math/special/fma.h:371: RZ fmal(0x1.0e6f9c1657d7cp+1022,0x1.4d5c6b55ab5f1p+2,-0x1.e027dd5742e2cp+1023) want 0x1.c0538372b4bbep+1022 got 0x1.54dede6dep+1021 ulperr -4888708943708160.000 = -0x1.15e412p+52 + -0x1.00154ep-1
src/math/special/fma.h:372: RZ fmal(0x1.1182524fa411cp+1022,0x1.a3dba56842d19p+2,-0x1.c1ad59474d71fp+1023) want 0x1.bf78969300a76p+1023 got 0x1.8651491efp+1022 ulperr -4438724683235328.000 = -0x1.f89fe2p+51 + -0x1.001866p-1
src/math/special/fma.h:373: RZ fmal(0x1.1cbf4fb8ec82p+1022,0x1.5e32019a84fbbp+2,-0x1.985af08f32edep+1023) want 0x1.72af6bbad4a28p+1023 got 0x1.a68c1c1ecp+1023 ulperr 912367084896256.000 = 0x1.9ee582p+49 + -0x1.0034d2p-1
src/math/special/fma.h:374: RZ fmal(0x1.311e25c6db346p+1022,0x1.4e30db6c4b51dp+2,-0x1.7681f7a9786a7p+1023) want 0x1.a61d29434fc13p+1023 got -0x1.791d1988fffffp+1017 ulperr -7529566222417920.000 = -0x1.ac019ap+52 + -0x1.fffe86p-2
src/math/special/fma.h:375: RZ fmal(0x1.1201cf577052fp+1022,0x1.59730b2db7a16p+2,-0x1.56f1a64a078d5p+1023) want 0x1.8c8d801df34d9p+1023 got -0x1.3048609fd7fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ffd9f6p-2
src/math/special/fma.h:376: RZ fmal(0x1.3e52335b76e81p+1022,0x1.4dbd56f857479p+2,-0x1.509340c11bd2ep+1023) want 0x1.ed6576837f653p+1023 got -0x1.e498d5441bfffp+1022 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ffc36cp-2
src/math/special/fma.h:377: RZ fmal(0x1.18566b4f843cbp+1022,0x1.444fba10eaf29p+2,-0x1.f927beae57f0ap+1023) want 0x1.9a433b9796559p+1022 got 0x1.a048d2820cp+1022 ulperr 105937222238208.000 = 0x1.8165bap+46 + -0x1.ff6812p-2
src/math/special/fma.h:378: RZ fmal(0x1.3fbe544fe1be8p+1022,0x1.2d2a5fda03639p+2,-0x1.007407dbfd03cp+1023) want 0x1.efdb644b613e5p+1023 got -0x1.e14223655ffffp+1022 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ffc3d8p-2
src/math/special/fma.h:379: RZ fmal(0x1.263a0d3bc2e4p+1022,0x1.4cc198adbc651p+2,-0x1.734b1c1f7fdb8p+1023) want 0x1.899878afc0fa2p+1023 got 0x1.a13620448p+1023 ulperr 415454199808000.000 = 0x1.79da78p+48 + -0x1.003426p-1
src/math/special/fma.h:380: RZ fmal(0x1.5bf4aec8efc8ep+1022,0x1.555f0341516c9p+2,-0x1.c706408acd14cp+1023) want 0x1.d8f5e18b868bcp+1023 got 0x1.3e5679fdf8p+1022 ulperr -5520279589617664.000 = -0x1.39caa2p+52 + -0x1.0013e6p-1
src/math/special/fma.h:381: RZ fmal(0x1.1e57f1af78279p+1022,0x1.34bc0c7f082b3p+2,-0x1.497b92c1365edp+1023) want 0x1.692cb7ec68a93p+1023 got -0x1.c0a1f29b27fffp+1021 ulperr -8326959113175040.000 = -0x1.d95532p+52 + -0x1.ffe3f6p-2
src/math/special/fma.h:382: RZ fmal(0x1.1d9824cd73511p+1022,0x1.1d557ddfe47ffp+2,-0x1.556cdb1d20a72p+1023) want 0x1.2736a6b6e35f2p+1023 got 0x1.bc6f9c9778p+1021 ulperr -3238800209739776.000 = -0x1.70357cp+51 + -0x1.000de4p-1
src/math/special/fma.h:383: RZ fmal(0x1.1ff85a24aff31p+1022,0x1.39ab374b2680dp+2,-0x1.35e6b07b651b8p+1023) want 0x1.8bc7ce208708p+1023 got 0x1.84b319bafap+1023 ulperr -124568110891008.000 = -0x1.c52d16p+46 + -0x1.003096p-1
src/math/special/fma.h:384: RZ fmal(0x1.0449b3965227ep+1022,0x1.4430d4441f9f2p+2,-0x1.a6966c96307ep+1023) want 0x1.d94eda8c81771p+1022 got -0x1.992ed6b71ffffp+1021 ulperr -11925733685329920.000 = -0x1.52f32p+53 + -0x1.ffccdap-2
src/math/special/fma.h:385: RZ fmal(0x1.3c91fa00fd0c7p+1022,0x1.1b6661c0b0303p+2,-0x1.f1f2846b64483p+1023) want 0x1.95eae0d2644d3p+1022 got 0x1.9985d8eaap+1019 ulperr -6240425346072576.000 = -0x1.62ba22p+52 + -0x1.ff0cccp-2
src/math/special/fma.h:386: RZ fmal(0x1.0979b36d46534p+1022,0x1.12fa205f41f7fp+2,-0x1.a83ecf4544a63p+1023) want 0x1.2420f34e2aa3cp+1022 got -0x1.335a0fe67ffffp+1019 ulperr -5815056080044032.000 = -0x1.4a8c32p+52 + -0x1.007b32p-1
src/math/special/fma.h:387: RZ fmal(0x1.4c89df582a599p+1022,0x1.55f3dc473ea8fp+2,-0x1.e35037292ddfp+1023) want 0x1.95109fdbc3771p+1023 got -0x1.afa3b29623fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ffca0cp-2
src/math/special/fma.h:388: RZ fmal(0x1.35ee0a669c4fbp+1022,0x1.2263cb63f386ap+2,-0x1.449218ae35ac7p+1023) want 0x1.7a8ed977d817ap+1023 got 0x1.47da9ddfb8p+1022 ulperr -3775828693352448.000 = -0x1.ad4312p+51 + -0x1.00147ep-1
src/math/special/fma.h:389: RZ fmal(0x1.117cc860f61bcp+1022,0x1.440985b25d994p+2,-0x1.d7a7d82000449p+1023) want 0x1.b960b7088e74fp+1022 got 0x1.ddfba372cp+1022 ulperr 643964914892800.000 = 0x1.24d762p+49 + -0x1.ff777ep-2
src/math/special/fma.h:390: RZ fmal(0x1.1e78a37be320fp+1022,0x1.0db0fce62287bp+2,-0x1.376337da5eb53p+1023) want 0x1.24326b9956dfbp+1023 got -0x1.d2881b3595fffp+1023 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ff8b5ep-2
src/math/special/fma.h:391: RZ fmal(0x1.0c79b5c8331c2p+1022,0x1.0aba6ea746b5p+2,-0x1.c86f1fcaf0741p+1023) want 0x1.9c135bb2cff84p+1021 got -0x1.cc298babfffffp+1019 ulperr -9273125376098304.000 = -0x1.078edcp+53 + -0x1.00f19ep-1
src/math/special/fma.h:392: RZ fmal(0x1.556c4c072f272p+1022,0x1.347758d7d4eb5p+2,-0x1.c6fe4f24b248dp+1023) want 0x1.6fcc9f756df6dp+1023 got -0x1.f6f4c76597fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ffc122p-2
src/math/special/fma.h:393: RZ fmal(-0x1.e8349b891b2fp-1,0x1.4a6dec9b72578p-1,0x1.3b6151ce809ddp-1) want 0x1.3a62fe330b355p-11 got -0x1.d97120fffffffp-11 ulperr -13859626462216192.000 = -0x1.89ea0cp+53 + -0x1.ff89a4p-2
src/math/special/fma.h:394: RZ fmal(0x1.2996632ac7d74p-1,-0x1.bb3c58b654d94p-1,0x1.01a6660e64a31p-1) want 0x1.ed045bb956a8ep-15 got -0x1.070d61fffffffp-15 ulperr -13300911346548736.000 = -0x1.7a08dcp+53 + -0x1.eabe3cp-2
src/math/special/fma.h:395: RZ fmal(-0x1.c602e894c1df8p-1,0x1.a1c980e7d3f94p-1,0x1.7271244b43386p-1) want -0x1.ba251fe026e5bp-15 got -0x1.af2b6cp-15 ulperr 193081294979072.000 = 0x1.5f367ap+47 + 0x1.fa6bcap-2
src/math/special/fma.h:396: RZ fmal(-0x1.c84baf47e85cp-1,0x1.770b5149ef2ep-1,0x1.4d80f139320bap-1) want -0x1.79277433b9e23p-10 got 0x1.d4b6effffffffp-11 ulperr 10757822555881472.000 = 0x1.31c174p+53 + 0x1.ffc56ap-2
src/math/special/fma.h:397: RZ fmal(-0x1.36e667dcf9c6p-1,0x1.2591f82556b88p-1,0x1.2452a0f795f95p-1) want 0x1.c83c8e63c159fp-3 got -0x1.221ccbfffffffp-12 ulperr -8036166204915712.000 = -0x1.c8cd9ap+52 + -0x1.ffffdcp-2
src/math/special/fma.h:398: RZ fmal(0x1.88b2cede61e4cp-1,-0x1.71dcab5ad9e9p-3,0x1.32b27fea2ae97p-3) want 0x1.70461909b25e2p-7 got -0x1.affe57fffffffp-17 ulperr -6486162973655040.000 = -0x1.70b216p+52 + -0x1.ffffe6p-2
src/math/special/fma.h:399: RZ fmal(0x1.8d1e44002c98p-3,-0x1.af9fdfb347834p-1,0x1.e280942fb4146p-4) want -0x1.761ac23896dfdp-5 got 0x1.0bec47fffffffp-14 ulperr 6590522089013248.000 = 0x1.76a0b6p+52 + 0x1.ffffdep-2
src/math/special/fma.h:400: RZ fmal(0x1.236e8cb9492c8p-1,-0x1.d37443a57f1c4p-1,0x1.ca10df801aabcp-4) want -0x1.a1a2cdf0138f9p-2 got 0x1.f090cab6fffffp-5 ulperr 8439088361242624.000 = 0x1.dfb4e4p+52 + 0x1.fff07cp-2
src/math/special/fma.h:401: RZ fmal(-0x1.6ad943e610fb8p-1,-0x1.cef92a7bb18bcp-1,0x1.f28587d8fb0ep-4) want 0x1.866b5204b9aecp-1 got -0x1.8c9eb9a6fffffp-5 ulperr -7304415446827008.000 = -0x1.9f353ap+52 + -0x1.fff9cep-2
src/math/special/fma.h:402: RZ fmal(-0x1.60a8569a5d894p-1,-0x1.ca07e29dd171cp-1,0x1.b6c475ace09ecp-4) want 0x1.72549291e2f7ap-1 got -0x1.b6fd181e7ffffp-5 ulperr -6997593720619008.000 = -0x1.8dc462p+52 + -0x1.fff924p-2
src/math/special/fma.h:403: RZ fmal(0x1.d1962720d678cp-1,-0x1.4548ee45c4084p-1,0x1.f416ab193d75cp-4) want -0x1.d2929879dc853p-2 got 0x1.fc38e6f3fffffp-8 ulperr 8347731722502144.000 = 0x1.da837ap+52 + 0x1.fffe04p-2
src/math/special/fma.h:404: RZ fmal(-0x1.9ddcb295a7d64p-1,0x1.67fb3a2068a78p-1,0x1.da9cd4597fe0ap-4) want -0x1.cf4f6eb4fc5d8p-2 got 0x1.59da5511fffffp-6 ulperr 8530909930192896.000 = 0x1.e4ed12p+52 + 0x1.fffa98p-2
src/math/special/fma.h:405: RZ fmal(0x1.c00d16ed45b88p+0,0x1.c787eddda3664p+0,0x1.1e3e6f0cc1802p-5) want 0x1.931b8f379dcc3p+1 got -0x1.63fb63b7fffffp-6 ulperr -7140470102687744.000 = -0x1.95e382p+52 + -0x1.ffff4ep-2
src/math/special/fma.h:406: RZ fmal(0x1.19c2a2372c184p+0,-0x1.cb506961c19fp+0,0x1.db1abf3f7ba3ap-6) want -0x1.f21c0eab0bc18p+0 got 0x1.a29607ffffff8p-13 ulperr 8763735275470848.000 = 0x1.f2292p+52 + 0x1.fffffcp-2
src/math/special/fma.h:407: RZ fmal(-0x1.3a263218ccd1cp+0,-0x1.e818d390df27cp+0,0x1.2a81ed71785f5p-5) want 0x1.3025ab0f63925p+1 got -0x1.bfdf0b9bfffffp-6 ulperr -5412167746584576.000 = -0x1.33a566p+52 + -0x1.ffff2p-2
src/math/special/fma.h:408: RZ fmal(0x1.b0b041fbaca58p+0,-0x1.9d5f76d178e6p+0,0x1.0215c7bb84cf9p-6) want -0x1.5b52aec7ef4p+1 got 0x1.6be7a77ffffffp-7 ulperr 6135177709355008.000 = 0x1.5cbe94p+52 + 0x1.ffffa6p-2
src/math/special/fma.h:409: RZ fmal(-0x1.377549d9a87f4p+0,-0x1.a13d4a03dd6d8p+0,0x1.f190388bc5cc6p-7) want 0x1.ff83bebbd6fe4p+0 got -0x1.e5a6a43ffffffp-9 ulperr -9015346807701504.000 = -0x1.003b46p+53 + -0x1.ffffc4p-2
src/math/special/fma.h:410: RZ fmal(0x1.6a726c0762ac8p-1,-0x1.d32f2d30e483cp+0,0x1.f953eb70fbde6p-7) want -0x1.46c61b3070332p+0 got 0x1.e556e47fffffep-11 ulperr 5752835425697792.000 = 0x1.4702c4p+52 + 0x1.fffffp-2
src/math/special/fma.h:411: RZ fmal(0x1.94cf2509d40cp-1,0x1.721976af6dfbp+0,0x1.f51a456921c3ep-7) want 0x1.28880842acc6p+0 got -0x1.effe1dfffffffp-8 ulperr -5250719389057024.000 = -0x1.2a7804p+52 + -0x1.ffff84p-2
src/math/special/fma.h:412: RZ fmal(0x1.b128eb0ad8728p-1,0x1.7682566a54268p+0,0x1.bd4122a074cafp-8) want 0x1.3e9469530e762p+0 got -0x1.6fe0c7bffffffp-9 ulperr -5617153650720768.000 = -0x1.3f4c56p+52 + -0x1.ffffd2p-2
src/math/special/fma.h:413: RZ fmal(0x1.c4ae75976e35cp+0,-0x1.11c329dd1160cp+0,0x1.9993f5e13c9bdp-8) want -0x1.e27d925b07cf1p+0 got 0x1.198edf5ffffffp-9 ulperr 8497736676540416.000 = 0x1.e30a56p+52 + 0x1.ffffdcp-2
src/math/special/fma.h:414: RZ fmal(-0x1.85f81f88fa3c4p+0,-0x1.17648a494fa18p-1,0x1.37d305113b48p-10) want 0x1.aa367b7490e57p-1 got -0x1.7a59ecffffffep-12 ulperr -7501265072291840.000 = -0x1.aa65c4p+52 + -0x1.fffff4p-2
src/math/special/fma.h:415: RZ fmal(-0x1.311f2b4319efcp+0,0x1.abbb5272e3d18p-1,0x1.35841b7bdbcfep-10) want -0x1.fd337f24b39ep-1 got 0x1.4cbc317ffffffp-11 ulperr 8963677814259712.000 = 0x1.fd86acp+52 + 0x1.ffffecp-2
src/math/special/fma.h:416: RZ fmal(0x1.ab94369a9a0dp-1,0x1.9d1e0e0aa3bacp+0,0x1.0a63ca87cfa78p-11) want 0x1.592173ee296b6p+0 got -0x1.fd8043ffffff8p-13 ulperr -6072696672616448.000 = -0x1.59315cp+52 + -0x1.fffffcp-2
src/math/special/fma.h:458: RD fmal(0x1p+0,0x1p+0,-0x1p-1074) want 0x1.fffffffffffffp-1 got -0x1.fffffp-43 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p+0
src/math/special/fma.h:459: bad fp exception: RD fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022)=0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:459: RD fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.fffffffffffffp-1022 got 0x0p+0 ulperr -9007199254740992.000 = -0x1p+53 + 0x0p+0
src/math/special/fma.h:460: bad fp exception: RD fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022)=0x1.ffffffffffffep-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:460: RD fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.ffffffffffffep-1022 got -0x1p-1074 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p+0
src/math/special/fma.h:461: bad fp exception: RD fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:461: RD fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1p-1021 got -0x1p-1074 ulperr 4503599358935040.000 = 0x1.fffffep+51 + -0x1p-1
src/math/special/fma.h:462: bad fp exception: RD fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:462: RD fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.fffffffffffffp-1022 got 0x0p+0 ulperr 9007198717870080.000 = 0x1.fffffep+52 + 0x0p+0
src/math/special/fma.h:463: RD fmal(0x1p-1074,-0x1p-1074,0x1p-1074) want 0x0p+0 got -0x1p-1074 ulperr -2.000 = -0x1p+0 + -0x1p+0
src/math/special/fma.h:464: RD fmal(0x1p-1074,-0x1p-1074,-0x1p-1074) want -0x1p-1073 got -0x1p-1074 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/special/fma.h:465: RD fmal(0x1.0000000000001p+0,0x1p+0,0x1p+53) want 0x1p+53 got 0x1.000008p+12 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:466: RD fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p+53) want 0x1p+53 got 0x1.ffc02p+10 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:467: RD fmal(0x1p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp+53) want 0x1.fffffffffffffp+53 got -0x1.ffffep+10 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:468: RD fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep+53) want 0x1.ffffffffffffep+53 got 0x1.ffc02p+10 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:469: RD fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p-52) want 0x1.0000000000001p+0 got -0x1.fffffp-42 ulperr -4503600164241408.000 = -0x1.000002p+52 + -0x1p-1
src/math/special/fma.h:470: RD fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp-53) want 0x1.0000000000001p+0 got -0x1.fffff8p-41 ulperr -4503600164241408.000 = -0x1.000002p+52 + -0x1p-1
src/math/special/fma.h:471: RD fmal(0x1.0000000000005p+0,0x1.ffffffffffffbp-1,0x1p-52) want 0x1.0000000000003p+0 got -0x1.8fffff8p-37 ulperr -4503600164241408.000 = -0x1.000002p+52 + -0x1p-1
src/math/special/fma.h:472: RD fmal(0x1.0000000000006p+0,0x1.ffffffffffffdp-1,0x1p-52) want 0x1.0000000000005p+0 got -0x1.1fffff8p-37 ulperr -4503600164241408.000 = -0x1.000002p+52 + -0x1p-1
src/math/special/fma.h:491: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff4p+0 got 0x1.6800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:492: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1p+0) want 0x1.ffffffffffff8p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:493: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffff6p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:494: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffff4p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:495: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffff6p+0 got 0x1.f800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:496: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffff4p+0 got 0x1.f800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:497: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffff6p+0 got 0x1.2000004p-36 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:498: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffff4p+0 got 0x1.2000004p-36 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:499: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.fffffffffffffp-1) want 0x1.ffffffffffff6p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:500: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffff4p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:501: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff2p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:502: RD fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep-1) want 0x1.fffffffffffffp+0 got -0x1.fffffp-42 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:503: RD fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffp-42 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:504: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.fffffffffffffp-1) want 0x1.fffffffffffffp+0 got -0x1.fffff8p-41 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:505: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffff8p-41 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:506: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffff8p-41 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:507: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1p+0) want 0x1.fffffffffffffp+0 got -0x1.7ffffcp-40 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:508: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp+0 got -0x1.7ffffcp-40 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:509: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp+0 got -0x1.7ffffcp-40 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:510: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffcp-40 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:511: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffffcp-40 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:512: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffffdp+0 got -0x1.3ffffep-39 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:513: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffbp+0 got -0x1.3ffffep-39 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:514: RD fmal(0x1.5872449b765b9p+0,0x1.c9acf91f8de2bp+0,0x1.9265607e4d168p+0) want 0x1.fd190c77c2a67p+1 got -0x1.b3fc37bedp-4 ulperr -9195829923414016.000 = -0x1.055c78p+53 + -0x1.fffc98p-2
src/math/special/fma.h:515: RD fmal(0x1.81d010b146d0ep+0,0x1.2d3c680dc9071p+0,0x1.a80b69538754cp+0) want 0x1.b7040b44973a6p+1 got 0x1.4d0cb20197p+1 ulperr -1864177270390784.000 = -0x1.a7dd66p+50 + -0x1.0029a2p-1
src/math/special/fma.h:516: RD fmal(0x1.6a44f2252b6a2p+0,0x1.da452a378b832p+0,0x1.1fe2ce329104p+0) want 0x1.df842b6f48b12p+1 got 0x1.12e95c1ba4p+0 ulperr -6017592242208768.000 = -0x1.560f7ep+52 + -0x1.00112ep-1
src/math/special/fma.h:517: RD fmal(0x1.096b1d26463eep+0,0x1.d846d3e34333p+0,0x1.721e3480922b8p+0) want 0x1.ade2909c0269fp+1 got -0x1.a139d9b2cp-1 ulperr -9397596749561856.000 = -0x1.0b1884p+53 + -0x1.ffe5ecp-2
src/math/special/fma.h:518: RD fmal(0x1.99bd3434c454bp+0,0x1.03cb8e4115bdep+0,0x1.109f107188b08p+0) want 0x1.5837a47d37faep+1 got 0x1.cfdec0c00ap+0 ulperr -1975291027128320.000 = -0x1.c12112p+50 + -0x1.001cfep-1
src/math/special/fma.h:519: RD fmal(0x1.ba930a0a78ed2p+0,0x1.8c24e8d67f636p+0,0x1.ac49dbfbf8affp+0) want 0x1.164947ae6a5d9p+2 got -0x1.33e3b04edp-2 ulperr -5234191818031104.000 = -0x1.298784p+52 + -0x1.fffb3p-2
src/math/special/fma.h:520: RD fmal(0x1.be224ad773191p+0,0x1.d96b77169731fp+0,0x1.662cfb75d8edep+0) want 0x1.27cd67e720f78p+2 got 0x1.e4711611c78p+1 ulperr -942615667146752.000 = -0x1.aca6e8p+49 + -0x1.001e48p-1
src/math/special/fma.h:521: RD fmal(0x1.59e7a1b0bdb3cp+0,0x1.2decba4d46421p+0,0x1.88f4062e96df5p+0) want 0x1.90749e4794f79p+1 got -0x1.b3c84a9a88p-1 ulperr -8961479864745984.000 = -0x1.fd66b2p+52 + -0x1.ffe4c4p-2
src/math/special/fma.h:522: RD fmal(0x1.22edf4b4da9a7p+0,0x1.dfa8d65f506cdp+0,0x1.2799208da2fbap+0) want 0x1.a45a1e99ed7a8p+1 got 0x1.a0bdfb8976p-1 ulperr -5562059957731328.000 = -0x1.3c2aap+52 + -0x1.000d06p-1
src/math/special/fma.h:523: RD fmal(0x1.ad5b991a2a279p+0,0x1.f02fd26706024p+0,0x1.831cdd5c8797cp+0) want 0x1.30d3a2ac90a6p+2 got 0x1.c7c15e1c82p+1 ulperr -1353701750996992.000 = -0x1.33cbdp+50 + -0x1.001c7cp-1
src/math/special/fma.h:524: RD fmal(0x1.531f9620e764ap+0,0x1.cad61b54d4425p+0,0x1.df817cae8a9afp+0) want 0x1.0fd4e7f8671dcp+2 got 0x1.8e74e26059p+1 ulperr -1277252138434560.000 = -0x1.2269dcp+50 + -0x1.0018e8p-1
src/math/special/fma.h:525: RD fmal(0x1.629a5ad79494fp+0,0x1.049e58693f4c4p+0,0x1.45b0109e4d00cp+0) want 0x1.5758154e14965p+1 got -0x1.01173c9c2p-3 ulperr -6322847379095552.000 = -0x1.67698ap+52 + -0x1.fffbfcp-2
src/math/special/fma.h:526: RD fmal(0x1.2f52b53f9240ap+0,0x1.1d5c686dbb0dap+0,0x1.6da3e392a4fd4p+0) want 0x1.5fe03a6795912p+1 got 0x1.5bdb7d9084p+0 ulperr -3130480329228288.000 = -0x1.63e4f8p+51 + -0x1.0015bep-1
src/math/special/fma.h:527: RD fmal(0x1.058667552b49ep+0,0x1.23307bacc1c42p+0,0x1.5b059b47cd8f5p+0) want 0x1.423f752486d13p+1 got -0x1.4bfb042744p+0 ulperr -8589176530272256.000 = -0x1.e83cf8p+52 + -0x1.ffd68p-2
src/math/special/fma.h:528: RD fmal(0x1.a717d95337ed8p+0,0x1.2b1c37846aaadp+0,0x1.be65672f885b1p+0) want 0x1.d65e72303c075p+1 got -0x1.7e0573ec04p+1 ulperr -14995408015065088.000 = -0x1.aa31f4p+53 + -0x1.ffa07ep-2
src/math/special/fma.h:529: RD fmal(0x1.deb79287b3d32p+0,0x1.62776b829babap+0,0x1.67daf18bd2eb1p+0) want 0x1.ff5a0d45c69d6p+1 got 0x1.ad881652ap-3 ulperr -8523520438960128.000 = -0x1.e4818cp+52 + -0x1.00035cp-1
src/math/special/fma.h:530: RD fmal(0x1.fbf12d3a6de91p+0,0x1.879fe6124f11p+0,0x1.9f3f1247a8641p+0) want 0x1.2a126c6980018p+2 got 0x1.45e3d61a84p+2 ulperr 489379747332096.000 = 0x1.bd169ap+48 + -0x1.0028bcp-1
src/math/special/fma.h:531: RD fmal(0x1.c589628460e01p+0,0x1.e1bec1c797533p+0,0x1.349f30cdb84bbp+0) want 0x1.2286118b6f6e5p+2 got -0x1.8e9d95e0668p+1 ulperr -8617207097458688.000 = -0x1.e9d4dep+52 + -0x1.ffce2cp-2
src/math/special/fma.h:532: RD fmal(0x1.46fd6c2c924ebp+0,0x1.65e2f02e730a1p+0,0x1.37739d2751098p+0) want 0x1.804a71c1f1272p+1 got 0x1.855d7947cbp+0 ulperr -3335623536541696.000 = -0x1.7b376cp+51 + -0x1.001856p-1
src/math/special/fma.h:533: RD fmal(0x1.f99e595ae11fdp+0,0x1.bd33d9a1d81bp+0,0x1.932a2a2e244c1p+0) want 0x1.409e34f8f2f89p+2 got -0x1.7a49668944p+2 ulperr -12295261934059520.000 = -0x1.5d73cep+53 + -0x1.ffa16ep-2
src/math/special/fma.h:534: RD fmal(0x1.59ea1e56bfe55p+0,0x1.6f46b7d412a44p+0,0x1.80f2bc9a32cc3p+0) want 0x1.b89c7640e32ffp+1 got -0x1.ca180bfb6p-3 ulperr -8254993714905088.000 = -0x1.d53df8p+52 + -0x1.fff8d8p-2
src/math/special/fma.h:535: RD fmal(0x1.61490fcb44129p+0,0x1.0038ec4fc35c2p+0,0x1.df7436ed7a7b7p+0) want 0x1.a085ea68d05cfp+1 got -0x1.5ed2c690f7p+1 ulperr -13499302328401920.000 = -0x1.7fac5ap+53 + -0x1.ffa84cp-2
src/math/special/fma.h:536: RD fmal(0x1.d41b98788502bp+0,0x1.1a7b77843aca6p+0,0x1.05be891837d36p+0) want 0x1.8523596ceced9p+1 got -0x1.48c8fc403cp-1 ulperr -8291802121502720.000 = -0x1.d7559ap+52 + -0x1.ffeb74p-2
src/math/special/fma.h:537: RD fmal(0x1.3153cf6f69af9p+0,0x1.aaa947e38e57ap+0,0x1.8519f9b590645p+0) want 0x1.c0fcab7b46368p+1 got 0x1.25f4f4bd5p-3 ulperr -7575454189879296.000 = -0x1.ae9d5ep+52 + -0x1.00024cp-1
src/math/special/fma.h:538: RD fmal(0x1.c25a1f73581aap+0,0x1.0a51ffca372ap+0,0x1.0c77e3ebac5f3p+0) want 0x1.707ce48c7d72dp+1 got -0x1.3261c9a0ep+1 ulperr -11872436362412032.000 = -0x1.516f58p+53 + -0x1.ffb368p-2
src/math/special/fma.h:539: RD fmal(0x1.829c2cde44b7p+0,0x1.f692e86d8cb36p+0,0x1.455e72d264bfp+0) want 0x1.0f16a3b8b3f97p+2 got -0x1.684386466p+0 ulperr -6353495191977984.000 = -0x1.692786p+52 + -0x1.ffe97cp-2
src/math/special/fma.h:540: RD fmal(0x1.94729588dcc69p+0,0x1.c3bb794c6edf8p+0,0x1.9da4e94d262d2p+0) want 0x1.19d4bd84d9fd2p+2 got 0x1.e1b9a2757p-1 ulperr -3898699117756416.000 = -0x1.bb3b14p+51 + -0x1.000786p-1
src/math/special/fma.h:541: RD fmal(0x1.e6a5e7e39c3d5p+0,0x1.1b69af2bdd978p+0,0x1.e7ef1eafa119cp+0) want 0x1.00ac5b44c9f31p+2 got -0x1.6777d5d394p+1 ulperr -7677359268298752.000 = -0x1.b46848p+52 + -0x1.ffd312p-2
src/math/special/fma.h:542: RD fmal(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022) want 0x1.b594d0e4368efp-1022 got -0x1.9dedc9561p-1023 ulperr -11338969211994112.000 = -0x1.4245dcp+53 + -0x1.ffcc42p-2
src/math/special/fma.h:543: RD fmal(0x1.022db53c98d14p-1022,0x1.21157eef74848p-2,0x1.2f880432b1bc1p-1022) want 0x1.786ad60a02b3dp-1022 got -0x1.150255ac98p-1022 ulperr -11495199721127936.000 = -0x1.46b696p+53 + -0x1.ffbacp-2
src/math/special/fma.h:544: RD fmal(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022) want 0x1.cbb085199a3f5p-1022 got -0x1.6ed115da2f8p-1023 ulperr -11313498982187008.000 = -0x1.418c8ap+53 + -0x1.ffd226p-2
src/math/special/fma.h:545: RD fmal(0x1.adbc3a9d816dep-1022,0x1.e039d4431e3cdp-2,0x1.93ceef6fe18a2p-1022) want 0x1.2eabb7dc0e2fp-1021 got 0x1.ef7b6794e3p-1023 ulperr -3145487481831424.000 = -0x1.6599bcp+51 + -0x1.000f7cp-1
src/math/special/fma.h:546: RD fmal(0x1.645aa5c2df3afp-1022,0x1.649edfcad854fp-2,0x1.8b43e0bbaeb01p-1022) want 0x1.03af571d2b504p-1021 got 0x1.0ce86163c02p-1021 ulperr 162249436037120.000 = 0x1.272148p+47 + -0x1.00219ep-1
src/math/special/fma.h:547: RD fmal(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022) want 0x1.ad9ce7fcefa3fp-1022 got -0x1.12bc4931e6p-1025 ulperr -8161980292530176.000 = -0x1.cff472p+52 + -0x1.fff76ap-2
src/math/special/fma.h:548: RD fmal(0x1.8ee3feb00c3e7p-1022,0x1.53bd9353313bcp-2,0x1.5501b57dc3b6fp-1022) want 0x1.d9598906f0bb3p-1022 got -0x1.4660b83f57p-1022 ulperr -14068956725772288.000 = -0x1.8fdd22p+53 + -0x1.ffae68p-2
src/math/special/fma.h:549: RD fmal(0x1.161225cfa61e2p-1022,0x1.b6dd69a0af5bp-2,0x1.924ffc3ead5c3p-1022) want 0x1.04be6fc25367bp-1021 got -0x1.f3ab56daa8p-1022 ulperr -8982192881401856.000 = -0x1.fe941cp+52 + -0x1.ffc18ap-2
src/math/special/fma.h:550: RD fmal(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022) want 0x1.70b6c3169f043p-1022 got -0x1.a779baefbe8p-1023 ulperr -10211414669000704.000 = -0x1.2239d2p+53 + -0x1.ffcb1p-2
src/math/special/fma.h:551: RD fmal(0x1.ce0e2ea55040ep-1022,0x1.ce5a55fa3828dp-2,0x1.f2f444d50ce59p-1022) want 0x1.61ca36f5a8a79p-1021 got -0x1.173f0cea128p-1022 ulperr -8680214267691008.000 = -0x1.ed69bep+52 + -0x1.ffdd18p-2
src/math/special/fma.h:552: RD fmal(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022) want 0x1.1440cf1c105ebp-1021 got -0x1.f88fda6p-1030 ulperr -4877233864835072.000 = -0x1.153d18p+52 + -0x1.ffffcp-2
src/math/special/fma.h:553: RD fmal(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022) want 0x1.1186e1f77012dp-1021 got -0x1.2ffba526fcp-1025 ulperr -5146169147654144.000 = -0x1.24869ep+52 + -0x1.fffb4p-2
src/math/special/fma.h:554: RD fmal(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022) want 0x1.8d86310bad175p-1022 got -0x1.1b755c367f8p-1023 ulperr -9486646453993472.000 = -0x1.0da07p+53 + -0x1.ffdc92p-2
src/math/special/fma.h:555: RD fmal(0x1.fb3391a4b1d23p-1022,0x1.4d8705b057caep-2,0x1.d026cb6dae73bp-1022) want 0x1.3aad18b424c67p-1021 got -0x1.0a1784c7c6cp-1021 ulperr -10216979872874496.000 = -0x1.22625p+53 + -0x1.ffbd7ap-2
src/math/special/fma.h:556: RD fmal(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022) want 0x1.c0048fd33a417p-1022 got -0x1.d026e457f1p-1024 ulperr -9922975402819584.000 = -0x1.1a0726p+53 + -0x1.ffe2fep-2
src/math/special/fma.h:557: RD fmal(0x1.aa9eff070281cp-1022,0x1.fab05661b48ebp-2,0x1.cbe2af6c69c6ep-1022) want 0x1.4f7ddbe122764p-1021 got 0x1.9e529858dap-1023 ulperr -4079821109854208.000 = -0x1.cfd26cp+51 + -0x1.000cf2p-1
src/math/special/fma.h:558: RD fmal(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022) want 0x1.e0e762ee2e7c5p-1022 got -0x1.e2fe0f96ecp-1023 ulperr -12708596701724672.000 = -0x1.693336p+53 + -0x1.ffc3ap-2
src/math/special/fma.h:559: RD fmal(0x1.4dab43918a9a8p-1022,0x1.ed667442b4751p-2,0x1.3f25f82e02e3ep-1022) want 0x1.dfec0ee732dcap-1022 got 0x1.6a41c4d18ap-1022 ulperr -2069988076683264.000 = -0x1.d6a92ap+50 + -0x1.002d48p-1
src/math/special/fma.h:560: RD fmal(0x1.7943735951931p-1022,0x1.fa6a357c5c9ddp-2,0x1.0bed44b0b71b4p-1022) want 0x1.c6803a6059abep-1022 got 0x1.0e970cce134p-1022 ulperr -3235394032238592.000 = -0x1.6fd25cp+51 + -0x1.0021d2p-1
src/math/special/fma.h:561: RD fmal(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022) want 0x1.8640492c45959p-1022 got -0x1.3271a1b38p-1027 ulperr -7033840023371776.000 = -0x1.8fd3d8p+52 + -0x1.fffd9cp-2
src/math/special/fma.h:562: RD fmal(0x1.f52172c56bdf5p-1022,0x1.672b2de422734p-2,0x1.7bc5d708e5a34p-1022) want 0x1.15c5b95145cc6p-1021 got 0x1.3cf4f71d188p-1021 ulperr 689341647028224.000 = 0x1.3979eep+49 + -0x1.00279ep-1
src/math/special/fma.h:563: RD fmal(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022) want 0x1.e7fa0dd76fbefp-1022 got -0x1.60a5d541bp-1024 ulperr -10135539776749568.000 = -0x1.2011c2p+53 + -0x1.ffe9f6p-2
src/math/special/fma.h:564: RD fmal(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022) want 0x1.b63a7f56fce1fp-1022 got -0x1.497a9bc52p-1024 ulperr -9158461560455168.000 = -0x1.044c94p+53 + -0x1.ffeb68p-2
src/math/special/fma.h:565: RD fmal(0x1.f73d5f4e81fd8p-1022,0x1.7ccff2642124ap-2,0x1.e7d836a0c8308p-1022) want 0x1.517f1763126d3p-1021 got -0x1.06939f3372p-1021 ulperr -10556597969354752.000 = -0x1.2c095cp+53 + -0x1.ffbe5cp-2
src/math/special/fma.h:566: RD fmal(0x1.b4328925969fbp-1022,0x1.8fa02832a22d5p-2,0x1.2084598e2f8c6p-1022) want 0x1.cabf43838dc51p-1022 got -0x1.7c61d65f0a4p-1022 ulperr -14762119350190080.000 = -0x1.a3908ep+53 + -0x1.ffa0e8p-2
src/math/special/fma.h:567: RD fmal(0x1.66ee60a92676fp-1022,0x1.eddd2e7681ce4p-2,0x1.b81d57daeb3a7p-1022) want 0x1.329c918ffb682p-1021 got 0x1.cd379885b8p-1025 ulperr -4886855128449024.000 = -0x1.15c91ap+52 + -0x1.00039ap-1
src/math/special/fma.h:568: RD fmal(0x1.ff2737585895dp-1022,0x1.fb4bf3828ae4ap-2,0x1.4a866847740fp-1022) want 0x1.23e07e4dbbeaap-1021 got 0x1.46c53f7571p-1023 ulperr -3697601501200384.000 = -0x1.a45e5ep+51 + -0x1.000a36p-1
src/math/special/fma.h:569: RD fmal(0x1.5e2008d269a86p-1022,0x1.507bbbe4d78eep-2,0x1.6220c6f83f636p-1022) want 0x1.d52d9874f1c74p-1022 got 0x1.eda0503c4ap-1023 ulperr -3911886546403328.000 = -0x1.bcbae2p+51 + -0x1.001edap-1
src/math/special/fma.h:570: RD fmal(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022) want 0x1.9864925e2fb0fp-1022 got -0x1.53ae580e8cp-1025 ulperr -7931489798848512.000 = -0x1.c2da5ep+52 + -0x1.fff562p-2
src/math/special/fma.h:571: RD fmal(0x1.7b353b81e793dp-1022,0x1.82b426f874c6dp-2,0x1.d92b19d21fd5cp-1022) want 0x1.342fb0c544a78p-1021 got 0x1.2af4c8aebe4p-1022 ulperr -2792024289837056.000 = -0x1.3d6a9ap+51 + -0x1.0012bp-1
src/math/special/fma.h:572: RD fmal(0x1.5be667823370ap-1022,0x1.a8a99b163869bp-2,0x1.95456b68dc3bcp-1022) want 0x1.12c638de03c7p-1021 got 0x1.49af7fc787p-1023 ulperr -3383908364189696.000 = -0x1.80b4b2p+51 + -0x1.000a4ep-1
src/math/special/fma.h:573: RD fmal(0x1.17b0fc6c850e5p-1022,0x1.d1d0a4853c315p-2,0x1.36b79f7c0c24p-1022) want 0x1.b5f2baff5635cp-1022 got 0x1.6a19304724p-1026 ulperr -7306334223466496.000 = -0x1.9f5128p+52 + -0x1.0002d4p-1
src/math/special/fma.h:574: RD fmal(0x1.bd97819bacfd8p-1022,0x1.2c25f267ba4eep-2,0x1.804b5204a3f3ap-1022) want 0x1.01739c190fd96p-1021 got 0x1.b9e166e6b4p-1022 ulperr -642314707927040.000 = -0x1.241746p+49 + -0x1.001b9ep-1
src/math/special/fma.h:575: RD fmal(0x1.596577053873dp-1022,0x1.3562ab2d29949p-2,0x1.b3f1ee75db6e7p-1022) want 0x1.0e268a498009ap-1021 got 0x1.e8136bc1594p-1022 ulperr -459378025037824.000 = -0x1.a1cd48p+48 + -0x1.001e82p-1
src/math/special/fma.h:576: RD fmal(0x1.3c7a68cf0f7b3p-1022,0x1.9a55c15b167bdp-2,0x1.7635b7b163c07p-1022) want 0x1.f5073b93b7b8p-1022 got 0x1.75f9a972138p-1023 ulperr -5524661530001408.000 = -0x1.3a0a68p+52 + -0x1.00176p-1
src/math/special/fma.h:577: RD fmal(0x1.5825164bc4068p-1022,0x1.dcbb6e5ff3245p-2,0x1.52fc3be0e84dap-1022) want 0x1.f334771c2dcfap-1022 got 0x1.2b86ba6b02p-1022 ulperr -3512784226615296.000 = -0x1.8f5b7ap+51 + -0x1.00257p-1
src/math/special/fma.h:578: RD fmal(0x1.139ea77b760ecp+1022,0x1.9b25f2fd017eap+2,-0x1.bc16788922b6fp+1023) want 0x1.b93aac527380ep+1023 got 0x1.c3ec4f2eep+1022 ulperr -3787028625883136.000 = -0x1.ae890ap+51 + -0x1.001c3ep-1
src/math/special/fma.h:579: RD fmal(0x1.0e6f9c1657d7cp+1022,0x1.4d5c6b55ab5f1p+2,-0x1.e027dd5742e2cp+1023) want 0x1.c0538372b4bbep+1022 got 0x1.54dede6dep+1021 ulperr -4888709480579072.000 = -0x1.15e416p+52 + -0x1.00154ep-1
src/math/special/fma.h:580: RD fmal(0x1.1182524fa411cp+1022,0x1.a3dba56842d19p+2,-0x1.c1ad59474d71fp+1023) want 0x1.bf78969300a76p+1023 got 0x1.8651491efp+1022 ulperr -4438724951670784.000 = -0x1.f89fe6p+51 + -0x1.001866p-1
src/math/special/fma.h:581: RD fmal(0x1.1cbf4fb8ec82p+1022,0x1.5e32019a84fbbp+2,-0x1.985af08f32edep+1023) want 0x1.72af6bbad4a28p+1023 got 0x1.a68c1c1ecp+1023 ulperr 912367084896256.000 = 0x1.9ee582p+49 + -0x1.0034d2p-1
src/math/special/fma.h:582: RD fmal(0x1.311e25c6db346p+1022,0x1.4e30db6c4b51dp+2,-0x1.7681f7a9786a7p+1023) want 0x1.a61d29434fc13p+1023 got -0x1.791d1989p+1017 ulperr -7529566759288832.000 = -0x1.ac019ep+52 + -0x1.fffe86p-2
src/math/special/fma.h:583: RD fmal(0x1.1201cf577052fp+1022,0x1.59730b2db7a16p+2,-0x1.56f1a64a078d5p+1023) want 0x1.8c8d801df34d9p+1023 got -0x1.3048609fd8p+1022 ulperr -inf = -inf + -0x1.ffd9f6p-2
src/math/special/fma.h:584: RD fmal(0x1.3e52335b76e81p+1022,0x1.4dbd56f857479p+2,-0x1.509340c11bd2ep+1023) want 0x1.ed6576837f653p+1023 got -0x1.e498d5441cp+1022 ulperr -inf = -inf + -0x1.ffc36cp-2
src/math/special/fma.h:585: RD fmal(0x1.18566b4f843cbp+1022,0x1.444fba10eaf29p+2,-0x1.f927beae57f0ap+1023) want 0x1.9a433b9796559p+1022 got 0x1.a048d2820cp+1022 ulperr 105937222238208.000 = 0x1.8165bap+46 + -0x1.ff6812p-2
src/math/special/fma.h:586: RD fmal(0x1.3fbe544fe1be8p+1022,0x1.2d2a5fda03639p+2,-0x1.007407dbfd03cp+1023) want 0x1.efdb644b613e5p+1023 got -0x1.e14223656p+1022 ulperr -inf = -inf + -0x1.ffc3d8p-2
src/math/special/fma.h:587: RD fmal(0x1.263a0d3bc2e4p+1022,0x1.4cc198adbc651p+2,-0x1.734b1c1f7fdb8p+1023) want 0x1.899878afc0fa2p+1023 got 0x1.a13620448p+1023 ulperr 415454199808000.000 = 0x1.79da78p+48 + -0x1.003426p-1
src/math/special/fma.h:588: RD fmal(0x1.5bf4aec8efc8ep+1022,0x1.555f0341516c9p+2,-0x1.c706408acd14cp+1023) want 0x1.d8f5e18b868bcp+1023 got 0x1.3e5679fdf8p+1022 ulperr -5520280126488576.000 = -0x1.39caa6p+52 + -0x1.0013e6p-1
src/math/special/fma.h:589: RD fmal(0x1.1e57f1af78279p+1022,0x1.34bc0c7f082b3p+2,-0x1.497b92c1365edp+1023) want 0x1.692cb7ec68a93p+1023 got -0x1.c0a1f29b28p+1021 ulperr -8326959650045952.000 = -0x1.d95536p+52 + -0x1.ffe3f6p-2
src/math/special/fma.h:590: RD fmal(0x1.1d9824cd73511p+1022,0x1.1d557ddfe47ffp+2,-0x1.556cdb1d20a72p+1023) want 0x1.2736a6b6e35f2p+1023 got 0x1.bc6f9c9778p+1021 ulperr -3238800478175232.000 = -0x1.70358p+51 + -0x1.000de4p-1
src/math/special/fma.h:591: RD fmal(0x1.1ff85a24aff31p+1022,0x1.39ab374b2680dp+2,-0x1.35e6b07b651b8p+1023) want 0x1.8bc7ce208708p+1023 got 0x1.84b319bafap+1023 ulperr -124568119279616.000 = -0x1.c52d1ap+46 + -0x1.003096p-1
src/math/special/fma.h:592: RD fmal(0x1.0449b3965227ep+1022,0x1.4430d4441f9f2p+2,-0x1.a6966c96307ep+1023) want 0x1.d94eda8c81771p+1022 got -0x1.992ed6b72p+1021 ulperr -11925734759071744.000 = -0x1.52f324p+53 + -0x1.ffccdap-2
src/math/special/fma.h:593: RD fmal(0x1.3c91fa00fd0c7p+1022,0x1.1b6661c0b0303p+2,-0x1.f1f2846b64483p+1023) want 0x1.95eae0d2644d3p+1022 got 0x1.9985d8eaap+1019 ulperr -6240425882943488.000 = -0x1.62ba26p+52 + -0x1.ff0cccp-2
src/math/special/fma.h:594: RD fmal(0x1.0979b36d46534p+1022,0x1.12fa205f41f7fp+2,-0x1.a83ecf4544a63p+1023) want 0x1.2420f34e2aa3cp+1022 got -0x1.335a0fe68p+1019 ulperr -5815056616914944.000 = -0x1.4a8c36p+52 + -0x1.007b32p-1
src/math/special/fma.h:595: RD fmal(0x1.4c89df582a599p+1022,0x1.55f3dc473ea8fp+2,-0x1.e35037292ddfp+1023) want 0x1.95109fdbc3771p+1023 got -0x1.afa3b29624p+1022 ulperr -inf = -inf + -0x1.ffca0cp-2
src/math/special/fma.h:596: RD fmal(0x1.35ee0a669c4fbp+1022,0x1.2263cb63f386ap+2,-0x1.449218ae35ac7p+1023) want 0x1.7a8ed977d817ap+1023 got 0x1.47da9ddfb8p+1022 ulperr -3775828961787904.000 = -0x1.ad4316p+51 + -0x1.00147ep-1
src/math/special/fma.h:597: RD fmal(0x1.117cc860f61bcp+1022,0x1.440985b25d994p+2,-0x1.d7a7d82000449p+1023) want 0x1.b960b7088e74fp+1022 got 0x1.ddfba372cp+1022 ulperr 643964914892800.000 = 0x1.24d762p+49 + -0x1.ff777ep-2
src/math/special/fma.h:598: RD fmal(0x1.1e78a37be320fp+1022,0x1.0db0fce62287bp+2,-0x1.376337da5eb53p+1023) want 0x1.24326b9956dfbp+1023 got -0x1.d2881b3596p+1023 ulperr -inf = -inf + -0x1.ff8b5ep-2
src/math/special/fma.h:599: RD fmal(0x1.0c79b5c8331c2p+1022,0x1.0aba6ea746b5p+2,-0x1.c86f1fcaf0741p+1023) want 0x1.9c135bb2cff84p+1021 got -0x1.cc298bacp+1019 ulperr -9273126449840128.000 = -0x1.078eep+53 + -0x1.00f19ep-1
src/math/special/fma.h:600: RD fmal(0x1.556c4c072f272p+1022,0x1.347758d7d4eb5p+2,-0x1.c6fe4f24b248dp+1023) want 0x1.6fcc9f756df6dp+1023 got -0x1.f6f4c76598p+1022 ulperr -inf = -inf + -0x1.ffc122p-2
src/math/special/fma.h:601: RD fmal(-0x1.e8349b891b2fp-1,0x1.4a6dec9b72578p-1,0x1.3b6151ce809ddp-1) want 0x1.3a62fe330b355p-11 got -0x1.d97121p-11 ulperr -13859627535958016.000 = -0x1.89ea1p+53 + -0x1.ff89a4p-2
src/math/special/fma.h:602: RD fmal(0x1.2996632ac7d74p-1,-0x1.bb3c58b654d94p-1,0x1.01a6660e64a31p-1) want 0x1.ed045bb956a8ep-15 got -0x1.070d62p-15 ulperr -13300912420290560.000 = -0x1.7a08ep+53 + -0x1.eabe3cp-2
src/math/special/fma.h:603: RD fmal(-0x1.c602e894c1df8p-1,0x1.a1c980e7d3f94p-1,0x1.7271244b43386p-1) want -0x1.ba251fe026e5cp-15 got -0x1.af2b6c0000001p-15 ulperr 193081294979072.000 = 0x1.5f367cp+47 + -0x1.02ca1ap-1
src/math/special/fma.h:604: RD fmal(-0x1.c84baf47e85cp-1,0x1.770b5149ef2ep-1,0x1.4d80f139320bap-1) want -0x1.79277433b9e24p-10 got 0x1.d4b6effffffffp-11 ulperr 10757822555881472.000 = 0x1.31c176p+53 + -0x1.001d4cp-1
src/math/special/fma.h:605: RD fmal(-0x1.36e667dcf9c6p-1,0x1.2591f82556b88p-1,0x1.2452a0f795f95p-1) want 0x1.c83c8e63c159fp-3 got -0x1.221cccp-12 ulperr -8036166741786624.000 = -0x1.c8cd9ep+52 + -0x1.ffffdcp-2
src/math/special/fma.h:606: RD fmal(0x1.88b2cede61e4cp-1,-0x1.71dcab5ad9e9p-3,0x1.32b27fea2ae97p-3) want 0x1.70461909b25e2p-7 got -0x1.affe57fffffffp-17 ulperr -6486163510525952.000 = -0x1.70b21ap+52 + -0x1.ffffe6p-2
src/math/special/fma.h:607: RD fmal(0x1.8d1e44002c98p-3,-0x1.af9fdfb347834p-1,0x1.e280942fb4146p-4) want -0x1.761ac23896dfep-5 got 0x1.0bec47fffffffp-14 ulperr 6590522089013248.000 = 0x1.76a0b8p+52 + -0x1.00001p-1
src/math/special/fma.h:608: RD fmal(0x1.236e8cb9492c8p-1,-0x1.d37443a57f1c4p-1,0x1.ca10df801aabcp-4) want -0x1.a1a2cdf0138fap-2 got 0x1.f090cab6fffffp-5 ulperr 8439088361242624.000 = 0x1.dfb4e6p+52 + -0x1.0007c2p-1
src/math/special/fma.h:609: RD fmal(-0x1.6ad943e610fb8p-1,-0x1.cef92a7bb18bcp-1,0x1.f28587d8fb0ep-4) want 0x1.866b5204b9aecp-1 got -0x1.8c9eb9a7p-5 ulperr -7304415983697920.000 = -0x1.9f353ep+52 + -0x1.fff9cep-2
src/math/special/fma.h:610: RD fmal(-0x1.60a8569a5d894p-1,-0x1.ca07e29dd171cp-1,0x1.b6c475ace09ecp-4) want 0x1.72549291e2f7ap-1 got -0x1.b6fd181e8p-5 ulperr -6997594257489920.000 = -0x1.8dc466p+52 + -0x1.fff924p-2
src/math/special/fma.h:611: RD fmal(0x1.d1962720d678cp-1,-0x1.4548ee45c4084p-1,0x1.f416ab193d75cp-4) want -0x1.d2929879dc854p-2 got 0x1.fc38e6f3fffffp-8 ulperr 8347731722502144.000 = 0x1.da837cp+52 + -0x1.0000fep-1
src/math/special/fma.h:612: RD fmal(-0x1.9ddcb295a7d64p-1,0x1.67fb3a2068a78p-1,0x1.da9cd4597fe0ap-4) want -0x1.cf4f6eb4fc5d9p-2 got 0x1.59da5511fffffp-6 ulperr 8530909930192896.000 = 0x1.e4ed14p+52 + -0x1.0002b4p-1
src/math/special/fma.h:613: RD fmal(0x1.c00d16ed45b88p+0,0x1.c787eddda3664p+0,0x1.1e3e6f0cc1802p-5) want 0x1.931b8f379dcc3p+1 got -0x1.63fb63b8p-6 ulperr -7140470639558656.000 = -0x1.95e386p+52 + -0x1.ffff4ep-2
src/math/special/fma.h:614: RD fmal(0x1.19c2a2372c184p+0,-0x1.cb506961c19fp+0,0x1.db1abf3f7ba3ap-6) want -0x1.f21c0eab0bc19p+0 got 0x1.a29607ffffff8p-13 ulperr 8763735275470848.000 = 0x1.f22922p+52 + -0x1.000002p-1
src/math/special/fma.h:615: RD fmal(-0x1.3a263218ccd1cp+0,-0x1.e818d390df27cp+0,0x1.2a81ed71785f5p-5) want 0x1.3025ab0f63925p+1 got -0x1.bfdf0b9cp-6 ulperr -5412168283455488.000 = -0x1.33a56ap+52 + -0x1.ffff2p-2
src/math/special/fma.h:616: RD fmal(0x1.b0b041fbaca58p+0,-0x1.9d5f76d178e6p+0,0x1.0215c7bb84cf9p-6) want -0x1.5b52aec7ef401p+1 got 0x1.6be7a77ffffffp-7 ulperr 6135177709355008.000 = 0x1.5cbe96p+52 + -0x1.00002ep-1
src/math/special/fma.h:617: RD fmal(-0x1.377549d9a87f4p+0,-0x1.a13d4a03dd6d8p+0,0x1.f190388bc5cc6p-7) want 0x1.ff83bebbd6fe4p+0 got -0x1.e5a6a44p-9 ulperr -9015347881443328.000 = -0x1.003b4ap+53 + -0x1.ffffc4p-2
src/math/special/fma.h:618: RD fmal(0x1.6a726c0762ac8p-1,-0x1.d32f2d30e483cp+0,0x1.f953eb70fbde6p-7) want -0x1.46c61b3070333p+0 got 0x1.e556e47fffffep-11 ulperr 5752835425697792.000 = 0x1.4702c6p+52 + -0x1.000008p-1
src/math/special/fma.h:619: RD fmal(0x1.94cf2509d40cp-1,0x1.721976af6dfbp+0,0x1.f51a456921c3ep-7) want 0x1.28880842acc6p+0 got -0x1.effe1ep-8 ulperr -5250719925927936.000 = -0x1.2a7808p+52 + -0x1.ffff84p-2
src/math/special/fma.h:620: RD fmal(0x1.b128eb0ad8728p-1,0x1.7682566a54268p+0,0x1.bd4122a074cafp-8) want 0x1.3e9469530e762p+0 got -0x1.6fe0c7cp-9 ulperr -5617154187591680.000 = -0x1.3f4c5ap+52 + -0x1.ffffd2p-2
src/math/special/fma.h:621: RD fmal(0x1.c4ae75976e35cp+0,-0x1.11c329dd1160cp+0,0x1.9993f5e13c9bdp-8) want -0x1.e27d925b07cf2p+0 got 0x1.198edf5ffffffp-9 ulperr 8497736676540416.000 = 0x1.e30a58p+52 + -0x1.000012p-1
src/math/special/fma.h:622: RD fmal(-0x1.85f81f88fa3c4p+0,-0x1.17648a494fa18p-1,0x1.37d305113b48p-10) want 0x1.aa367b7490e57p-1 got -0x1.7a59ecffffffep-12 ulperr -7501265609162752.000 = -0x1.aa65c8p+52 + -0x1.fffff4p-2
src/math/special/fma.h:623: RD fmal(-0x1.311f2b4319efcp+0,0x1.abbb5272e3d18p-1,0x1.35841b7bdbcfep-10) want -0x1.fd337f24b39e1p-1 got 0x1.4cbc317ffffffp-11 ulperr 8963677814259712.000 = 0x1.fd86aep+52 + -0x1.00000ap-1
src/math/special/fma.h:624: RD fmal(0x1.ab94369a9a0dp-1,0x1.9d1e0e0aa3bacp+0,0x1.0a63ca87cfa78p-11) want 0x1.592173ee296b6p+0 got -0x1.fd8043ffffff8p-13 ulperr -6072697209487360.000 = -0x1.59316p+52 + -0x1.fffffcp-2
src/math/special/fma.h:666: RU fmal(0x1p+0,0x1p+0,-0x1p-1074) want 0x1p+0 got -0x1.fffffp-43 ulperr -4503599627370496.000 = -0x1p+52 + 0x0p+0
src/math/special/fma.h:667: bad fp exception: RU fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022)=0x1p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:667: RU fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022) want 0x1p-1021 got 0x1p-1074 ulperr -4503599358935040.000 = -0x1.fffffep+51 + 0x1p-1
src/math/special/fma.h:668: bad fp exception: RU fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022)=0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:668: RU fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.fffffffffffffp-1022 got -0x0p+0 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x0p+0
src/math/special/fma.h:669: bad fp exception: RU fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:669: RU fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.fffffffffffffp-1022 got -0x0p+0 ulperr 9007199254740992.000 = 0x1p+53 + 0x0p+0
src/math/special/fma.h:670: bad fp exception: RU fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.ffffffffffffep-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:670: RU fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.ffffffffffffep-1022 got 0x1p-1074 ulperr 9007199254740992.000 = 0x1p+53 + 0x1p+0
src/math/special/fma.h:671: RU fmal(0x1p-1074,-0x1p-1074,0x1p-1074) want 0x1p-1074 got -0x0p+0 ulperr -1.000 = -0x1p+0 + 0x0p+0
src/math/special/fma.h:672: RU fmal(0x1p-1074,-0x1p-1074,-0x1p-1074) want -0x1p-1074 got -0x0p+0 ulperr 1.000 = 0x1p+0 + 0x0p+0
src/math/special/fma.h:673: RU fmal(0x1.0000000000001p+0,0x1p+0,0x1p+53) want 0x1.0000000000001p+53 got 0x1.000008p+12 ulperr -4503599358935040.000 = -0x1.fffffep+51 + 0x1p-1
src/math/special/fma.h:674: RU fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p+53) want 0x1.0000000000001p+53 got 0x1.ffc02p+10 ulperr -4503599358935040.000 = -0x1.fffffep+51 + 0x1p-1
src/math/special/fma.h:675: RU fmal(0x1p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp+53) want 0x1p+54 got -0x1.ffffep+10 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-2
src/math/special/fma.h:676: RU fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep+53) want 0x1.fffffffffffffp+53 got 0x1.ffc02p+10 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:677: RU fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p-52) want 0x1.0000000000002p+0 got -0x1.fffffp-42 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:678: RU fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp-53) want 0x1.0000000000002p+0 got -0x1.fffff8p-41 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:679: RU fmal(0x1.0000000000005p+0,0x1.ffffffffffffbp-1,0x1p-52) want 0x1.0000000000004p+0 got -0x1.8fffff8p-37 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:680: RU fmal(0x1.0000000000006p+0,0x1.ffffffffffffdp-1,0x1p-52) want 0x1.0000000000006p+0 got -0x1.1fffff8p-37 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:699: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff5p+0 got 0x1.6800008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:700: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1p+0) want 0x1.ffffffffffff9p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:701: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffff7p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:702: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffff5p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:703: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffff7p+0 got 0x1.f800008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:704: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffff5p+0 got 0x1.f800008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:705: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffff7p+0 got 0x1.2000004p-36 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:706: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffff5p+0 got 0x1.2000004p-36 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:707: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.fffffffffffffp-1) want 0x1.ffffffffffff7p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:708: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffff5p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:709: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff3p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:710: RU fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep-1) want 0x1p+1 got -0x1.fffffp-42 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-2
src/math/special/fma.h:711: RU fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffep+0 got -0x1.fffffp-42 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:712: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.fffffffffffffp-1) want 0x1p+1 got -0x1.fffff8p-41 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-2
src/math/special/fma.h:713: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffffep+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:714: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffffcp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:715: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1p+0) want 0x1p+1 got -0x1.7ffffcp-40 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-2
src/math/special/fma.h:716: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffffep+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:717: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffffcp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:718: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffffep+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:719: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffffcp+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:720: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffffep+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:721: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffcp+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:722: RU fmal(0x1.5872449b765b9p+0,0x1.c9acf91f8de2bp+0,0x1.9265607e4d168p+0) want 0x1.fd190c77c2a68p+1 got -0x1.b3fc37becffffp-4 ulperr -9195828849672192.000 = -0x1.055c76p+53 + 0x1.0001b4p-1
src/math/special/fma.h:723: RU fmal(0x1.81d010b146d0ep+0,0x1.2d3c680dc9071p+0,0x1.a80b69538754cp+0) want 0x1.b7040b44973a7p+1 got 0x1.4d0cb20197001p+1 ulperr -1864177136173056.000 = -0x1.a7dd64p+50 + 0x1.ffacbcp-2
src/math/special/fma.h:724: RU fmal(0x1.6a44f2252b6a2p+0,0x1.da452a378b832p+0,0x1.1fe2ce329104p+0) want 0x1.df842b6f48b13p+1 got 0x1.12e95c1ba4001p+0 ulperr -6017591705337856.000 = -0x1.560f7cp+52 + 0x1.ffdda2p-2
src/math/special/fma.h:725: RU fmal(0x1.096b1d26463eep+0,0x1.d846d3e34333p+0,0x1.721e3480922b8p+0) want 0x1.ade2909c026ap+1 got -0x1.a139d9b2bffffp-1 ulperr -9397595675820032.000 = -0x1.0b1882p+53 + 0x1.000d0ap-1
src/math/special/fma.h:726: RU fmal(0x1.99bd3434c454bp+0,0x1.03cb8e4115bdep+0,0x1.109f107188b08p+0) want 0x1.5837a47d37fafp+1 got 0x1.cfdec0c00a001p+0 ulperr -1975290892910592.000 = -0x1.c1211p+50 + 0x1.ffc604p-2
src/math/special/fma.h:727: RU fmal(0x1.ba930a0a78ed2p+0,0x1.8c24e8d67f636p+0,0x1.ac49dbfbf8affp+0) want 0x1.164947ae6a5dap+2 got -0x1.33e3b04ecffffp-2 ulperr -5234191281160192.000 = -0x1.298782p+52 + 0x1.000268p-1
src/math/special/fma.h:728: RU fmal(0x1.be224ad773191p+0,0x1.d96b77169731fp+0,0x1.662cfb75d8edep+0) want 0x1.27cd67e720f79p+2 got 0x1.e4711611c7801p+1 ulperr -942615600037888.000 = -0x1.aca6e6p+49 + 0x1.ffc372p-2
src/math/special/fma.h:729: RU fmal(0x1.59e7a1b0bdb3cp+0,0x1.2decba4d46421p+0,0x1.88f4062e96df5p+0) want 0x1.90749e4794f7ap+1 got -0x1.b3c84a9a87fffp-1 ulperr -8961479327875072.000 = -0x1.fd66bp+52 + 0x1.000d9ep-1
src/math/special/fma.h:730: RU fmal(0x1.22edf4b4da9a7p+0,0x1.dfa8d65f506cdp+0,0x1.2799208da2fbap+0) want 0x1.a45a1e99ed7a9p+1 got 0x1.a0bdfb8976001p-1 ulperr -5562059420860416.000 = -0x1.3c2a9ep+52 + 0x1.ffe5f4p-2
src/math/special/fma.h:731: RU fmal(0x1.ad5b991a2a279p+0,0x1.f02fd26706024p+0,0x1.831cdd5c8797cp+0) want 0x1.30d3a2ac90a61p+2 got 0x1.c7c15e1c82001p+1 ulperr -1353701616779264.000 = -0x1.33cbcep+50 + 0x1.ffc708p-2
src/math/special/fma.h:732: RU fmal(0x1.531f9620e764ap+0,0x1.cad61b54d4425p+0,0x1.df817cae8a9afp+0) want 0x1.0fd4e7f8671ddp+2 got 0x1.8e74e26059001p+1 ulperr -1277252004216832.000 = -0x1.2269dap+50 + 0x1.ffce32p-2
src/math/special/fma.h:733: RU fmal(0x1.629a5ad79494fp+0,0x1.049e58693f4c4p+0,0x1.45b0109e4d00cp+0) want 0x1.5758154e14966p+1 got -0x1.01173c9c1ffffp-3 ulperr -6322846842224640.000 = -0x1.676988p+52 + 0x1.000202p-1
src/math/special/fma.h:734: RU fmal(0x1.2f52b53f9240ap+0,0x1.1d5c686dbb0dap+0,0x1.6da3e392a4fd4p+0) want 0x1.5fe03a6795913p+1 got 0x1.5bdb7d9084001p+0 ulperr -3130480060792832.000 = -0x1.63e4f6p+51 + 0x1.ffd484p-2
src/math/special/fma.h:735: RU fmal(0x1.058667552b49ep+0,0x1.23307bacc1c42p+0,0x1.5b059b47cd8f5p+0) want 0x1.423f752486d14p+1 got -0x1.4bfb042743fffp+0 ulperr -8589175993401344.000 = -0x1.e83cf6p+52 + 0x1.0014cp-1
src/math/special/fma.h:736: RU fmal(0x1.a717d95337ed8p+0,0x1.2b1c37846aaadp+0,0x1.be65672f885b1p+0) want 0x1.d65e72303c076p+1 got -0x1.7e0573ec03fffp+1 ulperr -14995406941323264.000 = -0x1.aa31f2p+53 + 0x1.002fcp-1
src/math/special/fma.h:737: RU fmal(0x1.deb79287b3d32p+0,0x1.62776b829babap+0,0x1.67daf18bd2eb1p+0) want 0x1.ff5a0d45c69d7p+1 got 0x1.ad881652a0001p-3 ulperr -8523519902089216.000 = -0x1.e4818ap+52 + 0x1.fff94ap-2
src/math/special/fma.h:738: RU fmal(0x1.fbf12d3a6de91p+0,0x1.879fe6124f11p+0,0x1.9f3f1247a8641p+0) want 0x1.2a126c6980019p+2 got 0x1.45e3d61a84001p+2 ulperr 489379780886528.000 = 0x1.bd169cp+48 + 0x1.ffae88p-2
src/math/special/fma.h:739: RU fmal(0x1.c589628460e01p+0,0x1.e1bec1c797533p+0,0x1.349f30cdb84bbp+0) want 0x1.2286118b6f6e6p+2 got -0x1.8e9d95e0667ffp+1 ulperr -8617206560587776.000 = -0x1.e9d4dcp+52 + 0x1.0018eap-1
src/math/special/fma.h:740: RU fmal(0x1.46fd6c2c924ebp+0,0x1.65e2f02e730a1p+0,0x1.37739d2751098p+0) want 0x1.804a71c1f1273p+1 got 0x1.855d7947cb001p+0 ulperr -3335623268106240.000 = -0x1.7b376ap+51 + 0x1.ffcf54p-2
src/math/special/fma.h:741: RU fmal(0x1.f99e595ae11fdp+0,0x1.bd33d9a1d81bp+0,0x1.932a2a2e244c1p+0) want 0x1.409e34f8f2f8ap+2 got -0x1.7a49668943fffp+2 ulperr -12295260860317696.000 = -0x1.5d73ccp+53 + 0x1.002f4ap-1
src/math/special/fma.h:742: RU fmal(0x1.59ea1e56bfe55p+0,0x1.6f46b7d412a44p+0,0x1.80f2bc9a32cc3p+0) want 0x1.b89c7640e33p+1 got -0x1.ca180bfb5ffffp-3 ulperr -8254993178034176.000 = -0x1.d53df6p+52 + 0x1.000394p-1
src/math/special/fma.h:743: RU fmal(0x1.61490fcb44129p+0,0x1.0038ec4fc35c2p+0,0x1.df7436ed7a7b7p+0) want 0x1.a085ea68d05dp+1 got -0x1.5ed2c690f6fffp+1 ulperr -13499301254660096.000 = -0x1.7fac58p+53 + 0x1.002bdap-1
src/math/special/fma.h:744: RU fmal(0x1.d41b98788502bp+0,0x1.1a7b77843aca6p+0,0x1.05be891837d36p+0) want 0x1.8523596cecedap+1 got -0x1.48c8fc403bfffp-1 ulperr -8291801584631808.000 = -0x1.d75598p+52 + 0x1.000a46p-1
src/math/special/fma.h:745: RU fmal(0x1.3153cf6f69af9p+0,0x1.aaa947e38e57ap+0,0x1.8519f9b590645p+0) want 0x1.c0fcab7b46369p+1 got 0x1.25f4f4bd50001p-3 ulperr -7575453653008384.000 = -0x1.ae9d5cp+52 + 0x1.fffb68p-2
src/math/special/fma.h:746: RU fmal(0x1.c25a1f73581aap+0,0x1.0a51ffca372ap+0,0x1.0c77e3ebac5f3p+0) want 0x1.707ce48c7d72ep+1 got -0x1.3261c9a0dffffp+1 ulperr -11872435288670208.000 = -0x1.516f56p+53 + 0x1.00264cp-1
src/math/special/fma.h:747: RU fmal(0x1.829c2cde44b7p+0,0x1.f692e86d8cb36p+0,0x1.455e72d264bfp+0) want 0x1.0f16a3b8b3f98p+2 got -0x1.684386465ffffp+0 ulperr -6353494655107072.000 = -0x1.692784p+52 + 0x1.000b42p-1
src/math/special/fma.h:748: RU fmal(0x1.94729588dcc69p+0,0x1.c3bb794c6edf8p+0,0x1.9da4e94d262d2p+0) want 0x1.19d4bd84d9fd3p+2 got 0x1.e1b9a27570001p-1 ulperr -3898698849320960.000 = -0x1.bb3b12p+51 + 0x1.fff0f2p-2
src/math/special/fma.h:749: RU fmal(0x1.e6a5e7e39c3d5p+0,0x1.1b69af2bdd978p+0,0x1.e7ef1eafa119cp+0) want 0x1.00ac5b44c9f32p+2 got -0x1.6777d5d393fffp+1 ulperr -7677358731427840.000 = -0x1.b46846p+52 + 0x1.001678p-1
src/math/special/fma.h:750: bad fp exception: RU fmal(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022)=0x1.b594d0e4368fp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:750: RU fmal(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022) want 0x1.b594d0e4368fp-1022 got -0x1.9dedc9560fffep-1023 ulperr -11338968138252288.000 = -0x1.4245dap+53 + 0x1.0019dep-1
src/math/special/fma.h:751: RU fmal(0x1.022db53c98d14p-1022,0x1.21157eef74848p-2,0x1.2f880432b1bc1p-1022) want 0x1.786ad60a02b3ep-1022 got -0x1.150255ac97fffp-1022 ulperr -11495198647386112.000 = -0x1.46b694p+53 + 0x1.0022ap-1
src/math/special/fma.h:752: bad fp exception: RU fmal(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022)=0x1.cbb085199a3f6p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:752: RU fmal(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022) want 0x1.cbb085199a3f6p-1022 got -0x1.6ed115da2f7fep-1023 ulperr -11313497908445184.000 = -0x1.418c88p+53 + 0x1.0016eep-1
src/math/special/fma.h:753: bad fp exception: RU fmal(0x1.adbc3a9d816dep-1022,0x1.e039d4431e3cdp-2,0x1.93ceef6fe18a2p-1022)=0x1.2eabb7dc0e2f1p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:753: RU fmal(0x1.adbc3a9d816dep-1022,0x1.e039d4431e3cdp-2,0x1.93ceef6fe18a2p-1022) want 0x1.2eabb7dc0e2f1p-1021 got 0x1.ef7b6794e3002p-1023 ulperr -3145487213395968.000 = -0x1.6599bap+51 + 0x1.ffe108p-2
src/math/special/fma.h:754: RU fmal(0x1.645aa5c2df3afp-1022,0x1.649edfcad854fp-2,0x1.8b43e0bbaeb01p-1022) want 0x1.03af571d2b505p-1021 got 0x1.0ce86163c0201p-1021 ulperr 162249452814336.000 = 0x1.27214ap+47 + 0x1.ffbcc6p-2
src/math/special/fma.h:755: bad fp exception: RU fmal(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022)=0x1.ad9ce7fcefa4p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:755: RU fmal(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022) want 0x1.ad9ce7fcefa4p-1022 got -0x1.12bc4931e5ff8p-1025 ulperr -8161979755659264.000 = -0x1.cff47p+52 + 0x1.00044ap-1
src/math/special/fma.h:756: RU fmal(0x1.8ee3feb00c3e7p-1022,0x1.53bd9353313bcp-2,0x1.5501b57dc3b6fp-1022) want 0x1.d9598906f0bb4p-1022 got -0x1.4660b83f56fffp-1022 ulperr -14068955652030464.000 = -0x1.8fdd2p+53 + 0x1.0028ccp-1
src/math/special/fma.h:757: RU fmal(0x1.161225cfa61e2p-1022,0x1.b6dd69a0af5bp-2,0x1.924ffc3ead5c3p-1022) want 0x1.04be6fc25367cp-1021 got -0x1.f3ab56daa7fffp-1022 ulperr -8982192344530944.000 = -0x1.fe941ap+52 + 0x1.001f3ap-1
src/math/special/fma.h:758: bad fp exception: RU fmal(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022)=0x1.70b6c3169f044p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:758: RU fmal(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022) want 0x1.70b6c3169f044p-1022 got -0x1.a779baefbe7fep-1023 ulperr -10211413595258880.000 = -0x1.2239dp+53 + 0x1.001a78p-1
src/math/special/fma.h:759: RU fmal(0x1.ce0e2ea55040ep-1022,0x1.ce5a55fa3828dp-2,0x1.f2f444d50ce59p-1022) want 0x1.61ca36f5a8a7ap-1021 got -0x1.173f0cea127ffp-1022 ulperr -8680213730820096.000 = -0x1.ed69bcp+52 + 0x1.001174p-1
src/math/special/fma.h:760: bad fp exception: RU fmal(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022)=0x1.1440cf1c105ecp-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:760: RU fmal(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022) want 0x1.1440cf1c105ecp-1021 got -0x1.f88fda5ffffp-1030 ulperr -4877233327964160.000 = -0x1.153d16p+52 + 0x1.00002p-1
src/math/special/fma.h:761: bad fp exception: RU fmal(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022)=0x1.1186e1f77012ep-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:761: RU fmal(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022) want 0x1.1186e1f77012ep-1021 got -0x1.2ffba526fbff8p-1025 ulperr -5146168610783232.000 = -0x1.24869cp+52 + 0x1.00026p-1
src/math/special/fma.h:762: bad fp exception: RU fmal(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022)=0x1.8d86310bad176p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:762: RU fmal(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022) want 0x1.8d86310bad176p-1022 got -0x1.1b755c367f7fep-1023 ulperr -9486645380251648.000 = -0x1.0da06ep+53 + 0x1.0011b8p-1
src/math/special/fma.h:763: RU fmal(0x1.fb3391a4b1d23p-1022,0x1.4d8705b057caep-2,0x1.d026cb6dae73bp-1022) want 0x1.3aad18b424c68p-1021 got -0x1.0a1784c7c6bffp-1021 ulperr -10216978799132672.000 = -0x1.22624ep+53 + 0x1.002142p-1
src/math/special/fma.h:764: bad fp exception: RU fmal(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022)=0x1.c0048fd33a418p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:764: RU fmal(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022) want 0x1.c0048fd33a418p-1022 got -0x1.d026e457f0ffcp-1024 ulperr -9922974329077760.000 = -0x1.1a0724p+53 + 0x1.000e82p-1
src/math/special/fma.h:765: bad fp exception: RU fmal(0x1.aa9eff070281cp-1022,0x1.fab05661b48ebp-2,0x1.cbe2af6c69c6ep-1022)=0x1.4f7ddbe122765p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:765: RU fmal(0x1.aa9eff070281cp-1022,0x1.fab05661b48ebp-2,0x1.cbe2af6c69c6ep-1022) want 0x1.4f7ddbe122765p-1021 got 0x1.9e529858da002p-1023 ulperr -4079820841418752.000 = -0x1.cfd26ap+51 + 0x1.ffe61ap-2
src/math/special/fma.h:766: bad fp exception: RU fmal(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022)=0x1.e0e762ee2e7c6p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:766: RU fmal(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022) want 0x1.e0e762ee2e7c6p-1022 got -0x1.e2fe0f96ebffep-1023 ulperr -12708595627982848.000 = -0x1.693334p+53 + 0x1.001e3p-1
src/math/special/fma.h:767: RU fmal(0x1.4dab43918a9a8p-1022,0x1.ed667442b4751p-2,0x1.3f25f82e02e3ep-1022) want 0x1.dfec0ee732dcbp-1022 got 0x1.6a41c4d18a001p-1022 ulperr -2069987942465536.000 = -0x1.d6a928p+50 + 0x1.ffa57p-2
src/math/special/fma.h:768: RU fmal(0x1.7943735951931p-1022,0x1.fa6a357c5c9ddp-2,0x1.0bed44b0b71b4p-1022) want 0x1.c6803a6059abfp-1022 got 0x1.0e970cce13401p-1022 ulperr -3235393763803136.000 = -0x1.6fd25ap+51 + 0x1.ffbc5ap-2
src/math/special/fma.h:769: bad fp exception: RU fmal(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022)=0x1.8640492c4595ap-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:769: RU fmal(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022) want 0x1.8640492c4595ap-1022 got -0x1.3271a1b37ffep-1027 ulperr -7033839486500864.000 = -0x1.8fd3d6p+52 + 0x1.000132p-1
src/math/special/fma.h:770: RU fmal(0x1.f52172c56bdf5p-1022,0x1.672b2de422734p-2,0x1.7bc5d708e5a34p-1022) want 0x1.15c5b95145cc7p-1021 got 0x1.3cf4f71d18801p-1021 ulperr 689341714137088.000 = 0x1.3979fp+49 + 0x1.ffb0c2p-2
src/math/special/fma.h:771: bad fp exception: RU fmal(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022)=0x1.e7fa0dd76fbfp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:771: RU fmal(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022) want 0x1.e7fa0dd76fbfp-1022 got -0x1.60a5d541afffcp-1024 ulperr -10135538703007744.000 = -0x1.2011cp+53 + 0x1.000b06p-1
src/math/special/fma.h:772: bad fp exception: RU fmal(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022)=0x1.b63a7f56fce2p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:772: RU fmal(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022) want 0x1.b63a7f56fce2p-1022 got -0x1.497a9bc51fffcp-1024 ulperr -9158460486713344.000 = -0x1.044c92p+53 + 0x1.000a4cp-1
src/math/special/fma.h:773: RU fmal(0x1.f73d5f4e81fd8p-1022,0x1.7ccff2642124ap-2,0x1.e7d836a0c8308p-1022) want 0x1.517f1763126d4p-1021 got -0x1.06939f3371fffp-1021 ulperr -10556596895612928.000 = -0x1.2c095ap+53 + 0x1.0020d2p-1
src/math/special/fma.h:774: RU fmal(0x1.b4328925969fbp-1022,0x1.8fa02832a22d5p-2,0x1.2084598e2f8c6p-1022) want 0x1.cabf43838dc52p-1022 got -0x1.7c61d65f0a3ffp-1022 ulperr -14762118276448256.000 = -0x1.a3908cp+53 + 0x1.002f8cp-1
src/math/special/fma.h:775: bad fp exception: RU fmal(0x1.66ee60a92676fp-1022,0x1.eddd2e7681ce4p-2,0x1.b81d57daeb3a7p-1022)=0x1.329c918ffb683p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:775: RU fmal(0x1.66ee60a92676fp-1022,0x1.eddd2e7681ce4p-2,0x1.b81d57daeb3a7p-1022) want 0x1.329c918ffb683p-1021 got 0x1.cd379885b8008p-1025 ulperr -4886854591578112.000 = -0x1.15c918p+52 + 0x1.fff8ccp-2
src/math/special/fma.h:776: bad fp exception: RU fmal(0x1.ff2737585895dp-1022,0x1.fb4bf3828ae4ap-2,0x1.4a866847740fp-1022)=0x1.23e07e4dbbeabp-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:776: RU fmal(0x1.ff2737585895dp-1022,0x1.fb4bf3828ae4ap-2,0x1.4a866847740fp-1022) want 0x1.23e07e4dbbeabp-1021 got 0x1.46c53f7571002p-1023 ulperr -3697601232764928.000 = -0x1.a45e5cp+51 + 0x1.ffeb94p-2
src/math/special/fma.h:777: bad fp exception: RU fmal(0x1.5e2008d269a86p-1022,0x1.507bbbe4d78eep-2,0x1.6220c6f83f636p-1022)=0x1.d52d9874f1c75p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:777: RU fmal(0x1.5e2008d269a86p-1022,0x1.507bbbe4d78eep-2,0x1.6220c6f83f636p-1022) want 0x1.d52d9874f1c75p-1022 got 0x1.eda0503c4a002p-1023 ulperr -3911886277967872.000 = -0x1.bcbaep+51 + 0x1.ffc24cp-2
src/math/special/fma.h:778: bad fp exception: RU fmal(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022)=0x1.9864925e2fb1p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:778: RU fmal(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022) want 0x1.9864925e2fb1p-1022 got -0x1.53ae580e8bff8p-1025 ulperr -7931489261977600.000 = -0x1.c2da5cp+52 + 0x1.00054ep-1
src/math/special/fma.h:779: RU fmal(0x1.7b353b81e793dp-1022,0x1.82b426f874c6dp-2,0x1.d92b19d21fd5cp-1022) want 0x1.342fb0c544a79p-1021 got 0x1.2af4c8aebe401p-1022 ulperr -2792024021401600.000 = -0x1.3d6a98p+51 + 0x1.ffdaa2p-2
src/math/special/fma.h:780: bad fp exception: RU fmal(0x1.5be667823370ap-1022,0x1.a8a99b163869bp-2,0x1.95456b68dc3bcp-1022)=0x1.12c638de03c71p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:780: RU fmal(0x1.5be667823370ap-1022,0x1.a8a99b163869bp-2,0x1.95456b68dc3bcp-1022) want 0x1.12c638de03c71p-1021 got 0x1.49af7fc787002p-1023 ulperr -3383908095754240.000 = -0x1.80b4bp+51 + 0x1.ffeb66p-2
src/math/special/fma.h:781: bad fp exception: RU fmal(0x1.17b0fc6c850e5p-1022,0x1.d1d0a4853c315p-2,0x1.36b79f7c0c24p-1022)=0x1.b5f2baff5635dp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:781: RU fmal(0x1.17b0fc6c850e5p-1022,0x1.d1d0a4853c315p-2,0x1.36b79f7c0c24p-1022) want 0x1.b5f2baff5635dp-1022 got 0x1.6a1930472401p-1026 ulperr -7306333686595584.000 = -0x1.9f5126p+52 + 0x1.fffa58p-2
src/math/special/fma.h:782: RU fmal(0x1.bd97819bacfd8p-1022,0x1.2c25f267ba4eep-2,0x1.804b5204a3f3ap-1022) want 0x1.01739c190fd97p-1021 got 0x1.b9e166e6b4001p-1022 ulperr -642314640818176.000 = -0x1.241744p+49 + 0x1.ffc8c4p-2
src/math/special/fma.h:783: RU fmal(0x1.596577053873dp-1022,0x1.3562ab2d29949p-2,0x1.b3f1ee75db6e7p-1022) want 0x1.0e268a498009bp-1021 got 0x1.e8136bc159401p-1022 ulperr -459377991483392.000 = -0x1.a1cd46p+48 + 0x1.ffc2fep-2
src/math/special/fma.h:784: bad fp exception: RU fmal(0x1.3c7a68cf0f7b3p-1022,0x1.9a55c15b167bdp-2,0x1.7635b7b163c07p-1022)=0x1.f5073b93b7b81p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:784: RU fmal(0x1.3c7a68cf0f7b3p-1022,0x1.9a55c15b167bdp-2,0x1.7635b7b163c07p-1022) want 0x1.f5073b93b7b81p-1022 got 0x1.75f9a97213802p-1023 ulperr -5524660993130496.000 = -0x1.3a0a66p+52 + 0x1.ffd14p-2
src/math/special/fma.h:785: RU fmal(0x1.5825164bc4068p-1022,0x1.dcbb6e5ff3245p-2,0x1.52fc3be0e84dap-1022) want 0x1.f334771c2dcfbp-1022 got 0x1.2b86ba6b02001p-1022 ulperr -3512783958179840.000 = -0x1.8f5b78p+51 + 0x1.ffb51ep-2
src/math/special/fma.h:786: RU fmal(0x1.139ea77b760ecp+1022,0x1.9b25f2fd017eap+2,-0x1.bc16788922b6fp+1023) want 0x1.b93aac527380fp+1023 got 0x1.c3ec4f2ee0001p+1022 ulperr -3787028357447680.000 = -0x1.ae8908p+51 + 0x1.ffc782p-2
src/math/special/fma.h:787: RU fmal(0x1.0e6f9c1657d7cp+1022,0x1.4d5c6b55ab5f1p+2,-0x1.e027dd5742e2cp+1023) want 0x1.c0538372b4bbfp+1022 got 0x1.54dede6de0001p+1021 ulperr -4888708943708160.000 = -0x1.15e414p+52 + 0x1.ffd564p-2
src/math/special/fma.h:788: RU fmal(0x1.1182524fa411cp+1022,0x1.a3dba56842d19p+2,-0x1.c1ad59474d71fp+1023) want 0x1.bf78969300a77p+1023 got 0x1.8651491ef0001p+1022 ulperr -4438724683235328.000 = -0x1.f89fe4p+51 + 0x1.ffcf36p-2
src/math/special/fma.h:789: RU fmal(0x1.1cbf4fb8ec82p+1022,0x1.5e32019a84fbbp+2,-0x1.985af08f32edep+1023) want 0x1.72af6bbad4a29p+1023 got 0x1.a68c1c1ec0001p+1023 ulperr 912367152005120.000 = 0x1.9ee584p+49 + 0x1.ff965cp-2
src/math/special/fma.h:790: RU fmal(0x1.311e25c6db346p+1022,0x1.4e30db6c4b51dp+2,-0x1.7681f7a9786a7p+1023) want 0x1.a61d29434fc14p+1023 got -0x1.791d1988fffffp+1017 ulperr -7529566222417920.000 = -0x1.ac019cp+52 + 0x1.0000bcp-1
src/math/special/fma.h:791: RU fmal(0x1.1201cf577052fp+1022,0x1.59730b2db7a16p+2,-0x1.56f1a64a078d5p+1023) want 0x1.8c8d801df34dap+1023 got -0x1.3048609fd7fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.001304p-1
src/math/special/fma.h:792: RU fmal(0x1.3e52335b76e81p+1022,0x1.4dbd56f857479p+2,-0x1.509340c11bd2ep+1023) want 0x1.ed6576837f654p+1023 got -0x1.e498d5441bfffp+1022 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.001e4ap-1
src/math/special/fma.h:793: RU fmal(0x1.18566b4f843cbp+1022,0x1.444fba10eaf29p+2,-0x1.f927beae57f0ap+1023) want 0x1.9a433b979655ap+1022 got 0x1.a048d2820c001p+1022 ulperr 105937230626816.000 = 0x1.8165bcp+46 + 0x1.004bf6p-1
src/math/special/fma.h:794: RU fmal(0x1.3fbe544fe1be8p+1022,0x1.2d2a5fda03639p+2,-0x1.007407dbfd03cp+1023) want 0x1.efdb644b613e6p+1023 got -0x1.e14223655ffffp+1022 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.001e14p-1
src/math/special/fma.h:795: RU fmal(0x1.263a0d3bc2e4p+1022,0x1.4cc198adbc651p+2,-0x1.734b1c1f7fdb8p+1023) want 0x1.899878afc0fa3p+1023 got 0x1.a136204480001p+1023 ulperr 415454233362432.000 = 0x1.79da7ap+48 + 0x1.ff97b2p-2
src/math/special/fma.h:796: RU fmal(0x1.5bf4aec8efc8ep+1022,0x1.555f0341516c9p+2,-0x1.c706408acd14cp+1023) want 0x1.d8f5e18b868bdp+1023 got 0x1.3e5679fdf8001p+1022 ulperr -5520279589617664.000 = -0x1.39caa4p+52 + 0x1.ffd836p-2
src/math/special/fma.h:797: RU fmal(0x1.1e57f1af78279p+1022,0x1.34bc0c7f082b3p+2,-0x1.497b92c1365edp+1023) want 0x1.692cb7ec68a94p+1023 got -0x1.c0a1f29b27fffp+1021 ulperr -8326959113175040.000 = -0x1.d95534p+52 + 0x1.000e06p-1
src/math/special/fma.h:798: RU fmal(0x1.1d9824cd73511p+1022,0x1.1d557ddfe47ffp+2,-0x1.556cdb1d20a72p+1023) want 0x1.2736a6b6e35f3p+1023 got 0x1.bc6f9c9778001p+1021 ulperr -3238800209739776.000 = -0x1.70357ep+51 + 0x1.ffe43ap-2
src/math/special/fma.h:799: RU fmal(0x1.1ff85a24aff31p+1022,0x1.39ab374b2680dp+2,-0x1.35e6b07b651b8p+1023) want 0x1.8bc7ce2087081p+1023 got 0x1.84b319bafa001p+1023 ulperr -124568110891008.000 = -0x1.c52d18p+46 + 0x1.ff9ed4p-2
src/math/special/fma.h:800: RU fmal(0x1.0449b3965227ep+1022,0x1.4430d4441f9f2p+2,-0x1.a6966c96307ep+1023) want 0x1.d94eda8c81772p+1022 got -0x1.992ed6b71ffffp+1021 ulperr -11925733685329920.000 = -0x1.52f322p+53 + 0x1.001992p-1
src/math/special/fma.h:801: RU fmal(0x1.3c91fa00fd0c7p+1022,0x1.1b6661c0b0303p+2,-0x1.f1f2846b64483p+1023) want 0x1.95eae0d2644d4p+1022 got 0x1.9985d8eaa0001p+1019 ulperr -6240425346072576.000 = -0x1.62ba24p+52 + 0x1.00799ap-1
src/math/special/fma.h:802: RU fmal(0x1.0979b36d46534p+1022,0x1.12fa205f41f7fp+2,-0x1.a83ecf4544a63p+1023) want 0x1.2420f34e2aa3dp+1022 got -0x1.335a0fe67ffffp+1019 ulperr -5815056080044032.000 = -0x1.4a8c34p+52 + 0x1.ff099ap-2
src/math/special/fma.h:803: RU fmal(0x1.4c89df582a599p+1022,0x1.55f3dc473ea8fp+2,-0x1.e35037292ddfp+1023) want 0x1.95109fdbc3772p+1023 got -0x1.afa3b29623fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.001afap-1
src/math/special/fma.h:804: RU fmal(0x1.35ee0a669c4fbp+1022,0x1.2263cb63f386ap+2,-0x1.449218ae35ac7p+1023) want 0x1.7a8ed977d817bp+1023 got 0x1.47da9ddfb8001p+1022 ulperr -3775828693352448.000 = -0x1.ad4314p+51 + 0x1.ffd704p-2
src/math/special/fma.h:805: RU fmal(0x1.117cc860f61bcp+1022,0x1.440985b25d994p+2,-0x1.d7a7d82000449p+1023) want 0x1.b960b7088e75p+1022 got 0x1.ddfba372c0001p+1022 ulperr 643964982001664.000 = 0x1.24d764p+49 + 0x1.00444p-1
src/math/special/fma.h:806: RU fmal(0x1.1e78a37be320fp+1022,0x1.0db0fce62287bp+2,-0x1.376337da5eb53p+1023) want 0x1.24326b9956dfcp+1023 got -0x1.d2881b3595fffp+1023 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.003a52p-1
src/math/special/fma.h:807: RU fmal(0x1.0c79b5c8331c2p+1022,0x1.0aba6ea746b5p+2,-0x1.c86f1fcaf0741p+1023) want 0x1.9c135bb2cff85p+1021 got -0x1.cc298babfffffp+1019 ulperr -9273125376098304.000 = -0x1.078edep+53 + 0x1.fe1cc2p-2
src/math/special/fma.h:808: RU fmal(0x1.556c4c072f272p+1022,0x1.347758d7d4eb5p+2,-0x1.c6fe4f24b248dp+1023) want 0x1.6fcc9f756df6ep+1023 got -0x1.f6f4c76597fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.001f7p-1
src/math/special/fma.h:809: RU fmal(-0x1.e8349b891b2fp-1,0x1.4a6dec9b72578p-1,0x1.3b6151ce809ddp-1) want 0x1.3a62fe330b356p-11 got -0x1.d97120fffffffp-11 ulperr -13859626462216192.000 = -0x1.89ea0ep+53 + 0x1.003b2ep-1
src/math/special/fma.h:810: RU fmal(0x1.2996632ac7d74p-1,-0x1.bb3c58b654d94p-1,0x1.01a6660e64a31p-1) want 0x1.ed045bb956a8fp-15 got -0x1.070d61fffffffp-15 ulperr -13300911346548736.000 = -0x1.7a08dep+53 + 0x1.0aa0e2p-1
src/math/special/fma.h:811: RU fmal(-0x1.c602e894c1df8p-1,0x1.a1c980e7d3f94p-1,0x1.7271244b43386p-1) want -0x1.ba251fe026e5bp-15 got -0x1.af2b6cp-15 ulperr 193081311756288.000 = 0x1.5f367ep+47 + 0x1.fa6bcap-2
src/math/special/fma.h:812: RU fmal(-0x1.c84baf47e85cp-1,0x1.770b5149ef2ep-1,0x1.4d80f139320bap-1) want -0x1.79277433b9e23p-10 got 0x1.d4b6fp-11 ulperr 10757823629623296.000 = 0x1.31c178p+53 + 0x1.ffc56ap-2
src/math/special/fma.h:813: RU fmal(-0x1.36e667dcf9c6p-1,0x1.2591f82556b88p-1,0x1.2452a0f795f95p-1) want 0x1.c83c8e63c15ap-3 got -0x1.221ccbfffffffp-12 ulperr -8036166204915712.000 = -0x1.c8cd9cp+52 + 0x1.000012p-1
src/math/special/fma.h:814: RU fmal(0x1.88b2cede61e4cp-1,-0x1.71dcab5ad9e9p-3,0x1.32b27fea2ae97p-3) want 0x1.70461909b25e3p-7 got -0x1.affe57fffffffp-17 ulperr -6486162973655040.000 = -0x1.70b218p+52 + 0x1.00000ep-1
src/math/special/fma.h:815: RU fmal(0x1.8d1e44002c98p-3,-0x1.af9fdfb347834p-1,0x1.e280942fb4146p-4) want -0x1.761ac23896dfdp-5 got 0x1.0bec48p-14 ulperr 6590522625884160.000 = 0x1.76a0bap+52 + 0x1.ffffdep-2
src/math/special/fma.h:816: RU fmal(0x1.236e8cb9492c8p-1,-0x1.d37443a57f1c4p-1,0x1.ca10df801aabcp-4) want -0x1.a1a2cdf0138f9p-2 got 0x1.f090cab7p-5 ulperr 8439088898113536.000 = 0x1.dfb4e8p+52 + 0x1.fff07cp-2
src/math/special/fma.h:817: RU fmal(-0x1.6ad943e610fb8p-1,-0x1.cef92a7bb18bcp-1,0x1.f28587d8fb0ep-4) want 0x1.866b5204b9aedp-1 got -0x1.8c9eb9a6fffffp-5 ulperr -7304415446827008.000 = -0x1.9f353cp+52 + 0x1.00031ap-1
src/math/special/fma.h:818: RU fmal(-0x1.60a8569a5d894p-1,-0x1.ca07e29dd171cp-1,0x1.b6c475ace09ecp-4) want 0x1.72549291e2f7bp-1 got -0x1.b6fd181e7ffffp-5 ulperr -6997593720619008.000 = -0x1.8dc464p+52 + 0x1.00036ep-1
src/math/special/fma.h:819: RU fmal(0x1.d1962720d678cp-1,-0x1.4548ee45c4084p-1,0x1.f416ab193d75cp-4) want -0x1.d2929879dc853p-2 got 0x1.fc38e6f4p-8 ulperr 8347732259373056.000 = 0x1.da837ep+52 + 0x1.fffe04p-2
src/math/special/fma.h:820: RU fmal(-0x1.9ddcb295a7d64p-1,0x1.67fb3a2068a78p-1,0x1.da9cd4597fe0ap-4) want -0x1.cf4f6eb4fc5d8p-2 got 0x1.59da5512p-6 ulperr 8530910467063808.000 = 0x1.e4ed16p+52 + 0x1.fffa98p-2
src/math/special/fma.h:821: RU fmal(0x1.c00d16ed45b88p+0,0x1.c787eddda3664p+0,0x1.1e3e6f0cc1802p-5) want 0x1.931b8f379dcc4p+1 got -0x1.63fb63b7fffffp-6 ulperr -7140470102687744.000 = -0x1.95e384p+52 + 0x1.000058p-1
src/math/special/fma.h:822: RU fmal(0x1.19c2a2372c184p+0,-0x1.cb506961c19fp+0,0x1.db1abf3f7ba3ap-6) want -0x1.f21c0eab0bc18p+0 got 0x1.a29607ffffff8p-13 ulperr 8763735812341760.000 = 0x1.f22924p+52 + 0x1.fffffcp-2
src/math/special/fma.h:823: RU fmal(-0x1.3a263218ccd1cp+0,-0x1.e818d390df27cp+0,0x1.2a81ed71785f5p-5) want 0x1.3025ab0f63926p+1 got -0x1.bfdf0b9bfffffp-6 ulperr -5412167746584576.000 = -0x1.33a568p+52 + 0x1.00007p-1
src/math/special/fma.h:824: RU fmal(0x1.b0b041fbaca58p+0,-0x1.9d5f76d178e6p+0,0x1.0215c7bb84cf9p-6) want -0x1.5b52aec7ef4p+1 got 0x1.6be7a78p-7 ulperr 6135178246225920.000 = 0x1.5cbe98p+52 + 0x1.ffffa6p-2
src/math/special/fma.h:825: RU fmal(-0x1.377549d9a87f4p+0,-0x1.a13d4a03dd6d8p+0,0x1.f190388bc5cc6p-7) want 0x1.ff83bebbd6fe5p+0 got -0x1.e5a6a43ffffffp-9 ulperr -9015346807701504.000 = -0x1.003b48p+53 + 0x1.00001ep-1
src/math/special/fma.h:826: RU fmal(0x1.6a726c0762ac8p-1,-0x1.d32f2d30e483cp+0,0x1.f953eb70fbde6p-7) want -0x1.46c61b3070332p+0 got 0x1.e556e47fffffep-11 ulperr 5752835962568704.000 = 0x1.4702c8p+52 + 0x1.fffffp-2
src/math/special/fma.h:827: RU fmal(0x1.94cf2509d40cp-1,0x1.721976af6dfbp+0,0x1.f51a456921c3ep-7) want 0x1.28880842acc61p+0 got -0x1.effe1dfffffffp-8 ulperr -5250719389057024.000 = -0x1.2a7806p+52 + 0x1.00003ep-1
src/math/special/fma.h:828: RU fmal(0x1.b128eb0ad8728p-1,0x1.7682566a54268p+0,0x1.bd4122a074cafp-8) want 0x1.3e9469530e763p+0 got -0x1.6fe0c7bffffffp-9 ulperr -5617153650720768.000 = -0x1.3f4c58p+52 + 0x1.000016p-1
src/math/special/fma.h:829: RU fmal(0x1.c4ae75976e35cp+0,-0x1.11c329dd1160cp+0,0x1.9993f5e13c9bdp-8) want -0x1.e27d925b07cf1p+0 got 0x1.198edf6p-9 ulperr 8497737213411328.000 = 0x1.e30a5ap+52 + 0x1.ffffdcp-2
src/math/special/fma.h:830: RU fmal(-0x1.85f81f88fa3c4p+0,-0x1.17648a494fa18p-1,0x1.37d305113b48p-10) want 0x1.aa367b7490e58p-1 got -0x1.7a59ecffffffep-12 ulperr -7501265072291840.000 = -0x1.aa65c6p+52 + 0x1.000006p-1
src/math/special/fma.h:831: RU fmal(-0x1.311f2b4319efcp+0,0x1.abbb5272e3d18p-1,0x1.35841b7bdbcfep-10) want -0x1.fd337f24b39ep-1 got 0x1.4cbc317ffffffp-11 ulperr 8963678351130624.000 = 0x1.fd86bp+52 + 0x1.ffffecp-2
src/math/special/fma.h:832: RU fmal(0x1.ab94369a9a0dp-1,0x1.9d1e0e0aa3bacp+0,0x1.0a63ca87cfa78p-11) want 0x1.592173ee296b7p+0 got -0x1.fd8043ffffff8p-13 ulperr -6072696672616448.000 = -0x1.59315ep+52 + 0x1.000002p-1
src/math/special/fma.h:833: RN fmal(0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want 0x1.000000001p-1030 got 0x1p-1038 ulperr -17523466567680.000 = -0x1.fep+43 + -0x1p-28
src/math/special/fma.h:834: RN fmal(-0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want -0x1.000000003p-1030 got -0x1p-1038 ulperr 17523466567680.000 = 0x1.fep+43 + 0x1p-28
src/math/special/fma.h:835: RD fmal(0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want 0x1.000000001p-1030 got 0x1p-1038 ulperr -17523467616256.000 = -0x1.fe0002p+43 + -0x1p-28
src/math/special/fma.h:836: RD fmal(-0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want -0x1.00000000301p-1030 got -0x1.000000001p-1038 ulperr 17523466567680.000 = 0x1.fep+43 + -0x1p+0
src/math/special/fma.h:837: RU fmal(0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want 0x1.00000000101p-1030 got 0x1.000000001p-1038 ulperr -17523466567680.000 = -0x1.fep+43 + 0x1p+0
src/math/special/fma.h:838: RU fmal(-0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want -0x1.000000003p-1030 got -0x1p-1038 ulperr 17523467616256.000 = 0x1.fe0002p+43 + 0x1p-28
src/math/special/fma.h:839: RZ fmal(0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want 0x1.000000001p-1030 got 0x1p-1038 ulperr -17523466567680.000 = -0x1.fdfffep+43 + -0x1p-28
src/math/special/fma.h:840: RZ fmal(-0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want -0x1.000000003p-1030 got -0x1p-1038 ulperr 17523466567680.000 = 0x1.fdfffep+43 + 0x1p-28
src/math/special/fma.h:841: RN fmal(-0x1p-1000,0x1.000001p-74,0x1p-1022) want 0x1.ffffffffffffep-1023 got 0x1.ffep-1023 ulperr -1099511627776.000 = -0x1p+40 + 0x1p-24
src/math/special/fma.h:842: RU fmal(-0x1p-1000,0x1.000001p-74,0x1p-1022) want 0x1.ffffffffffffep-1023 got 0x1.ffe0000000002p-1023 ulperr -1099511562240.000 = -0x1.fffffep+39 + 0x1p-24
src/math/special/fma.h:843: RD fmal(-0x1p-1000,0x1.000001p-74,0x1p-1022) want 0x1.ffffffffffffcp-1023 got 0x1.ffep-1023 ulperr -1099511627776.000 = -0x1p+40 + -0x1.fffffep-1
src/math/special/fma.h:844: RZ fmal(-0x1p-1000,0x1.000001p-74,0x1p-1022) want 0x1.ffffffffffffcp-1023 got 0x1.ffep-1023 ulperr -1099511562240.000 = -0x1.fffffcp+39 + -0x1.fffffep-1
FAIL src/math/fmal.exe [status 1]
src/math/special/ilogb.h:1: bad fp exception: RN ilogb(0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogb.h:2: bad fp exception: RN ilogb(-0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogb.h:6: bad fp exception: RN ilogb(inf)=2147483647, want INVALID got 0
src/math/special/ilogb.h:7: bad fp exception: RN ilogb(-inf)=2147483647, want INVALID got 0
src/math/special/ilogb.h:8: bad fp exception: RN ilogb(nan)=-2147483648, want INVALID got 0
FAIL src/math/ilogb.exe [status 1]
src/math/special/ilogbf.h:1: bad fp exception: RN ilogbf(0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogbf.h:2: bad fp exception: RN ilogbf(-0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogbf.h:6: bad fp exception: RN ilogbf(inf)=2147483647, want INVALID got 0
src/math/special/ilogbf.h:7: bad fp exception: RN ilogbf(-inf)=2147483647, want INVALID got 0
src/math/special/ilogbf.h:8: bad fp exception: RN ilogbf(-nan)=-2147483648, want INVALID got 0
FAIL src/math/ilogbf.exe [status 1]
src/math/special/ilogb.h:1: bad fp exception: RN ilogbl(0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogb.h:2: bad fp exception: RN ilogbl(-0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogb.h:6: bad fp exception: RN ilogbl(inf)=2147483647, want INVALID got 0
src/math/special/ilogb.h:7: bad fp exception: RN ilogbl(-inf)=2147483647, want INVALID got 0
src/math/special/ilogb.h:8: bad fp exception: RN ilogbl(nan)=-2147483648, want INVALID got 0
FAIL src/math/ilogbl.exe [status 1]
X src/math/special/j0.h:7: RN j0(-0x1.33d132fd04a92p+1) want 0x1.092b2a541a68ep-19 got 0x1.092b2a541b1ap-19 ulperr 2833.704 = 0x1.624p+11 + -0x1.2ebdbp-2
X src/math/special/j0.h:8: RN j0(-0x1.33d15297be06fp+1) want 0x1.5352913be3275p-26 got 0x1.5352913ddb41bp-26 ulperr 2064806.000 = 0x1.f81a6p+20 + 0x1.c281e2p-7
X src/math/special/j0.h:9: RN j0(0x1.33d152e971b4p+1) want -0x1.19b7921f03c8ep-54 got -0x1.00209921727cbp-54 ulperr 450179413049344.000 = 0x1.996f9p+48 + 0x1.ece5dp-5
X src/math/special/j0.h:10: RN j0(0x1.6148f5b2c2e45p+2) want -0x1.fbb40985f6e34p-56 got -0x1.ebcb069d486ccp-56 ulperr 279895217274880.000 = 0x1.fd205ep+47 + -0x1.1ac8a8p-2
X src/math/special/j0.h:11: RN j0(0x1.14eb56cccdecap+3) want -0x1.6e8eeb22e5818p-54 got -0x1.6d2a820627412p-54 ulperr 24492348801024.000 = 0x1.64691cp+44 + -0x1.63ab44p-2
X src/math/special/j0.h:12: RN j0(0x1.c071b22fbbafap+1023) want -0x1.a348b1f34dd1ap-526 got -0x1.a348b1f34d33dp-526 ulperr 2525.019 = 0x1.3bap+11 + 0x1.3153c2p-6
X src/math/special/j0.h:13: RN j0(0x1.f7350b1701ef7p+0) want 0x1.f32b3a3640292p-3 got 0x1.f32b3a3640296p-3 ulperr 3.947 = 0x1p+2 + -0x1.b3bad8p-5
X src/math/sanity/jn.h:8: RN jn(5, 0x1.1f9ef934745cbp-1) want 0x1.e274364abf2d5p-17 got 0x1.e274364abf2d2p-17, ulperr -2.504 = -0x1.8p+1 + 0x1.fbe5c8p-2
X src/math/sanity/jnf.h:1: RN jnf(-2, -0x1.0223ap+3) want -0x1.863726p-4 got -0x1.86372ap-4, ulperr -2.009 = -0x1p+1 + -0x1.28885p-7
X src/math/sanity/jnf.h:8: RN jnf(5, 0x1.1f9efap-1) want 0x1.e2743cp-17 got 0x1.e27442p-17, ulperr 2.537 = 0x1.8p+1 + -0x1.d9c372p-2
X src/math/sanity/jnf.h:10: RN jnf(7, -0x1.5b86eap-1) want -0x1.b39a9cp-24 got -0x1.b39a98p-24, ulperr 1.621 = 0x1p+1 + -0x1.83c12p-2
X src/math/special/lgamma.h:145: RN lgamma(-0x1.4p+1) want -0x1.ccbf9f5ed0f16p-5,-1 got -0x1.ccbf9f5ed0f2p-5,-1 ulperr -10.465 = -0x1.4p+3 + -0x1.dc4f24p-2
X src/math/sanity/lgammaf.h:3: RN lgammaf(-0x1.0c34b4p+3) want -0x1.46d732p+3,-1 got -0x1.46d736p+3,-1 ulperr -1.621 = -0x1p+1 + 0x1.83dafep-2
X src/math/sanity/lgammaf_r.h:3: RN lgammaf_r(-0x1.0c34b4p+3) want -0x1.46d732p+3,-1 got -0x1.46d736p+3,-1 ulperr -1.621 = -0x1p+1 + 0x1.83dafep-2
src/math/special/lgamma.h:145: RN lgammal(-0x1.4p+1) want -0x1.ccbf9f5ed0f16p-5,-1 got -0x1.ccbf9f5ed0f2p-5,-1 ulperr -10.465 = -0x1.4p+3 + -0x1.dc4f24p-2
FAIL src/math/lgammal.exe [status 1]
X src/math/crlibm/pow.h:13: bad fp exception: RN pow(0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:72: bad fp exception: RN pow(0x1p-1074,0x1p+0)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:73: bad fp exception: RN pow(0x1p-1042,0x1p+0)=0x1p-1042, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:75: bad fp exception: RN pow(-0x1p-1074,0x1p+0)=-0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:76: bad fp exception: RN pow(-0x1p-1042,0x1p+0)=-0x1p-1042, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:284: bad fp exception: RN pow(0x1p-1073,0x1p+0)=0x1p-1073, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:300: bad fp exception: RN pow(0x1p-1024,0x1p+0)=0x1p-1024, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:304: bad fp exception: RN pow(0x1p-1023,0x1p+0)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:310: bad fp exception: RN pow(0x1.ffffffffffffcp-1023,0x1p+0)=0x1.ffffffffffffcp-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:313: bad fp exception: RN pow(0x1.ffffffffffffep-1023,0x1p+0)=0x1.ffffffffffffep-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:338: bad fp exception: RN pow(0x1p-537,0x1p+1)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:437: bad fp exception: RN pow(0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:498: bad fp exception: RN pow(0x1p+350,-0x1.8p+1)=0x1p-1050, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:499: bad fp exception: RN pow(0x1p+700,-0x1.8p+0)=0x1p-1050, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:516: bad fp exception: RN pow(0x1p+1023,-0x1p+0)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:544: bad fp exception: RN pow(-0x1p-1073,0x1p+0)=-0x1p-1073, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:548: bad fp exception: RN pow(-0x1p-1024,0x1p+0)=-0x1p-1024, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:551: bad fp exception: RN pow(-0x1p-1023,0x1p+0)=-0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:557: bad fp exception: RN pow(-0x1.ffffffffffffcp-1023,0x1p+0)=-0x1.ffffffffffffcp-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:560: bad fp exception: RN pow(-0x1.ffffffffffffep-1023,0x1p+0)=-0x1.ffffffffffffep-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:581: bad fp exception: RN pow(-0x1p-537,0x1p+1)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:655: bad fp exception: RN pow(-0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:695: bad fp exception: RN pow(-0x1p+350,-0x1.8p+1)=-0x1p-1050, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:708: bad fp exception: RN pow(-0x1p+1023,-0x1p+0)=-0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/powf.h:103: bad fp exception: RU powf(0x1.fffffep+127,0x1p+0)=0x1.fffffep+127, want 0 got INEXACT|OVERFLOW
X src/math/ucb/powf.h:530: bad fp exception: RN powf(0x1.fffff8p-127,0x1p+0)=0x1.fffff8p-127, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/powf.h:533: bad fp exception: RN powf(0x1.fffffcp-127,0x1p+0)=0x1.fffffcp-127, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/powf.h:719: bad fp exception: RN powf(-0x1.fffff8p-127,0x1p+0)=-0x1.fffff8p-127, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/powf.h:722: bad fp exception: RN powf(-0x1.fffffcp-127,0x1p+0)=-0x1.fffffcp-127, want 0 got INEXACT|UNDERFLOW
FAIL src/math/powf.exe [status 1]
src/math/crlibm/pow.h:13: bad fp exception: RN powl(0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:72: bad fp exception: RN powl(0x1p-1074,0x1p+0)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:73: bad fp exception: RN powl(0x1p-1042,0x1p+0)=0x1p-1042, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:75: bad fp exception: RN powl(-0x1p-1074,0x1p+0)=-0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:76: bad fp exception: RN powl(-0x1p-1042,0x1p+0)=-0x1p-1042, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:284: bad fp exception: RN powl(0x1p-1073,0x1p+0)=0x1p-1073, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:300: bad fp exception: RN powl(0x1p-1024,0x1p+0)=0x1p-1024, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:304: bad fp exception: RN powl(0x1p-1023,0x1p+0)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:310: bad fp exception: RN powl(0x1.ffffffffffffcp-1023,0x1p+0)=0x1.ffffffffffffcp-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:313: bad fp exception: RN powl(0x1.ffffffffffffep-1023,0x1p+0)=0x1.ffffffffffffep-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:338: bad fp exception: RN powl(0x1p-537,0x1p+1)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:437: bad fp exception: RN powl(0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:498: bad fp exception: RN powl(0x1p+350,-0x1.8p+1)=0x1p-1050, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:499: bad fp exception: RN powl(0x1p+700,-0x1.8p+0)=0x1p-1050, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:516: bad fp exception: RN powl(0x1p+1023,-0x1p+0)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:544: bad fp exception: RN powl(-0x1p-1073,0x1p+0)=-0x1p-1073, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:548: bad fp exception: RN powl(-0x1p-1024,0x1p+0)=-0x1p-1024, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:551: bad fp exception: RN powl(-0x1p-1023,0x1p+0)=-0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:557: bad fp exception: RN powl(-0x1.ffffffffffffcp-1023,0x1p+0)=-0x1.ffffffffffffcp-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:560: bad fp exception: RN powl(-0x1.ffffffffffffep-1023,0x1p+0)=-0x1.ffffffffffffep-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:581: bad fp exception: RN powl(-0x1p-537,0x1p+1)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:655: bad fp exception: RN powl(-0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:695: bad fp exception: RN powl(-0x1p+350,-0x1.8p+1)=-0x1p-1050, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:708: bad fp exception: RN powl(-0x1p+1023,-0x1p+0)=-0x1p-1023, want 0 got INEXACT|UNDERFLOW
FAIL src/math/powl.exe [status 1]
X src/math/crlibm/sinh.h:84: RN sinh(0x1.d3e0d2f5d98d6p-2) want 0x1.e45428082fb8cp-2 got 0x1.e45428082fb8ap-2 ulperr -1.500 = -0x1p+1 + 0x1p-1
X src/math/crlibm/sinh.h:84: RN sinhl(0x1.d3e0d2f5d98d6p-2) want 0x1.e45428082fb8cp-2 got 0x1.e45428082fb8ap-2 ulperr -1.500 = -0x1p+1 + 0x1p-1
src/math/ucb/sqrt.h:47: bad fp exception: RN sqrt(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/ucb/sqrt.h:48: bad fp exception: RZ sqrt(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/ucb/sqrt.h:49: bad fp exception: RU sqrt(0x1.fffffffffffffp+1023)=0x1p+512, want INEXACT got 0
src/math/ucb/sqrt.h:49: RU sqrt(0x1.fffffffffffffp+1023) want 0x1p+512 got 0x1.fffffffffffffp+511 ulperr -0.250 = -0x1p-1 + 0x1p-2
src/math/ucb/sqrt.h:50: bad fp exception: RD sqrt(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/ucb/sqrt.h:67: bad fp exception: RN sqrt(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:69: bad fp exception: RN sqrt(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:70: bad fp exception: RZ sqrt(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:72: bad fp exception: RZ sqrt(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:73: bad fp exception: RU sqrt(0x1.0000000000001p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:73: RU sqrt(0x1.0000000000001p+0) want 0x1.0000000000001p+0 got 0x1p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:75: bad fp exception: RU sqrt(0x1.fffffffffffffp-1)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:75: RU sqrt(0x1.fffffffffffffp-1) want 0x1p+0 got 0x1.fffffffffffffp-1 ulperr -0.250 = -0x1p-1 + 0x1p-2
src/math/ucb/sqrt.h:76: bad fp exception: RD sqrt(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:78: bad fp exception: RD sqrt(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:89: bad fp exception: RN sqrt(0x1.766bdb2b5006dp+1)=0x1.b5d6fec392e7dp+0, want INEXACT got 0
src/math/ucb/sqrt.h:90: bad fp exception: RN sqrt(0x1.b6546fb825911p+2)=0x1.4efb330ef0b43p+1, want INEXACT got 0
src/math/ucb/sqrt.h:91: bad fp exception: RN sqrt(0x1.e165309de7505p+2)=0x1.5f0d324d38bdp+1, want INEXACT got 0
src/math/ucb/sqrt.h:92: bad fp exception: RN sqrt(0x1.541dcfba96889p+0)=0x1.271370ec508dp+0, want INEXACT got 0
src/math/ucb/sqrt.h:93: bad fp exception: RN sqrt(0x1.754c3e27084ddp+1)=0x1.b52eb45df30b2p+0, want INEXACT got 0
src/math/ucb/sqrt.h:94: bad fp exception: RN sqrt(0x1.ebe1e1b093c41p+1)=0x1.f5d722e54e976p+0, want INEXACT got 0
src/math/ucb/sqrt.h:95: bad fp exception: RN sqrt(0x1.940d8d18455f5p+2)=0x1.419df976f692dp+1, want INEXACT got 0
src/math/ucb/sqrt.h:96: bad fp exception: RN sqrt(0x1.dae714a51b239p+2)=0x1.5cad1a5584b9ap+1, want INEXACT got 0
src/math/ucb/sqrt.h:97: bad fp exception: RN sqrt(0x1.a9f2d1079de4dp+1)=0x1.d2ff13bff7b67p+0, want INEXACT got 0
src/math/ucb/sqrt.h:98: bad fp exception: RN sqrt(0x1.57dd33103b871p-3)=0x1.a397d7b1e31f2p-2, want INEXACT got 0
src/math/ucb/sqrt.h:135: bad fp exception: RD sqrt(0x1.ffffffffffffep-1023)=0x1.ffffffffffffep-512, want INEXACT got 0
src/math/ucb/sqrt.h:135: RD sqrt(0x1.ffffffffffffep-1023) want 0x1.ffffffffffffep-512 got 0x1.fffffffffffffp-512 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:136: bad fp exception: RD sqrt(0x1.0000000000002p-1022)=0x1p-511, want INEXACT got 0
src/math/ucb/sqrt.h:136: RD sqrt(0x1.0000000000002p-1022) want 0x1p-511 got 0x1.0000000000001p-511 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:137: bad fp exception: RD sqrt(0x1.ffffffffffff7p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:138: bad fp exception: RD sqrt(0x1.ffffffffffff8p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:138: RD sqrt(0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp-1 got 0x1.ffffffffffffcp-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:139: bad fp exception: RD sqrt(0x1.ffffffffffff9p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:140: bad fp exception: RD sqrt(0x1.ffffffffffffap-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:140: RD sqrt(0x1.ffffffffffffap-1) want 0x1.ffffffffffffcp-1 got 0x1.ffffffffffffdp-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:141: bad fp exception: RD sqrt(0x1.ffffffffffffbp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:142: bad fp exception: RD sqrt(0x1.ffffffffffffcp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:142: RD sqrt(0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp-1 got 0x1.ffffffffffffep-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:143: bad fp exception: RD sqrt(0x1.ffffffffffffdp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:144: bad fp exception: RD sqrt(0x1.ffffffffffffep-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:144: RD sqrt(0x1.ffffffffffffep-1) want 0x1.ffffffffffffep-1 got 0x1.fffffffffffffp-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:145: bad fp exception: RD sqrt(0x1.0000000000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:145: RD sqrt(0x1.0000000000002p+0) want 0x1p+0 got 0x1.0000000000001p+0 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:146: bad fp exception: RD sqrt(0x1.0000000000003p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:147: bad fp exception: RD sqrt(0x1.0000000000004p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:147: RD sqrt(0x1.0000000000004p+0) want 0x1.0000000000001p+0 got 0x1.0000000000002p+0 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:148: bad fp exception: RD sqrt(0x1.0000000000005p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:149: bad fp exception: RD sqrt(0x1.0000000000006p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:149: RD sqrt(0x1.0000000000006p+0) want 0x1.0000000000002p+0 got 0x1.0000000000003p+0 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:150: bad fp exception: RD sqrt(0x1.0000000000007p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:151: bad fp exception: RD sqrt(0x1.ffffffffffffep+1021)=0x1.ffffffffffffep+510, want INEXACT got 0
src/math/ucb/sqrt.h:151: RD sqrt(0x1.ffffffffffffep+1021) want 0x1.ffffffffffffep+510 got 0x1.fffffffffffffp+510 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:152: bad fp exception: RD sqrt(0x1.0000000000002p+1022)=0x1p+511, want INEXACT got 0
src/math/ucb/sqrt.h:152: RD sqrt(0x1.0000000000002p+1022) want 0x1p+511 got 0x1.0000000000001p+511 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:206: bad fp exception: RN sqrt(0x1.ffffffffffffep-1023)=0x1.fffffffffffffp-512, want INEXACT got 0
src/math/ucb/sqrt.h:207: bad fp exception: RN sqrt(0x1.0000000000002p-1022)=0x1.0000000000001p-511, want INEXACT got 0
src/math/ucb/sqrt.h:208: bad fp exception: RN sqrt(0x1.ffffffffffff7p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:209: bad fp exception: RN sqrt(0x1.ffffffffffff8p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:210: bad fp exception: RN sqrt(0x1.ffffffffffff9p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:211: bad fp exception: RN sqrt(0x1.ffffffffffffap-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:212: bad fp exception: RN sqrt(0x1.ffffffffffffbp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:213: bad fp exception: RN sqrt(0x1.ffffffffffffcp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:214: bad fp exception: RN sqrt(0x1.ffffffffffffdp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:215: bad fp exception: RN sqrt(0x1.ffffffffffffep-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:216: bad fp exception: RN sqrt(0x1.0000000000002p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:217: bad fp exception: RN sqrt(0x1.0000000000003p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:218: bad fp exception: RN sqrt(0x1.0000000000004p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:219: bad fp exception: RN sqrt(0x1.0000000000005p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:220: bad fp exception: RN sqrt(0x1.0000000000006p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:221: bad fp exception: RN sqrt(0x1.0000000000007p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:222: bad fp exception: RN sqrt(0x1.ffffffffffffep+1021)=0x1.fffffffffffffp+510, want INEXACT got 0
src/math/ucb/sqrt.h:223: bad fp exception: RN sqrt(0x1.0000000000002p+1022)=0x1.0000000000001p+511, want INEXACT got 0
src/math/ucb/sqrt.h:273: bad fp exception: RU sqrt(0x1.ffffffffffffep-1023)=0x1.fffffffffffffp-512, want INEXACT got 0
src/math/ucb/sqrt.h:274: bad fp exception: RU sqrt(0x1.0000000000002p-1022)=0x1.0000000000001p-511, want INEXACT got 0
src/math/ucb/sqrt.h:275: bad fp exception: RU sqrt(0x1.ffffffffffff7p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:275: RU sqrt(0x1.ffffffffffff7p-1) want 0x1.ffffffffffffcp-1 got 0x1.ffffffffffffbp-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:276: bad fp exception: RU sqrt(0x1.ffffffffffff8p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:277: bad fp exception: RU sqrt(0x1.ffffffffffff9p-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:277: RU sqrt(0x1.ffffffffffff9p-1) want 0x1.ffffffffffffdp-1 got 0x1.ffffffffffffcp-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:278: bad fp exception: RU sqrt(0x1.ffffffffffffap-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:279: bad fp exception: RU sqrt(0x1.ffffffffffffbp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:279: RU sqrt(0x1.ffffffffffffbp-1) want 0x1.ffffffffffffep-1 got 0x1.ffffffffffffdp-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:280: bad fp exception: RU sqrt(0x1.ffffffffffffcp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:281: bad fp exception: RU sqrt(0x1.ffffffffffffdp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:281: RU sqrt(0x1.ffffffffffffdp-1) want 0x1.fffffffffffffp-1 got 0x1.ffffffffffffep-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:282: bad fp exception: RU sqrt(0x1.ffffffffffffep-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:283: bad fp exception: RU sqrt(0x1.0000000000002p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:284: bad fp exception: RU sqrt(0x1.0000000000003p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:284: RU sqrt(0x1.0000000000003p+0) want 0x1.0000000000002p+0 got 0x1.0000000000001p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:285: bad fp exception: RU sqrt(0x1.0000000000004p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:286: bad fp exception: RU sqrt(0x1.0000000000005p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:286: RU sqrt(0x1.0000000000005p+0) want 0x1.0000000000003p+0 got 0x1.0000000000002p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:287: bad fp exception: RU sqrt(0x1.0000000000006p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:288: bad fp exception: RU sqrt(0x1.0000000000007p+0)=0x1.0000000000004p+0, want INEXACT got 0
src/math/ucb/sqrt.h:288: RU sqrt(0x1.0000000000007p+0) want 0x1.0000000000004p+0 got 0x1.0000000000003p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:289: bad fp exception: RU sqrt(0x1.ffffffffffffep+1021)=0x1.fffffffffffffp+510, want INEXACT got 0
src/math/ucb/sqrt.h:290: bad fp exception: RU sqrt(0x1.0000000000002p+1022)=0x1.0000000000001p+511, want INEXACT got 0
src/math/ucb/sqrt.h:344: bad fp exception: RZ sqrt(0x1.ffffffffffffep-1023)=0x1.ffffffffffffep-512, want INEXACT got 0
src/math/ucb/sqrt.h:344: RZ sqrt(0x1.ffffffffffffep-1023) want 0x1.ffffffffffffep-512 got 0x1.fffffffffffffp-512 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:345: bad fp exception: RZ sqrt(0x1.0000000000002p-1022)=0x1p-511, want INEXACT got 0
src/math/ucb/sqrt.h:345: RZ sqrt(0x1.0000000000002p-1022) want 0x1p-511 got 0x1.0000000000001p-511 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:346: bad fp exception: RZ sqrt(0x1.ffffffffffff7p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:347: bad fp exception: RZ sqrt(0x1.ffffffffffff8p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:347: RZ sqrt(0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp-1 got 0x1.ffffffffffffcp-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:348: bad fp exception: RZ sqrt(0x1.ffffffffffff9p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:349: bad fp exception: RZ sqrt(0x1.ffffffffffffap-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:349: RZ sqrt(0x1.ffffffffffffap-1) want 0x1.ffffffffffffcp-1 got 0x1.ffffffffffffdp-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:350: bad fp exception: RZ sqrt(0x1.ffffffffffffbp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:351: bad fp exception: RZ sqrt(0x1.ffffffffffffcp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:351: RZ sqrt(0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp-1 got 0x1.ffffffffffffep-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:352: bad fp exception: RZ sqrt(0x1.ffffffffffffdp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:353: bad fp exception: RZ sqrt(0x1.ffffffffffffep-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:353: RZ sqrt(0x1.ffffffffffffep-1) want 0x1.ffffffffffffep-1 got 0x1.fffffffffffffp-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:354: bad fp exception: RZ sqrt(0x1.0000000000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:354: RZ sqrt(0x1.0000000000002p+0) want 0x1p+0 got 0x1.0000000000001p+0 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:355: bad fp exception: RZ sqrt(0x1.0000000000003p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:356: bad fp exception: RZ sqrt(0x1.0000000000004p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:356: RZ sqrt(0x1.0000000000004p+0) want 0x1.0000000000001p+0 got 0x1.0000000000002p+0 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:357: bad fp exception: RZ sqrt(0x1.0000000000005p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:358: bad fp exception: RZ sqrt(0x1.0000000000006p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:358: RZ sqrt(0x1.0000000000006p+0) want 0x1.0000000000002p+0 got 0x1.0000000000003p+0 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:359: bad fp exception: RZ sqrt(0x1.0000000000007p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:360: bad fp exception: RZ sqrt(0x1.ffffffffffffep+1021)=0x1.ffffffffffffep+510, want INEXACT got 0
src/math/ucb/sqrt.h:360: RZ sqrt(0x1.ffffffffffffep+1021) want 0x1.ffffffffffffep+510 got 0x1.fffffffffffffp+510 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:361: bad fp exception: RZ sqrt(0x1.0000000000002p+1022)=0x1p+511, want INEXACT got 0
src/math/ucb/sqrt.h:361: RZ sqrt(0x1.0000000000002p+1022) want 0x1p+511 got 0x1.0000000000001p+511 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/sanity/sqrt.h:2: bad fp exception: RN sqrt(0x1.161868e18bc67p+2)=0x1.0ad1adc856f29p+1, want INEXACT got 0
src/math/sanity/sqrt.h:5: bad fp exception: RN sqrt(0x1.288bbb0d6a1e6p+3)=0x1.85a7d346e8c13p+1, want INEXACT got 0
src/math/sanity/sqrt.h:6: bad fp exception: RN sqrt(0x1.52efd0cd80497p-1)=0x1.a0937a0b92ccbp-1, want INEXACT got 0
src/math/sanity/sqrt.h:8: bad fp exception: RN sqrt(0x1.1f9ef934745cbp-1)=0x1.7fbf4b5a076bcp-1, want INEXACT got 0
src/math/sanity/sqrt.h:9: bad fp exception: RN sqrt(0x1.8c5db097f7442p-1)=0x1.c27ce94ff39c5p-1, want INEXACT got 0
src/math/special/sqrt.h:9: bad fp exception: RN sqrt(0x1p-1073)=0x1.6a09e667f3bcdp-537, want INEXACT got 0
src/math/special/sqrt.h:10: bad fp exception: RN sqrt(0x1.8p-1073)=0x1.bb67ae8584caap-537, want INEXACT got 0
src/math/special/sqrt.h:13: bad fp exception: RN sqrt(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/special/sqrt.h:14: bad fp exception: RN sqrt(0x1.fffffffffffffp+0)=0x1.6a09e667f3bccp+0, want INEXACT got 0
src/math/special/sqrt.h:15: bad fp exception: RN sqrt(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/special/sqrt.h:16: bad fp exception: RN sqrt(0x1.0000000000001p+1)=0x1.6a09e667f3bcdp+0, want INEXACT got 0
src/math/special/sqrt.h:17: bad fp exception: RN sqrt(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/special/sqrt.h:18: bad fp exception: RN sqrt(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/special/sqrt.h:20: bad fp exception: RN sqrt(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/special/sqrt.h:21: bad fp exception: RN sqrt(0x1.ffffffffffffbp+1023)=0x1.ffffffffffffdp+511, want INEXACT got 0
src/math/special/sqrt.h:22: bad fp exception: RN sqrt(0x1.ffffffffffff7p+1023)=0x1.ffffffffffffbp+511, want INEXACT got 0
src/math/special/sqrt.h:23: bad fp exception: RN sqrt(0x1.ffffffffffff3p+1023)=0x1.ffffffffffff9p+511, want INEXACT got 0
src/math/special/sqrt.h:24: bad fp exception: RN sqrt(0x1.fffffffffffefp+1023)=0x1.ffffffffffff7p+511, want INEXACT got 0
src/math/special/sqrt.h:25: bad fp exception: RN sqrt(0x1.fffffffffffebp+1023)=0x1.ffffffffffff5p+511, want INEXACT got 0
src/math/special/sqrt.h:26: bad fp exception: RN sqrt(0x1.fffffffffffe7p+1023)=0x1.ffffffffffff3p+511, want INEXACT got 0
src/math/special/sqrt.h:27: bad fp exception: RN sqrt(0x1.fffffffffffe3p+1023)=0x1.ffffffffffff1p+511, want INEXACT got 0
src/math/special/sqrt.h:28: bad fp exception: RN sqrt(0x1.fffffffffffdfp+1023)=0x1.fffffffffffefp+511, want INEXACT got 0
src/math/special/sqrt.h:29: bad fp exception: RN sqrt(0x1.fffffffffffdbp+1023)=0x1.fffffffffffedp+511, want INEXACT got 0
src/math/special/sqrt.h:30: bad fp exception: RN sqrt(0x1.fffffffffffd7p+1023)=0x1.fffffffffffebp+511, want INEXACT got 0
src/math/special/sqrt.h:31: bad fp exception: RN sqrt(0x1.0000000000003p-1022)=0x1.0000000000001p-511, want INEXACT got 0
src/math/special/sqrt.h:32: bad fp exception: RN sqrt(0x1.0000000000007p-1022)=0x1.0000000000003p-511, want INEXACT got 0
src/math/special/sqrt.h:33: bad fp exception: RN sqrt(0x1.000000000000bp-1022)=0x1.0000000000005p-511, want INEXACT got 0
src/math/special/sqrt.h:34: bad fp exception: RN sqrt(0x1.000000000000fp-1022)=0x1.0000000000007p-511, want INEXACT got 0
src/math/special/sqrt.h:35: bad fp exception: RN sqrt(0x1.0000000000013p-1022)=0x1.0000000000009p-511, want INEXACT got 0
src/math/special/sqrt.h:36: bad fp exception: RN sqrt(0x1.0000000000017p-1022)=0x1.000000000000bp-511, want INEXACT got 0
src/math/special/sqrt.h:37: bad fp exception: RN sqrt(0x1.000000000001bp-1022)=0x1.000000000000dp-511, want INEXACT got 0
src/math/special/sqrt.h:38: bad fp exception: RN sqrt(0x1.000000000001fp-1022)=0x1.000000000000fp-511, want INEXACT got 0
src/math/special/sqrt.h:39: bad fp exception: RN sqrt(0x1.0000000000023p-1022)=0x1.0000000000011p-511, want INEXACT got 0
src/math/special/sqrt.h:40: bad fp exception: RN sqrt(0x1.0000000000027p-1022)=0x1.0000000000013p-511, want INEXACT got 0
src/math/special/sqrt.h:41: bad fp exception: RN sqrt(0x1.000000000002bp-1022)=0x1.0000000000015p-511, want INEXACT got 0
src/math/special/sqrt.h:42: bad fp exception: RN sqrt(0x1.000000000002fp-1022)=0x1.0000000000017p-511, want INEXACT got 0
src/math/special/sqrt.h:43: bad fp exception: RN sqrt(0x1.0000000000033p-1022)=0x1.0000000000019p-511, want INEXACT got 0
src/math/special/sqrt.h:44: bad fp exception: RN sqrt(0x1.0000000000037p-1022)=0x1.000000000001bp-511, want INEXACT got 0
src/math/special/sqrt.h:45: bad fp exception: RN sqrt(0x1.7167bc36eaa3bp+6)=0x1.3384c7db650cdp+3, want INEXACT got 0
src/math/special/sqrt.h:46: bad fp exception: RN sqrt(0x1.7570994273ad7p+6)=0x1.353186e89b8ffp+3, want INEXACT got 0
src/math/special/sqrt.h:47: bad fp exception: RN sqrt(0x1.7dae969442fe6p+6)=0x1.389640fb18b75p+3, want INEXACT got 0
src/math/special/sqrt.h:48: bad fp exception: RN sqrt(0x1.7f8444fcf67e5p+6)=0x1.395659e94669fp+3, want INEXACT got 0
src/math/special/sqrt.h:49: bad fp exception: RN sqrt(0x1.8364650e63a54p+6)=0x1.3aea9efe1a3d7p+3, want INEXACT got 0
src/math/special/sqrt.h:50: bad fp exception: RN sqrt(0x1.85bedd274edd8p+6)=0x1.3bdf20c867057p+3, want INEXACT got 0
src/math/special/sqrt.h:51: bad fp exception: RN sqrt(0x1.8609cf496ab77p+6)=0x1.3bfd7e14b5eabp+3, want INEXACT got 0
src/math/special/sqrt.h:52: bad fp exception: RN sqrt(0x1.873849c70a375p+6)=0x1.3c77ed341d27fp+3, want INEXACT got 0
src/math/special/sqrt.h:53: bad fp exception: RN sqrt(0x1.8919c962cbaaep+6)=0x1.3d3a7113ee82fp+3, want INEXACT got 0
src/math/special/sqrt.h:54: bad fp exception: RN sqrt(0x1.8de4493e22dc6p+6)=0x1.3f27d448220c3p+3, want INEXACT got 0
src/math/special/sqrt.h:55: bad fp exception: RN sqrt(0x1.924829a17a288p+6)=0x1.40e9552eec28fp+3, want INEXACT got 0
src/math/special/sqrt.h:56: bad fp exception: RN sqrt(0x1.92702cd992f12p+6)=0x1.40f94a6fdfddfp+3, want INEXACT got 0
src/math/special/sqrt.h:57: bad fp exception: RN sqrt(0x1.92b763a8311fdp+6)=0x1.4115af614695fp+3, want INEXACT got 0
src/math/special/sqrt.h:58: bad fp exception: RN sqrt(0x1.947da013c7293p+6)=0x1.41ca91102940fp+3, want INEXACT got 0
src/math/special/sqrt.h:59: bad fp exception: RN sqrt(0x1.9536091c494d2p+6)=0x1.4213e334c77adp+3, want INEXACT got 0
src/math/special/sqrt.h:60: bad fp exception: RN sqrt(0x1.61b04c6p-1019)=0x1.a98b88f18b46dp-510, want INEXACT got 0
src/math/special/sqrt.h:61: bad fp exception: RN sqrt(0x1.93789f1p-1018)=0x1.4162ae43d5821p-509, want INEXACT got 0
src/math/special/sqrt.h:62: bad fp exception: RN sqrt(0x1.a1989b4p-1018)=0x1.46f6736eb44bbp-509, want INEXACT got 0
src/math/special/sqrt.h:63: bad fp exception: RN sqrt(0x1.f93bc9p-1018)=0x1.67a36ec403bafp-509, want INEXACT got 0
src/math/special/sqrt.h:64: bad fp exception: RN sqrt(0x1.2f675e3p-1017)=0x1.8a22ab6dcfee1p-509, want INEXACT got 0
src/math/special/sqrt.h:65: bad fp exception: RN sqrt(0x1.a158508p-1017)=0x1.ce418a96cf589p-509, want INEXACT got 0
src/math/special/sqrt.h:66: bad fp exception: RN sqrt(0x1.cd31f078p-1017)=0x1.e5ef1c65dccebp-509, want INEXACT got 0
src/math/special/sqrt.h:67: bad fp exception: RN sqrt(0x1.33b43b08p-1016)=0x1.18a9f607e1701p-508, want INEXACT got 0
src/math/special/sqrt.h:68: bad fp exception: RN sqrt(0x1.6e66a858p-1016)=0x1.324402a00b45fp-508, want INEXACT got 0
src/math/special/sqrt.h:69: bad fp exception: RN sqrt(0x1.8661cbf8p-1016)=0x1.3c212046bfdffp-508, want INEXACT got 0
src/math/special/sqrt.h:70: bad fp exception: RN sqrt(0x1.bbb221b4p-1016)=0x1.510681b939931p-508, want INEXACT got 0
src/math/special/sqrt.h:71: bad fp exception: RN sqrt(0x1.c4942f3cp-1016)=0x1.5461e59227ab5p-508, want INEXACT got 0
src/math/special/sqrt.h:72: bad fp exception: RN sqrt(0x1.dbb258c8p-1016)=0x1.5cf7b0f78d3afp-508, want INEXACT got 0
src/math/special/sqrt.h:73: bad fp exception: RN sqrt(0x1.57103ea4p-1015)=0x1.a31ab946d340bp-508, want INEXACT got 0
src/math/special/sqrt.h:74: bad fp exception: RN sqrt(0x1.9b294f88p-1015)=0x1.cad197e28e85bp-508, want INEXACT got 0
FAIL src/math/sqrt.exe [status 1]
src/math/ucb/sqrtf.h:47: bad fp exception: RN sqrtf(0x1.fffffep+127)=0x1.fffffep+63, want INEXACT got 0
src/math/ucb/sqrtf.h:48: bad fp exception: RZ sqrtf(0x1.fffffep+127)=0x1.fffffep+63, want INEXACT got 0
src/math/ucb/sqrtf.h:49: bad fp exception: RU sqrtf(0x1.fffffep+127)=0x1p+64, want INEXACT got 0
src/math/ucb/sqrtf.h:49: RU sqrtf(0x1.fffffep+127) want 0x1p+64 got 0x1.fffffep+63 ulperr -0.250 = -0x1p-1 + 0x1p-2
src/math/ucb/sqrtf.h:50: bad fp exception: RD sqrtf(0x1.fffffep+127)=0x1.fffffep+63, want INEXACT got 0
src/math/ucb/sqrtf.h:67: bad fp exception: RN sqrtf(0x1.000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:69: bad fp exception: RN sqrtf(0x1.fffffep-1)=0x1.fffffep-1, want INEXACT got 0
src/math/ucb/sqrtf.h:70: bad fp exception: RZ sqrtf(0x1.000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:72: bad fp exception: RZ sqrtf(0x1.fffffep-1)=0x1.fffffep-1, want INEXACT got 0
src/math/ucb/sqrtf.h:73: bad fp exception: RU sqrtf(0x1.000002p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:73: RU sqrtf(0x1.000002p+0) want 0x1.000002p+0 got 0x1p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrtf.h:75: bad fp exception: RU sqrtf(0x1.fffffep-1)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:75: RU sqrtf(0x1.fffffep-1) want 0x1p+0 got 0x1.fffffep-1 ulperr -0.250 = -0x1p-1 + 0x1p-2
src/math/ucb/sqrtf.h:76: bad fp exception: RD sqrtf(0x1.000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:78: bad fp exception: RD sqrtf(0x1.fffffep-1)=0x1.fffffep-1, want INEXACT got 0
src/math/ucb/sqrtf.h:85: bad fp exception: RN sqrtf(0x1.766bdcp+1)=0x1.b5d7p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:86: bad fp exception: RN sqrtf(0x1.b6547p+2)=0x1.4efb34p+1, want INEXACT got 0
src/math/ucb/sqrtf.h:87: bad fp exception: RN sqrtf(0x1.e1653p+2)=0x1.5f0d32p+1, want INEXACT got 0
src/math/ucb/sqrtf.h:88: bad fp exception: RN sqrtf(0x1.541ddp+0)=0x1.271372p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:89: bad fp exception: RN sqrtf(0x1.754c3ep+1)=0x1.b52eb4p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:90: bad fp exception: RN sqrtf(0x1.ebe1e2p+1)=0x1.f5d724p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:91: bad fp exception: RN sqrtf(0x1.940d8ep+2)=0x1.419dfap+1, want INEXACT got 0
src/math/ucb/sqrtf.h:92: bad fp exception: RN sqrtf(0x1.dae714p+2)=0x1.5cad1ap+1, want INEXACT got 0
src/math/ucb/sqrtf.h:93: bad fp exception: RN sqrtf(0x1.a9f2d2p+1)=0x1.d2ff14p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:94: bad fp exception: RN sqrtf(0x1.57dd34p-3)=0x1.a397d8p-2, want INEXACT got 0
src/math/ucb/sqrtf.h:96: bad fp exception: RN sqrtf(0x1p-149)=0x1.6a09e6p-75, want INEXACT got 0
src/math/ucb/sqrtf.h:97: bad fp exception: RZ sqrtf(0x1p-149)=0x1.6a09e6p-75, want INEXACT got 0
src/math/ucb/sqrtf.h:98: bad fp exception: RU sqrtf(0x1p-149)=0x1.6a09e8p-75, want INEXACT got 0
src/math/ucb/sqrtf.h:98: RU sqrtf(0x1p-149) want 0x1.6a09e8p-75 got 0x1.6a09e6p-75 ulperr -0.203 = -0x1p+0 + 0x1.980c44p-1
src/math/ucb/sqrtf.h:99: bad fp exception: RD sqrtf(0x1p-149)=0x1.6a09e6p-75, want INEXACT got 0
src/math/ucb/sqrtf.h:142: bad fp exception: RD sqrtf(0x1.fffffcp-127)=0x1.fffffcp-64, want INEXACT got 0
src/math/ucb/sqrtf.h:142: RD sqrtf(0x1.fffffcp-127) want 0x1.fffffcp-64 got 0x1.fffffep-64 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:143: bad fp exception: RD sqrtf(0x1.000004p-126)=0x1p-63, want INEXACT got 0
src/math/ucb/sqrtf.h:143: RD sqrtf(0x1.000004p-126) want 0x1p-63 got 0x1.000002p-63 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:144: bad fp exception: RD sqrtf(0x1.ffffeep-1)=0x1.fffff6p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:145: bad fp exception: RD sqrtf(0x1.fffffp-1)=0x1.fffff6p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:145: RD sqrtf(0x1.fffffp-1) want 0x1.fffff6p-1 got 0x1.fffff8p-1 ulperr 0.000 = 0x1p+0 + -0x1.fffffp-1
src/math/ucb/sqrtf.h:146: bad fp exception: RD sqrtf(0x1.fffff2p-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:147: bad fp exception: RD sqrtf(0x1.fffff4p-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:147: RD sqrtf(0x1.fffff4p-1) want 0x1.fffff8p-1 got 0x1.fffffap-1 ulperr 0.000 = 0x1p+0 + -0x1.fffff6p-1
src/math/ucb/sqrtf.h:148: bad fp exception: RD sqrtf(0x1.fffff6p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:149: bad fp exception: RD sqrtf(0x1.fffff8p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:149: RD sqrtf(0x1.fffff8p-1) want 0x1.fffffap-1 got 0x1.fffffcp-1 ulperr 0.000 = 0x1p+0 + -0x1.fffffcp-1
src/math/ucb/sqrtf.h:150: bad fp exception: RD sqrtf(0x1.fffffap-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:151: bad fp exception: RD sqrtf(0x1.fffffcp-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:151: RD sqrtf(0x1.fffffcp-1) want 0x1.fffffcp-1 got 0x1.fffffep-1 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:152: bad fp exception: RD sqrtf(0x1.000004p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:152: RD sqrtf(0x1.000004p+0) want 0x1p+0 got 0x1.000002p+0 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:153: bad fp exception: RD sqrtf(0x1.000006p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:154: bad fp exception: RD sqrtf(0x1.000008p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:154: RD sqrtf(0x1.000008p+0) want 0x1.000002p+0 got 0x1.000004p+0 ulperr 0.000 = 0x1p+0 + -0x1.fffff8p-1
src/math/ucb/sqrtf.h:155: bad fp exception: RD sqrtf(0x1.00000ap+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:156: bad fp exception: RD sqrtf(0x1.00000cp+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:156: RD sqrtf(0x1.00000cp+0) want 0x1.000004p+0 got 0x1.000006p+0 ulperr 0.000 = 0x1p+0 + -0x1.ffffeep-1
src/math/ucb/sqrtf.h:157: bad fp exception: RD sqrtf(0x1.00000ep+0)=0x1.000006p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:158: bad fp exception: RD sqrtf(0x1.fffffcp+125)=0x1.fffffcp+62, want INEXACT got 0
src/math/ucb/sqrtf.h:158: RD sqrtf(0x1.fffffcp+125) want 0x1.fffffcp+62 got 0x1.fffffep+62 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:159: bad fp exception: RD sqrtf(0x1.000004p+126)=0x1p+63, want INEXACT got 0
src/math/ucb/sqrtf.h:159: RD sqrtf(0x1.000004p+126) want 0x1p+63 got 0x1.000002p+63 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:203: bad fp exception: RN sqrtf(0x1.fffffcp-127)=0x1.fffffep-64, want INEXACT got 0
src/math/ucb/sqrtf.h:204: bad fp exception: RN sqrtf(0x1.000004p-126)=0x1.000002p-63, want INEXACT got 0
src/math/ucb/sqrtf.h:205: bad fp exception: RN sqrtf(0x1.ffffeep-1)=0x1.fffff6p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:206: bad fp exception: RN sqrtf(0x1.fffffp-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:207: bad fp exception: RN sqrtf(0x1.fffff2p-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:208: bad fp exception: RN sqrtf(0x1.fffff4p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:209: bad fp exception: RN sqrtf(0x1.fffff6p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:210: bad fp exception: RN sqrtf(0x1.fffff8p-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:211: bad fp exception: RN sqrtf(0x1.fffffap-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:212: bad fp exception: RN sqrtf(0x1.fffffcp-1)=0x1.fffffep-1, want INEXACT got 0
src/math/ucb/sqrtf.h:213: bad fp exception: RN sqrtf(0x1.000004p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:214: bad fp exception: RN sqrtf(0x1.000006p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:215: bad fp exception: RN sqrtf(0x1.000008p+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:216: bad fp exception: RN sqrtf(0x1.00000ap+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:217: bad fp exception: RN sqrtf(0x1.00000cp+0)=0x1.000006p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:218: bad fp exception: RN sqrtf(0x1.00000ep+0)=0x1.000006p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:219: bad fp exception: RN sqrtf(0x1.fffffcp+125)=0x1.fffffep+62, want INEXACT got 0
src/math/ucb/sqrtf.h:220: bad fp exception: RN sqrtf(0x1.000004p+126)=0x1.000002p+63, want INEXACT got 0
src/math/ucb/sqrtf.h:264: bad fp exception: RU sqrtf(0x1.fffffcp-127)=0x1.fffffep-64, want INEXACT got 0
src/math/ucb/sqrtf.h:265: bad fp exception: RU sqrtf(0x1.000004p-126)=0x1.000002p-63, want INEXACT got 0
src/math/ucb/sqrtf.h:266: bad fp exception: RU sqrtf(0x1.ffffeep-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:266: RU sqrtf(0x1.ffffeep-1) want 0x1.fffff8p-1 got 0x1.fffff6p-1 ulperr -0.499 = -0x1p+0 + 0x1.000014p-1
src/math/ucb/sqrtf.h:267: bad fp exception: RU sqrtf(0x1.fffffp-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:268: bad fp exception: RU sqrtf(0x1.fffff2p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:268: RU sqrtf(0x1.fffff2p-1) want 0x1.fffffap-1 got 0x1.fffff8p-1 ulperr -0.499 = -0x1p+0 + 0x1.00000cp-1
src/math/ucb/sqrtf.h:269: bad fp exception: RU sqrtf(0x1.fffff4p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:270: bad fp exception: RU sqrtf(0x1.fffff6p-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:270: RU sqrtf(0x1.fffff6p-1) want 0x1.fffffcp-1 got 0x1.fffffap-1 ulperr -0.499 = -0x1p+0 + 0x1.000006p-1
src/math/ucb/sqrtf.h:271: bad fp exception: RU sqrtf(0x1.fffff8p-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:272: bad fp exception: RU sqrtf(0x1.fffffap-1)=0x1.fffffep-1, want INEXACT got 0
src/math/ucb/sqrtf.h:272: RU sqrtf(0x1.fffffap-1) want 0x1.fffffep-1 got 0x1.fffffcp-1 ulperr -0.499 = -0x1p+0 + 0x1.000002p-1
src/math/ucb/sqrtf.h:273: bad fp exception: RU sqrtf(0x1.fffffcp-1)=0x1.fffffep-1, want INEXACT got 0
src/math/ucb/sqrtf.h:274: bad fp exception: RU sqrtf(0x1.000004p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:275: bad fp exception: RU sqrtf(0x1.000006p+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:275: RU sqrtf(0x1.000006p+0) want 0x1.000004p+0 got 0x1.000002p+0 ulperr -0.499 = -0x1p+0 + 0x1.000004p-1
src/math/ucb/sqrtf.h:276: bad fp exception: RU sqrtf(0x1.000008p+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:277: bad fp exception: RU sqrtf(0x1.00000ap+0)=0x1.000006p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:277: RU sqrtf(0x1.00000ap+0) want 0x1.000006p+0 got 0x1.000004p+0 ulperr -0.499 = -0x1p+0 + 0x1.00000cp-1
src/math/ucb/sqrtf.h:278: bad fp exception: RU sqrtf(0x1.00000cp+0)=0x1.000006p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:279: bad fp exception: RU sqrtf(0x1.00000ep+0)=0x1.000008p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:279: RU sqrtf(0x1.00000ep+0) want 0x1.000008p+0 got 0x1.000006p+0 ulperr -0.499 = -0x1p+0 + 0x1.000018p-1
src/math/ucb/sqrtf.h:280: bad fp exception: RU sqrtf(0x1.fffffcp+125)=0x1.fffffep+62, want INEXACT got 0
src/math/ucb/sqrtf.h:281: bad fp exception: RU sqrtf(0x1.000004p+126)=0x1.000002p+63, want INEXACT got 0
src/math/ucb/sqrtf.h:325: bad fp exception: RZ sqrtf(0x1.fffffcp-127)=0x1.fffffcp-64, want INEXACT got 0
src/math/ucb/sqrtf.h:325: RZ sqrtf(0x1.fffffcp-127) want 0x1.fffffcp-64 got 0x1.fffffep-64 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:326: bad fp exception: RZ sqrtf(0x1.000004p-126)=0x1p-63, want INEXACT got 0
src/math/ucb/sqrtf.h:326: RZ sqrtf(0x1.000004p-126) want 0x1p-63 got 0x1.000002p-63 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:327: bad fp exception: RZ sqrtf(0x1.ffffeep-1)=0x1.fffff6p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:328: bad fp exception: RZ sqrtf(0x1.fffffp-1)=0x1.fffff6p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:328: RZ sqrtf(0x1.fffffp-1) want 0x1.fffff6p-1 got 0x1.fffff8p-1 ulperr 0.000 = 0x1p+0 + -0x1.fffffp-1
src/math/ucb/sqrtf.h:329: bad fp exception: RZ sqrtf(0x1.fffff2p-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:330: bad fp exception: RZ sqrtf(0x1.fffff4p-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:330: RZ sqrtf(0x1.fffff4p-1) want 0x1.fffff8p-1 got 0x1.fffffap-1 ulperr 0.000 = 0x1p+0 + -0x1.fffff6p-1
src/math/ucb/sqrtf.h:331: bad fp exception: RZ sqrtf(0x1.fffff6p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:332: bad fp exception: RZ sqrtf(0x1.fffff8p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:332: RZ sqrtf(0x1.fffff8p-1) want 0x1.fffffap-1 got 0x1.fffffcp-1 ulperr 0.000 = 0x1p+0 + -0x1.fffffcp-1
src/math/ucb/sqrtf.h:333: bad fp exception: RZ sqrtf(0x1.fffffap-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:334: bad fp exception: RZ sqrtf(0x1.fffffcp-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:334: RZ sqrtf(0x1.fffffcp-1) want 0x1.fffffcp-1 got 0x1.fffffep-1 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:335: bad fp exception: RZ sqrtf(0x1.000004p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:335: RZ sqrtf(0x1.000004p+0) want 0x1p+0 got 0x1.000002p+0 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:336: bad fp exception: RZ sqrtf(0x1.000006p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:337: bad fp exception: RZ sqrtf(0x1.000008p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:337: RZ sqrtf(0x1.000008p+0) want 0x1.000002p+0 got 0x1.000004p+0 ulperr 0.000 = 0x1p+0 + -0x1.fffff8p-1
src/math/ucb/sqrtf.h:338: bad fp exception: RZ sqrtf(0x1.00000ap+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:339: bad fp exception: RZ sqrtf(0x1.00000cp+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:339: RZ sqrtf(0x1.00000cp+0) want 0x1.000004p+0 got 0x1.000006p+0 ulperr 0.000 = 0x1p+0 + -0x1.ffffeep-1
src/math/ucb/sqrtf.h:340: bad fp exception: RZ sqrtf(0x1.00000ep+0)=0x1.000006p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:341: bad fp exception: RZ sqrtf(0x1.fffffcp+125)=0x1.fffffcp+62, want INEXACT got 0
src/math/ucb/sqrtf.h:341: RZ sqrtf(0x1.fffffcp+125) want 0x1.fffffcp+62 got 0x1.fffffep+62 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:342: bad fp exception: RZ sqrtf(0x1.000004p+126)=0x1p+63, want INEXACT got 0
src/math/ucb/sqrtf.h:342: RZ sqrtf(0x1.000004p+126) want 0x1p+63 got 0x1.000002p+63 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/sanity/sqrtf.h:2: bad fp exception: RN sqrtf(0x1.161868p+2)=0x1.0ad1aep+1, want INEXACT got 0
src/math/sanity/sqrtf.h:5: bad fp exception: RN sqrtf(0x1.288bbcp+3)=0x1.85a7d4p+1, want INEXACT got 0
src/math/sanity/sqrtf.h:6: bad fp exception: RN sqrtf(0x1.52efdp-1)=0x1.a0937ap-1, want INEXACT got 0
src/math/sanity/sqrtf.h:8: bad fp exception: RN sqrtf(0x1.1f9efap-1)=0x1.7fbf4cp-1, want INEXACT got 0
src/math/sanity/sqrtf.h:9: bad fp exception: RN sqrtf(0x1.8c5dbp-1)=0x1.c27ce8p-1, want INEXACT got 0
src/math/special/sqrtf.h:10: bad fp exception: RN sqrtf(0x1.8p-148)=0x1.3988e2p-74, want INEXACT got 0
src/math/special/sqrtf.h:11: bad fp exception: RN sqrtf(0x1p-149)=0x1.6a09e6p-75, want INEXACT got 0
src/math/special/sqrtf.h:13: bad fp exception: RN sqrtf(0x1.fffffep+127)=0x1.fffffep+63, want INEXACT got 0
src/math/special/sqrtf.h:15: bad fp exception: RN sqrtf(0x1.fffffcp-1)=0x1.fffffep-1, want INEXACT got 0
src/math/special/sqrtf.h:16: bad fp exception: RN sqrtf(0x1.fffffep-1)=0x1.fffffep-1, want INEXACT got 0
src/math/special/sqrtf.h:17: bad fp exception: RN sqrtf(0x1.fffffcp+0)=0x1.6a09e4p+0, want INEXACT got 0
src/math/special/sqrtf.h:18: bad fp exception: RN sqrtf(0x1.fffffep+0)=0x1.6a09e6p+0, want INEXACT got 0
src/math/special/sqrtf.h:19: bad fp exception: RN sqrtf(0x1.000002p+0)=0x1p+0, want INEXACT got 0
src/math/special/sqrtf.h:20: bad fp exception: RN sqrtf(0x1.000004p+0)=0x1.000002p+0, want INEXACT got 0
src/math/special/sqrtf.h:21: bad fp exception: RN sqrtf(0x1.000002p+1)=0x1.6a09e8p+0, want INEXACT got 0
src/math/special/sqrtf.h:22: bad fp exception: RN sqrtf(0x1.000004p+1)=0x1.6a09eap+0, want INEXACT got 0
FAIL src/math/sqrtf.exe [status 1]
src/math/ucb/sqrt.h:47: bad fp exception: RN sqrtl(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/ucb/sqrt.h:48: bad fp exception: RZ sqrtl(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/ucb/sqrt.h:49: bad fp exception: RU sqrtl(0x1.fffffffffffffp+1023)=0x1p+512, want INEXACT got 0
src/math/ucb/sqrt.h:49: RU sqrtl(0x1.fffffffffffffp+1023) want 0x1p+512 got 0x1.fffffffffffffp+511 ulperr -0.250 = -0x1p-1 + 0x1p-2
src/math/ucb/sqrt.h:50: bad fp exception: RD sqrtl(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/ucb/sqrt.h:67: bad fp exception: RN sqrtl(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:69: bad fp exception: RN sqrtl(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:70: bad fp exception: RZ sqrtl(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:72: bad fp exception: RZ sqrtl(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:73: bad fp exception: RU sqrtl(0x1.0000000000001p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:73: RU sqrtl(0x1.0000000000001p+0) want 0x1.0000000000001p+0 got 0x1p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:75: bad fp exception: RU sqrtl(0x1.fffffffffffffp-1)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:75: RU sqrtl(0x1.fffffffffffffp-1) want 0x1p+0 got 0x1.fffffffffffffp-1 ulperr -0.250 = -0x1p-1 + 0x1p-2
src/math/ucb/sqrt.h:76: bad fp exception: RD sqrtl(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:78: bad fp exception: RD sqrtl(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:89: bad fp exception: RN sqrtl(0x1.766bdb2b5006dp+1)=0x1.b5d6fec392e7dp+0, want INEXACT got 0
src/math/ucb/sqrt.h:90: bad fp exception: RN sqrtl(0x1.b6546fb825911p+2)=0x1.4efb330ef0b43p+1, want INEXACT got 0
src/math/ucb/sqrt.h:91: bad fp exception: RN sqrtl(0x1.e165309de7505p+2)=0x1.5f0d324d38bdp+1, want INEXACT got 0
src/math/ucb/sqrt.h:92: bad fp exception: RN sqrtl(0x1.541dcfba96889p+0)=0x1.271370ec508dp+0, want INEXACT got 0
src/math/ucb/sqrt.h:93: bad fp exception: RN sqrtl(0x1.754c3e27084ddp+1)=0x1.b52eb45df30b2p+0, want INEXACT got 0
src/math/ucb/sqrt.h:94: bad fp exception: RN sqrtl(0x1.ebe1e1b093c41p+1)=0x1.f5d722e54e976p+0, want INEXACT got 0
src/math/ucb/sqrt.h:95: bad fp exception: RN sqrtl(0x1.940d8d18455f5p+2)=0x1.419df976f692dp+1, want INEXACT got 0
src/math/ucb/sqrt.h:96: bad fp exception: RN sqrtl(0x1.dae714a51b239p+2)=0x1.5cad1a5584b9ap+1, want INEXACT got 0
src/math/ucb/sqrt.h:97: bad fp exception: RN sqrtl(0x1.a9f2d1079de4dp+1)=0x1.d2ff13bff7b67p+0, want INEXACT got 0
src/math/ucb/sqrt.h:98: bad fp exception: RN sqrtl(0x1.57dd33103b871p-3)=0x1.a397d7b1e31f2p-2, want INEXACT got 0
src/math/ucb/sqrt.h:135: bad fp exception: RD sqrtl(0x1.ffffffffffffep-1023)=0x1.ffffffffffffep-512, want INEXACT got 0
src/math/ucb/sqrt.h:135: RD sqrtl(0x1.ffffffffffffep-1023) want 0x1.ffffffffffffep-512 got 0x1.fffffffffffffp-512 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:136: bad fp exception: RD sqrtl(0x1.0000000000002p-1022)=0x1p-511, want INEXACT got 0
src/math/ucb/sqrt.h:136: RD sqrtl(0x1.0000000000002p-1022) want 0x1p-511 got 0x1.0000000000001p-511 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:137: bad fp exception: RD sqrtl(0x1.ffffffffffff7p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:138: bad fp exception: RD sqrtl(0x1.ffffffffffff8p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:138: RD sqrtl(0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp-1 got 0x1.ffffffffffffcp-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:139: bad fp exception: RD sqrtl(0x1.ffffffffffff9p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:140: bad fp exception: RD sqrtl(0x1.ffffffffffffap-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:140: RD sqrtl(0x1.ffffffffffffap-1) want 0x1.ffffffffffffcp-1 got 0x1.ffffffffffffdp-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:141: bad fp exception: RD sqrtl(0x1.ffffffffffffbp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:142: bad fp exception: RD sqrtl(0x1.ffffffffffffcp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:142: RD sqrtl(0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp-1 got 0x1.ffffffffffffep-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:143: bad fp exception: RD sqrtl(0x1.ffffffffffffdp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:144: bad fp exception: RD sqrtl(0x1.ffffffffffffep-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:144: RD sqrtl(0x1.ffffffffffffep-1) want 0x1.ffffffffffffep-1 got 0x1.fffffffffffffp-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:145: bad fp exception: RD sqrtl(0x1.0000000000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:145: RD sqrtl(0x1.0000000000002p+0) want 0x1p+0 got 0x1.0000000000001p+0 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:146: bad fp exception: RD sqrtl(0x1.0000000000003p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:147: bad fp exception: RD sqrtl(0x1.0000000000004p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:147: RD sqrtl(0x1.0000000000004p+0) want 0x1.0000000000001p+0 got 0x1.0000000000002p+0 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:148: bad fp exception: RD sqrtl(0x1.0000000000005p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:149: bad fp exception: RD sqrtl(0x1.0000000000006p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:149: RD sqrtl(0x1.0000000000006p+0) want 0x1.0000000000002p+0 got 0x1.0000000000003p+0 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:150: bad fp exception: RD sqrtl(0x1.0000000000007p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:151: bad fp exception: RD sqrtl(0x1.ffffffffffffep+1021)=0x1.ffffffffffffep+510, want INEXACT got 0
src/math/ucb/sqrt.h:151: RD sqrtl(0x1.ffffffffffffep+1021) want 0x1.ffffffffffffep+510 got 0x1.fffffffffffffp+510 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:152: bad fp exception: RD sqrtl(0x1.0000000000002p+1022)=0x1p+511, want INEXACT got 0
src/math/ucb/sqrt.h:152: RD sqrtl(0x1.0000000000002p+1022) want 0x1p+511 got 0x1.0000000000001p+511 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:206: bad fp exception: RN sqrtl(0x1.ffffffffffffep-1023)=0x1.fffffffffffffp-512, want INEXACT got 0
src/math/ucb/sqrt.h:207: bad fp exception: RN sqrtl(0x1.0000000000002p-1022)=0x1.0000000000001p-511, want INEXACT got 0
src/math/ucb/sqrt.h:208: bad fp exception: RN sqrtl(0x1.ffffffffffff7p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:209: bad fp exception: RN sqrtl(0x1.ffffffffffff8p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:210: bad fp exception: RN sqrtl(0x1.ffffffffffff9p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:211: bad fp exception: RN sqrtl(0x1.ffffffffffffap-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:212: bad fp exception: RN sqrtl(0x1.ffffffffffffbp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:213: bad fp exception: RN sqrtl(0x1.ffffffffffffcp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:214: bad fp exception: RN sqrtl(0x1.ffffffffffffdp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:215: bad fp exception: RN sqrtl(0x1.ffffffffffffep-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:216: bad fp exception: RN sqrtl(0x1.0000000000002p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:217: bad fp exception: RN sqrtl(0x1.0000000000003p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:218: bad fp exception: RN sqrtl(0x1.0000000000004p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:219: bad fp exception: RN sqrtl(0x1.0000000000005p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:220: bad fp exception: RN sqrtl(0x1.0000000000006p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:221: bad fp exception: RN sqrtl(0x1.0000000000007p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:222: bad fp exception: RN sqrtl(0x1.ffffffffffffep+1021)=0x1.fffffffffffffp+510, want INEXACT got 0
src/math/ucb/sqrt.h:223: bad fp exception: RN sqrtl(0x1.0000000000002p+1022)=0x1.0000000000001p+511, want INEXACT got 0
src/math/ucb/sqrt.h:273: bad fp exception: RU sqrtl(0x1.ffffffffffffep-1023)=0x1.fffffffffffffp-512, want INEXACT got 0
src/math/ucb/sqrt.h:274: bad fp exception: RU sqrtl(0x1.0000000000002p-1022)=0x1.0000000000001p-511, want INEXACT got 0
src/math/ucb/sqrt.h:275: bad fp exception: RU sqrtl(0x1.ffffffffffff7p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:275: RU sqrtl(0x1.ffffffffffff7p-1) want 0x1.ffffffffffffcp-1 got 0x1.ffffffffffffbp-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:276: bad fp exception: RU sqrtl(0x1.ffffffffffff8p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:277: bad fp exception: RU sqrtl(0x1.ffffffffffff9p-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:277: RU sqrtl(0x1.ffffffffffff9p-1) want 0x1.ffffffffffffdp-1 got 0x1.ffffffffffffcp-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:278: bad fp exception: RU sqrtl(0x1.ffffffffffffap-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:279: bad fp exception: RU sqrtl(0x1.ffffffffffffbp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:279: RU sqrtl(0x1.ffffffffffffbp-1) want 0x1.ffffffffffffep-1 got 0x1.ffffffffffffdp-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:280: bad fp exception: RU sqrtl(0x1.ffffffffffffcp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:281: bad fp exception: RU sqrtl(0x1.ffffffffffffdp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:281: RU sqrtl(0x1.ffffffffffffdp-1) want 0x1.fffffffffffffp-1 got 0x1.ffffffffffffep-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:282: bad fp exception: RU sqrtl(0x1.ffffffffffffep-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:283: bad fp exception: RU sqrtl(0x1.0000000000002p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:284: bad fp exception: RU sqrtl(0x1.0000000000003p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:284: RU sqrtl(0x1.0000000000003p+0) want 0x1.0000000000002p+0 got 0x1.0000000000001p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:285: bad fp exception: RU sqrtl(0x1.0000000000004p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:286: bad fp exception: RU sqrtl(0x1.0000000000005p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:286: RU sqrtl(0x1.0000000000005p+0) want 0x1.0000000000003p+0 got 0x1.0000000000002p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:287: bad fp exception: RU sqrtl(0x1.0000000000006p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:288: bad fp exception: RU sqrtl(0x1.0000000000007p+0)=0x1.0000000000004p+0, want INEXACT got 0
src/math/ucb/sqrt.h:288: RU sqrtl(0x1.0000000000007p+0) want 0x1.0000000000004p+0 got 0x1.0000000000003p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:289: bad fp exception: RU sqrtl(0x1.ffffffffffffep+1021)=0x1.fffffffffffffp+510, want INEXACT got 0
src/math/ucb/sqrt.h:290: bad fp exception: RU sqrtl(0x1.0000000000002p+1022)=0x1.0000000000001p+511, want INEXACT got 0
src/math/ucb/sqrt.h:344: bad fp exception: RZ sqrtl(0x1.ffffffffffffep-1023)=0x1.ffffffffffffep-512, want INEXACT got 0
src/math/ucb/sqrt.h:344: RZ sqrtl(0x1.ffffffffffffep-1023) want 0x1.ffffffffffffep-512 got 0x1.fffffffffffffp-512 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:345: bad fp exception: RZ sqrtl(0x1.0000000000002p-1022)=0x1p-511, want INEXACT got 0
src/math/ucb/sqrt.h:345: RZ sqrtl(0x1.0000000000002p-1022) want 0x1p-511 got 0x1.0000000000001p-511 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:346: bad fp exception: RZ sqrtl(0x1.ffffffffffff7p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:347: bad fp exception: RZ sqrtl(0x1.ffffffffffff8p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:347: RZ sqrtl(0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp-1 got 0x1.ffffffffffffcp-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:348: bad fp exception: RZ sqrtl(0x1.ffffffffffff9p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:349: bad fp exception: RZ sqrtl(0x1.ffffffffffffap-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:349: RZ sqrtl(0x1.ffffffffffffap-1) want 0x1.ffffffffffffcp-1 got 0x1.ffffffffffffdp-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:350: bad fp exception: RZ sqrtl(0x1.ffffffffffffbp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:351: bad fp exception: RZ sqrtl(0x1.ffffffffffffcp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:351: RZ sqrtl(0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp-1 got 0x1.ffffffffffffep-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:352: bad fp exception: RZ sqrtl(0x1.ffffffffffffdp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:353: bad fp exception: RZ sqrtl(0x1.ffffffffffffep-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:353: RZ sqrtl(0x1.ffffffffffffep-1) want 0x1.ffffffffffffep-1 got 0x1.fffffffffffffp-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:354: bad fp exception: RZ sqrtl(0x1.0000000000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:354: RZ sqrtl(0x1.0000000000002p+0) want 0x1p+0 got 0x1.0000000000001p+0 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:355: bad fp exception: RZ sqrtl(0x1.0000000000003p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:356: bad fp exception: RZ sqrtl(0x1.0000000000004p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:356: RZ sqrtl(0x1.0000000000004p+0) want 0x1.0000000000001p+0 got 0x1.0000000000002p+0 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:357: bad fp exception: RZ sqrtl(0x1.0000000000005p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:358: bad fp exception: RZ sqrtl(0x1.0000000000006p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:358: RZ sqrtl(0x1.0000000000006p+0) want 0x1.0000000000002p+0 got 0x1.0000000000003p+0 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:359: bad fp exception: RZ sqrtl(0x1.0000000000007p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:360: bad fp exception: RZ sqrtl(0x1.ffffffffffffep+1021)=0x1.ffffffffffffep+510, want INEXACT got 0
src/math/ucb/sqrt.h:360: RZ sqrtl(0x1.ffffffffffffep+1021) want 0x1.ffffffffffffep+510 got 0x1.fffffffffffffp+510 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:361: bad fp exception: RZ sqrtl(0x1.0000000000002p+1022)=0x1p+511, want INEXACT got 0
src/math/ucb/sqrt.h:361: RZ sqrtl(0x1.0000000000002p+1022) want 0x1p+511 got 0x1.0000000000001p+511 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/sanity/sqrt.h:2: bad fp exception: RN sqrtl(0x1.161868e18bc67p+2)=0x1.0ad1adc856f29p+1, want INEXACT got 0
src/math/sanity/sqrt.h:5: bad fp exception: RN sqrtl(0x1.288bbb0d6a1e6p+3)=0x1.85a7d346e8c13p+1, want INEXACT got 0
src/math/sanity/sqrt.h:6: bad fp exception: RN sqrtl(0x1.52efd0cd80497p-1)=0x1.a0937a0b92ccbp-1, want INEXACT got 0
src/math/sanity/sqrt.h:8: bad fp exception: RN sqrtl(0x1.1f9ef934745cbp-1)=0x1.7fbf4b5a076bcp-1, want INEXACT got 0
src/math/sanity/sqrt.h:9: bad fp exception: RN sqrtl(0x1.8c5db097f7442p-1)=0x1.c27ce94ff39c5p-1, want INEXACT got 0
src/math/special/sqrt.h:9: bad fp exception: RN sqrtl(0x1p-1073)=0x1.6a09e667f3bcdp-537, want INEXACT got 0
src/math/special/sqrt.h:10: bad fp exception: RN sqrtl(0x1.8p-1073)=0x1.bb67ae8584caap-537, want INEXACT got 0
src/math/special/sqrt.h:13: bad fp exception: RN sqrtl(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/special/sqrt.h:14: bad fp exception: RN sqrtl(0x1.fffffffffffffp+0)=0x1.6a09e667f3bccp+0, want INEXACT got 0
src/math/special/sqrt.h:15: bad fp exception: RN sqrtl(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/special/sqrt.h:16: bad fp exception: RN sqrtl(0x1.0000000000001p+1)=0x1.6a09e667f3bcdp+0, want INEXACT got 0
src/math/special/sqrt.h:17: bad fp exception: RN sqrtl(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/special/sqrt.h:18: bad fp exception: RN sqrtl(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/special/sqrt.h:20: bad fp exception: RN sqrtl(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/special/sqrt.h:21: bad fp exception: RN sqrtl(0x1.ffffffffffffbp+1023)=0x1.ffffffffffffdp+511, want INEXACT got 0
src/math/special/sqrt.h:22: bad fp exception: RN sqrtl(0x1.ffffffffffff7p+1023)=0x1.ffffffffffffbp+511, want INEXACT got 0
src/math/special/sqrt.h:23: bad fp exception: RN sqrtl(0x1.ffffffffffff3p+1023)=0x1.ffffffffffff9p+511, want INEXACT got 0
src/math/special/sqrt.h:24: bad fp exception: RN sqrtl(0x1.fffffffffffefp+1023)=0x1.ffffffffffff7p+511, want INEXACT got 0
src/math/special/sqrt.h:25: bad fp exception: RN sqrtl(0x1.fffffffffffebp+1023)=0x1.ffffffffffff5p+511, want INEXACT got 0
src/math/special/sqrt.h:26: bad fp exception: RN sqrtl(0x1.fffffffffffe7p+1023)=0x1.ffffffffffff3p+511, want INEXACT got 0
src/math/special/sqrt.h:27: bad fp exception: RN sqrtl(0x1.fffffffffffe3p+1023)=0x1.ffffffffffff1p+511, want INEXACT got 0
src/math/special/sqrt.h:28: bad fp exception: RN sqrtl(0x1.fffffffffffdfp+1023)=0x1.fffffffffffefp+511, want INEXACT got 0
src/math/special/sqrt.h:29: bad fp exception: RN sqrtl(0x1.fffffffffffdbp+1023)=0x1.fffffffffffedp+511, want INEXACT got 0
src/math/special/sqrt.h:30: bad fp exception: RN sqrtl(0x1.fffffffffffd7p+1023)=0x1.fffffffffffebp+511, want INEXACT got 0
src/math/special/sqrt.h:31: bad fp exception: RN sqrtl(0x1.0000000000003p-1022)=0x1.0000000000001p-511, want INEXACT got 0
src/math/special/sqrt.h:32: bad fp exception: RN sqrtl(0x1.0000000000007p-1022)=0x1.0000000000003p-511, want INEXACT got 0
src/math/special/sqrt.h:33: bad fp exception: RN sqrtl(0x1.000000000000bp-1022)=0x1.0000000000005p-511, want INEXACT got 0
src/math/special/sqrt.h:34: bad fp exception: RN sqrtl(0x1.000000000000fp-1022)=0x1.0000000000007p-511, want INEXACT got 0
src/math/special/sqrt.h:35: bad fp exception: RN sqrtl(0x1.0000000000013p-1022)=0x1.0000000000009p-511, want INEXACT got 0
src/math/special/sqrt.h:36: bad fp exception: RN sqrtl(0x1.0000000000017p-1022)=0x1.000000000000bp-511, want INEXACT got 0
src/math/special/sqrt.h:37: bad fp exception: RN sqrtl(0x1.000000000001bp-1022)=0x1.000000000000dp-511, want INEXACT got 0
src/math/special/sqrt.h:38: bad fp exception: RN sqrtl(0x1.000000000001fp-1022)=0x1.000000000000fp-511, want INEXACT got 0
src/math/special/sqrt.h:39: bad fp exception: RN sqrtl(0x1.0000000000023p-1022)=0x1.0000000000011p-511, want INEXACT got 0
src/math/special/sqrt.h:40: bad fp exception: RN sqrtl(0x1.0000000000027p-1022)=0x1.0000000000013p-511, want INEXACT got 0
src/math/special/sqrt.h:41: bad fp exception: RN sqrtl(0x1.000000000002bp-1022)=0x1.0000000000015p-511, want INEXACT got 0
src/math/special/sqrt.h:42: bad fp exception: RN sqrtl(0x1.000000000002fp-1022)=0x1.0000000000017p-511, want INEXACT got 0
src/math/special/sqrt.h:43: bad fp exception: RN sqrtl(0x1.0000000000033p-1022)=0x1.0000000000019p-511, want INEXACT got 0
src/math/special/sqrt.h:44: bad fp exception: RN sqrtl(0x1.0000000000037p-1022)=0x1.000000000001bp-511, want INEXACT got 0
src/math/special/sqrt.h:45: bad fp exception: RN sqrtl(0x1.7167bc36eaa3bp+6)=0x1.3384c7db650cdp+3, want INEXACT got 0
src/math/special/sqrt.h:46: bad fp exception: RN sqrtl(0x1.7570994273ad7p+6)=0x1.353186e89b8ffp+3, want INEXACT got 0
src/math/special/sqrt.h:47: bad fp exception: RN sqrtl(0x1.7dae969442fe6p+6)=0x1.389640fb18b75p+3, want INEXACT got 0
src/math/special/sqrt.h:48: bad fp exception: RN sqrtl(0x1.7f8444fcf67e5p+6)=0x1.395659e94669fp+3, want INEXACT got 0
src/math/special/sqrt.h:49: bad fp exception: RN sqrtl(0x1.8364650e63a54p+6)=0x1.3aea9efe1a3d7p+3, want INEXACT got 0
src/math/special/sqrt.h:50: bad fp exception: RN sqrtl(0x1.85bedd274edd8p+6)=0x1.3bdf20c867057p+3, want INEXACT got 0
src/math/special/sqrt.h:51: bad fp exception: RN sqrtl(0x1.8609cf496ab77p+6)=0x1.3bfd7e14b5eabp+3, want INEXACT got 0
src/math/special/sqrt.h:52: bad fp exception: RN sqrtl(0x1.873849c70a375p+6)=0x1.3c77ed341d27fp+3, want INEXACT got 0
src/math/special/sqrt.h:53: bad fp exception: RN sqrtl(0x1.8919c962cbaaep+6)=0x1.3d3a7113ee82fp+3, want INEXACT got 0
src/math/special/sqrt.h:54: bad fp exception: RN sqrtl(0x1.8de4493e22dc6p+6)=0x1.3f27d448220c3p+3, want INEXACT got 0
src/math/special/sqrt.h:55: bad fp exception: RN sqrtl(0x1.924829a17a288p+6)=0x1.40e9552eec28fp+3, want INEXACT got 0
src/math/special/sqrt.h:56: bad fp exception: RN sqrtl(0x1.92702cd992f12p+6)=0x1.40f94a6fdfddfp+3, want INEXACT got 0
src/math/special/sqrt.h:57: bad fp exception: RN sqrtl(0x1.92b763a8311fdp+6)=0x1.4115af614695fp+3, want INEXACT got 0
src/math/special/sqrt.h:58: bad fp exception: RN sqrtl(0x1.947da013c7293p+6)=0x1.41ca91102940fp+3, want INEXACT got 0
src/math/special/sqrt.h:59: bad fp exception: RN sqrtl(0x1.9536091c494d2p+6)=0x1.4213e334c77adp+3, want INEXACT got 0
src/math/special/sqrt.h:60: bad fp exception: RN sqrtl(0x1.61b04c6p-1019)=0x1.a98b88f18b46dp-510, want INEXACT got 0
src/math/special/sqrt.h:61: bad fp exception: RN sqrtl(0x1.93789f1p-1018)=0x1.4162ae43d5821p-509, want INEXACT got 0
src/math/special/sqrt.h:62: bad fp exception: RN sqrtl(0x1.a1989b4p-1018)=0x1.46f6736eb44bbp-509, want INEXACT got 0
src/math/special/sqrt.h:63: bad fp exception: RN sqrtl(0x1.f93bc9p-1018)=0x1.67a36ec403bafp-509, want INEXACT got 0
src/math/special/sqrt.h:64: bad fp exception: RN sqrtl(0x1.2f675e3p-1017)=0x1.8a22ab6dcfee1p-509, want INEXACT got 0
src/math/special/sqrt.h:65: bad fp exception: RN sqrtl(0x1.a158508p-1017)=0x1.ce418a96cf589p-509, want INEXACT got 0
src/math/special/sqrt.h:66: bad fp exception: RN sqrtl(0x1.cd31f078p-1017)=0x1.e5ef1c65dccebp-509, want INEXACT got 0
src/math/special/sqrt.h:67: bad fp exception: RN sqrtl(0x1.33b43b08p-1016)=0x1.18a9f607e1701p-508, want INEXACT got 0
src/math/special/sqrt.h:68: bad fp exception: RN sqrtl(0x1.6e66a858p-1016)=0x1.324402a00b45fp-508, want INEXACT got 0
src/math/special/sqrt.h:69: bad fp exception: RN sqrtl(0x1.8661cbf8p-1016)=0x1.3c212046bfdffp-508, want INEXACT got 0
src/math/special/sqrt.h:70: bad fp exception: RN sqrtl(0x1.bbb221b4p-1016)=0x1.510681b939931p-508, want INEXACT got 0
src/math/special/sqrt.h:71: bad fp exception: RN sqrtl(0x1.c4942f3cp-1016)=0x1.5461e59227ab5p-508, want INEXACT got 0
src/math/special/sqrt.h:72: bad fp exception: RN sqrtl(0x1.dbb258c8p-1016)=0x1.5cf7b0f78d3afp-508, want INEXACT got 0
src/math/special/sqrt.h:73: bad fp exception: RN sqrtl(0x1.57103ea4p-1015)=0x1.a31ab946d340bp-508, want INEXACT got 0
src/math/special/sqrt.h:74: bad fp exception: RN sqrtl(0x1.9b294f88p-1015)=0x1.cad197e28e85bp-508, want INEXACT got 0
FAIL src/math/sqrtl.exe [status 1]
X src/math/sanity/tgamma.h:4: RN tgamma(-0x1.a206f0a19dcc4p+2) want -0x1.9fd0c1ce12f14p-10 got -0x1.9fd0c1ce12f12p-10 ulperr 1.597 = 0x1p+1 + -0x1.9c637p-2
X src/math/sanity/tgamma.h:7: RN tgamma(-0x1.a05cc754481d1p-2) want -0x1.d9a22b2f3f253p+1 got -0x1.d9a22b2f3f251p+1 ulperr 1.674 = 0x1p+1 + -0x1.4d79f4p-2
src/math/special/tgamma.h:5: bad fp exception: RN tgamma(-0x1p+0)=nan, want INVALID got 0
src/math/special/tgamma.h:7: bad fp exception: RN tgamma(-0x1p+1)=nan, want INVALID got 0
X src/math/special/tgamma.h:47: RN tgamma(0x1p-53) want 0x1.fffffffffffffp+52 got 0x1.ffffffffffffdp+52 ulperr -2.423 = -0x1p+1 + -0x1.b0ee6p-2
X src/math/special/tgamma.h:60: RN tgamma(-0x1.0000000000001p+0) want 0x1.fffffffffffffp+51 got 0x1.ffffffffffffdp+51 ulperr -2.154 = -0x1p+1 + -0x1.3c467ep-3
X src/math/special/tgamma.h:62: RN tgamma(-0x1.0000000000003p+0) want 0x1.5555555555554p+50 got 0x1.5555555555552p+50 ulperr -1.642 = -0x1p+1 + 0x1.6e642cp-2
X src/math/special/tgamma.h:66: RN tgamma(-0x1.ffffffffffffep+0) want 0x1.0000000000002p+50 got 0x1.0000000000004p+50 ulperr 2.154 = 0x1p+1 + 0x1.3c467ep-3
X src/math/special/tgamma.h:68: RN tgamma(-0x1.0000000000001p+1) want -0x1.ffffffffffffcp+49 got -0x1.ffffffffffff7p+49 ulperr 5.309 = 0x1.4p+2 + 0x1.3c467ep-2
X src/math/special/tgamma.h:72: RN tgamma(-0x1.7fffffffffffdp+1) want -0x1.c71c71c71c72ap+46 got -0x1.c71c71c71c72cp+46 ulperr -2.157 = -0x1p+1 + -0x1.4177f6p-3
X src/math/special/tgamma.h:82: RN tgamma(-0x1.59fffffffffffp+7) want -0x1.46b1fa841aaa6p-997 got -0x1.46b1fa841aaa8p-997 ulperr -1.801 = -0x1p+1 + 0x1.979e28p-3
X src/math/special/tgamma.h:83: RN tgamma(-0x1.5a00000000001p+7) want 0x1.46b1fa841a412p-997 got 0x1.46b1fa841a41p-997 ulperr -1.700 = -0x1p+1 + 0x1.333de2p-2
X src/math/special/tgamma.h:84: RN tgamma(-0x1.5bfffffffffffp+7) want 0x1.e0a7b14f99fdbp-1005 got 0x1.e0a7b14f99fddp-1005 ulperr 1.579 = 0x1p+1 + -0x1.af416ap-2
X src/math/special/tgamma.h:85: RN tgamma(-0x1.5c00000000001p+7) want -0x1.e0a7b14f9962ap-1005 got -0x1.e0a7b14f9962cp-1005 ulperr -1.685 = -0x1p+1 + 0x1.42ddc4p-2
X src/math/special/tgamma.h:88: RN tgamma(-0x1.5ffffffffffffp+7) want 0x1.ff5df5f533fd3p-1020 got 0x1.ff5df5f533fd6p-1020 ulperr 2.513 = 0x1.8p+1 + -0x1.f234a4p-2
X src/math/special/tgamma.h:119: RN tgamma(-0x1.8p+0) want 0x1.2e7fb0bcdf4f2p+1 got 0x1.2e7fb0bcdf4fp+1 ulperr -1.770 = -0x1p+1 + 0x1.d7697p-3
X src/math/special/tgamma.h:136: RN tgamma(-0x1.02p+6) want -0x1.912276590832ep-298 got -0x1.912276590833p-298 ulperr -1.662 = -0x1p+1 + 0x1.59f79ap-2
X src/math/special/tgamma.h:141: RN tgamma(-0x1.55p+7) want -0x1.7d2374dfcda7ap-1022 got -0x1.7d2374dfcda78p-1022 ulperr 1.778 = 0x1p+1 + -0x1.c68fa4p-3
FAIL src/math/tgamma.exe [status 1]
src/math/special/tgammaf.h:4: bad fp exception: RN tgammaf(-0x1p+0)=-nan, want INVALID got 0
src/math/special/tgammaf.h:6: bad fp exception: RN tgammaf(-0x1p+1)=-nan, want INVALID got 0
FAIL src/math/tgammaf.exe [status 1]
src/math/special/tgamma.h:5: bad fp exception: RN tgammal(-0x1p+0)=nan, want INVALID got 0
src/math/special/tgamma.h:7: bad fp exception: RN tgammal(-0x1p+1)=nan, want INVALID got 0
src/math/special/tgamma.h:47: RN tgammal(0x1p-53) want 0x1.fffffffffffffp+52 got 0x1.ffffffffffffdp+52 ulperr -2.423 = -0x1p+1 + -0x1.b0ee6p-2
src/math/special/tgamma.h:60: RN tgammal(-0x1.0000000000001p+0) want 0x1.fffffffffffffp+51 got 0x1.ffffffffffffdp+51 ulperr -2.154 = -0x1p+1 + -0x1.3c467ep-3
src/math/special/tgamma.h:66: RN tgammal(-0x1.ffffffffffffep+0) want 0x1.0000000000002p+50 got 0x1.0000000000004p+50 ulperr 2.154 = 0x1p+1 + 0x1.3c467ep-3
src/math/special/tgamma.h:68: RN tgammal(-0x1.0000000000001p+1) want -0x1.ffffffffffffcp+49 got -0x1.ffffffffffff7p+49 ulperr 5.309 = 0x1.4p+2 + 0x1.3c467ep-2
src/math/special/tgamma.h:72: RN tgammal(-0x1.7fffffffffffdp+1) want -0x1.c71c71c71c72ap+46 got -0x1.c71c71c71c72cp+46 ulperr -2.157 = -0x1p+1 + -0x1.4177f6p-3
src/math/special/tgamma.h:88: RN tgammal(-0x1.5ffffffffffffp+7) want 0x1.ff5df5f533fd3p-1020 got 0x1.ff5df5f533fd6p-1020 ulperr 2.513 = 0x1.8p+1 + -0x1.f234a4p-2
FAIL src/math/tgammal.exe [status 1]
src/math/sanity/y0.h:1: bad fp exception: RN y0(-0x1.02239f3c6a8f1p+3)=nan, want INVALID got 0
src/math/sanity/y0.h:3: bad fp exception: RN y0(-0x1.0c34b3e01e6e7p+3)=nan, want INVALID got 0
src/math/sanity/y0.h:4: bad fp exception: RN y0(-0x1.a206f0a19dcc4p+2)=nan, want INVALID got 0
src/math/sanity/y0.h:7: bad fp exception: RN y0(-0x1.a05cc754481d1p-2)=nan, want INVALID got 0
src/math/sanity/y0.h:10: bad fp exception: RN y0(-0x1.5b86ea8118a0ep-1)=nan, want INVALID got 0
src/math/special/y0.h:1: bad fp exception: RN y0(0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y0.h:2: bad fp exception: RN y0(-0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y0.h:3: bad fp exception: RN y0(-0x1p+0)=nan, want INVALID got 0
src/math/special/y0.h:5: bad fp exception: RN y0(-inf)=nan, want INVALID got 0
X src/math/special/y0.h:8: RN y0(0x1.c982eb8d417eap-1) want -0x1.af74bfa0f1304p-56 got -0x1p-55 ulperr -1416944204906496.000 = -0x1.422d02p+50 + 0x1.11721cp-2
X src/math/special/y0.h:9: RN y0(0x1.c982eb8d417ebp-1) want 0x1.5666419c0f3c9p-54 got 0x1.2p-54 ulperr -957005015547904.000 = -0x1.b3320cp+49 + 0x1.dc02a8p-2
X src/math/special/y0.h:10: RN y0(0x1.fa9534d98569bp+1) want 0x1.384a000f3fcecp-53 got 0x1.3004a968fceadp-53 ulperr -145502385471488.000 = -0x1.08aad4p+47 + 0x1.58e17p-6
X src/math/special/y0.h:11: RN y0(0x1.fa9534d98569cp+1) want -0x1.8fa8956b4b481p-55 got -0x1.8f4eb84cc2a33p-55 ulperr 6175389646848.000 = 0x1.67747ap+42 + 0x1.54cfbep-2
X src/math/special/y0.h:12: RN y0(0x1.c581dc4e72102p+2) want -0x1.14bb186dc408dp-52 got -0x1.16eb61aad4cacp-52 ulperr -38502565675008.000 = -0x1.18249ep+45 + -0x1.163cfp-2
X src/math/special/y0.h:13: RN y0(0x1.c581dc4e72103p+2) want 0x1.e91b198d39ce2p-56 got 0x1.dac1abb064c09p-56 ulperr -252436132397056.000 = -0x1.cb2dbcp+47 + -0x1.ee1b6ep-2
FAIL src/math/y0.exe [status 1]
src/math/sanity/y0f.h:1: bad fp exception: RN y0f(-0x1.0223ap+3)=-nan, want INVALID got 0
X src/math/sanity/y0f.h:2: RN y0f(0x1.161868p+2) want -0x1.293dbep-3 got -0x1.293dc2p-3 ulperr -1.910 = -0x1p+1 + 0x1.6ffc42p-4
src/math/sanity/y0f.h:3: bad fp exception: RN y0f(-0x1.0c34b4p+3)=-nan, want INVALID got 0
src/math/sanity/y0f.h:4: bad fp exception: RN y0f(-0x1.a206fp+2)=-nan, want INVALID got 0
src/math/sanity/y0f.h:7: bad fp exception: RN y0f(-0x1.a05cc8p-2)=-nan, want INVALID got 0
src/math/sanity/y0f.h:10: bad fp exception: RN y0f(-0x1.5b86eap-1)=-nan, want INVALID got 0
src/math/special/y0f.h:1: bad fp exception: RN y0f(0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y0f.h:2: bad fp exception: RN y0f(-0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y0f.h:3: bad fp exception: RN y0f(-0x1p+0)=-nan, want INVALID got 0
src/math/special/y0f.h:5: bad fp exception: RN y0f(-inf)=-nan, want INVALID got 0
X src/math/special/y0f.h:7: RN y0f(0x1.0c4a3ap+0) want 0x1.ff138ep-4 got 0x1.ff1386p-4 ulperr -4.180 = -0x1.fffffep+1 + -0x1.71585ap-3
X src/math/special/y0f.h:8: RN y0f(0x1.8ae5d4p-1) want -0x1.d88a5ap-4 got -0x1.d88a5p-4 ulperr 4.919 = 0x1.4p+2 + -0x1.4d601ap-4
X src/math/special/y0f.h:9: RN y0f(0x1.fa9536p+1) want -0x1.da2946p-25 got -0x1.c5c23p-25 ulperr 668554.625 = 0x1.46716p+19 + -0x1.88a2bcp-2
FAIL src/math/y0f.exe [status 1]
src/math/sanity/y1.h:1: bad fp exception: RN y1(-0x1.02239f3c6a8f1p+3)=nan, want INVALID got 0
src/math/sanity/y1.h:3: bad fp exception: RN y1(-0x1.0c34b3e01e6e7p+3)=nan, want INVALID got 0
src/math/sanity/y1.h:4: bad fp exception: RN y1(-0x1.a206f0a19dcc4p+2)=nan, want INVALID got 0
src/math/sanity/y1.h:7: bad fp exception: RN y1(-0x1.a05cc754481d1p-2)=nan, want INVALID got 0
src/math/sanity/y1.h:10: bad fp exception: RN y1(-0x1.5b86ea8118a0ep-1)=nan, want INVALID got 0
src/math/special/y1.h:1: bad fp exception: RN y1(0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y1.h:2: bad fp exception: RN y1(-0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y1.h:3: bad fp exception: RN y1(-0x1p+0)=nan, want INVALID got 0
src/math/special/y1.h:5: bad fp exception: RN y1(-inf)=nan, want INVALID got 0
FAIL src/math/y1.exe [status 1]
src/math/sanity/y1f.h:1: bad fp exception: RN y1f(-0x1.0223ap+3)=-nan, want INVALID got 0
src/math/sanity/y1f.h:3: bad fp exception: RN y1f(-0x1.0c34b4p+3)=-nan, want INVALID got 0
src/math/sanity/y1f.h:4: bad fp exception: RN y1f(-0x1.a206fp+2)=-nan, want INVALID got 0
src/math/sanity/y1f.h:7: bad fp exception: RN y1f(-0x1.a05cc8p-2)=-nan, want INVALID got 0
src/math/sanity/y1f.h:10: bad fp exception: RN y1f(-0x1.5b86eap-1)=-nan, want INVALID got 0
src/math/special/y1f.h:1: bad fp exception: RN y1f(0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y1f.h:2: bad fp exception: RN y1f(-0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y1f.h:3: bad fp exception: RN y1f(-0x1p+0)=-nan, want INVALID got 0
src/math/special/y1f.h:5: bad fp exception: RN y1f(-inf)=-nan, want INVALID got 0
FAIL src/math/y1f.exe [status 1]
src/math/sanity/yn.h:1: bad fp exception: RN yn(-2, -0x1.02239f3c6a8f1p+3)=nan, want INVALID got 0
src/math/sanity/yn.h:3: bad fp exception: RN yn(0, -0x1.0c34b3e01e6e7p+3)=nan, want INVALID got 0
src/math/sanity/yn.h:4: bad fp exception: RN yn(1, -0x1.a206f0a19dcc4p+2)=nan, want INVALID got 0
src/math/sanity/yn.h:7: bad fp exception: RN yn(4, -0x1.a05cc754481d1p-2)=nan, want INVALID got 0
src/math/sanity/yn.h:10: bad fp exception: RN yn(7, -0x1.5b86ea8118a0ep-1)=nan, want INVALID got 0
src/math/special/yn.h:1: bad fp exception: RN yn(0, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:2: bad fp exception: RN yn(0, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:3: bad fp exception: RN yn(0, -0x1p+0)=nan, want INVALID got 0
src/math/special/yn.h:5: bad fp exception: RN yn(0, -inf)=nan, want INVALID got 0
src/math/special/yn.h:7: bad fp exception: RN yn(1, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:8: bad fp exception: RN yn(1, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:9: bad fp exception: RN yn(1, -0x1p+0)=nan, want INVALID got 0
src/math/special/yn.h:11: bad fp exception: RN yn(1, -inf)=nan, want INVALID got 0
src/math/special/yn.h:13: bad fp exception: RN yn(-1, 0x0p+0)=inf, want DIVBYZERO got 0
src/math/special/yn.h:14: bad fp exception: RN yn(-1, -0x0p+0)=inf, want DIVBYZERO got 0
src/math/special/yn.h:15: bad fp exception: RN yn(-1, -0x1p+0)=nan, want INVALID got 0
src/math/special/yn.h:17: bad fp exception: RN yn(-1, -inf)=nan, want INVALID got 0
src/math/special/yn.h:19: bad fp exception: RN yn(2, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:20: bad fp exception: RN yn(2, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:21: bad fp exception: RN yn(2, -0x1p+0)=nan, want INVALID got 0
src/math/special/yn.h:23: bad fp exception: RN yn(2, -inf)=nan, want INVALID got 0
FAIL src/math/yn.exe [status 1]
src/math/sanity/ynf.h:1: bad fp exception: RN ynf(-2, -0x1.0223ap+3)=-nan, want INVALID got 0
src/math/sanity/ynf.h:3: bad fp exception: RN ynf(0, -0x1.0c34b4p+3)=-nan, want INVALID got 0
src/math/sanity/ynf.h:4: bad fp exception: RN ynf(1, -0x1.a206fp+2)=-nan, want INVALID got 0
X src/math/sanity/ynf.h:6: RN ynf(3, 0x1.52efdp-1) want -0x1.2935d2p+4 got -0x1.2935d6p+4, ulperr -1.920 = -0x1p+1 + 0x1.47d13p-4
src/math/sanity/ynf.h:7: bad fp exception: RN ynf(4, -0x1.a05cc8p-2)=-nan, want INVALID got 0
X src/math/sanity/ynf.h:9: RN ynf(6, 0x1.8c5dbp-1) want -0x1.6dbc1cp+13 got -0x1.6dbc18p+13, ulperr 2.115 = 0x1p+1 + 0x1.d597eep-4
src/math/sanity/ynf.h:10: bad fp exception: RN ynf(7, -0x1.5b86eap-1)=-nan, want INVALID got 0
src/math/special/ynf.h:1: bad fp exception: RN ynf(0, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:2: bad fp exception: RN ynf(0, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:3: bad fp exception: RN ynf(0, -0x1p+0)=-nan, want INVALID got 0
src/math/special/ynf.h:5: bad fp exception: RN ynf(0, -inf)=-nan, want INVALID got 0
src/math/special/ynf.h:7: bad fp exception: RN ynf(1, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:8: bad fp exception: RN ynf(1, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:9: bad fp exception: RN ynf(1, -0x1p+0)=-nan, want INVALID got 0
src/math/special/ynf.h:11: bad fp exception: RN ynf(1, -inf)=-nan, want INVALID got 0
src/math/special/ynf.h:13: bad fp exception: RN ynf(-1, 0x0p+0)=inf, want DIVBYZERO got 0
src/math/special/ynf.h:14: bad fp exception: RN ynf(-1, -0x0p+0)=inf, want DIVBYZERO got 0
src/math/special/ynf.h:15: bad fp exception: RN ynf(-1, -0x1p+0)=-nan, want INVALID got 0
src/math/special/ynf.h:17: bad fp exception: RN ynf(-1, -inf)=-nan, want INVALID got 0
src/math/special/ynf.h:19: bad fp exception: RN ynf(2, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:20: bad fp exception: RN ynf(2, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:21: bad fp exception: RN ynf(2, -0x1p+0)=-nan, want INVALID got 0
src/math/special/ynf.h:23: bad fp exception: RN ynf(2, -inf)=-nan, want INVALID got 0
FAIL src/math/ynf.exe [status 1]
src/regression/daemon-failure.c:56:24: warning: adding 'int' to a string does not append to the string [-Wstring-plus-int]
                if (write(fd[1], "1" + !t_status, 1) != 1)
                                 ~~~~^~~~~~~~~~~
src/regression/daemon-failure.c:56:24: note: use array indexing to silence this warning
                if (write(fd[1], "1" + !t_status, 1) != 1)
                                     ^
                                 &   [          ]
1 warning generated.
src/regression/malloc-brk-fail.c:31: malloc(10000) succeeded after memory is filled
FAIL src/regression/malloc-brk-fail.exe [status 1]
src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==0) got 38 "Function not implemented" want 0 "No error information"
src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==0) got 110 "Operation timed out" want 130 "Previous owner died"
src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==1) got 38 "Function not implemented" want 0 "No error information"
src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==1) got 110 "Operation timed out" want 130 "Previous owner died"
FAIL src/regression/pthread-robust-detach-static.exe [status 1]
src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==0) got 38 "Function not implemented" want 0 "No error information"
src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==0) got 110 "Operation timed out" want 130 "Previous owner died"
src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==1) got 38 "Function not implemented" want 0 "No error information"
src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==1) got 110 "Operation timed out" want 130 "Previous owner died"
FAIL src/regression/pthread-robust-detach.exe [status 1]

[-- Attachment #3: musl-add-hexagon.diff --]
[-- Type: application/octet-stream, Size: 42184 bytes --]

diff --git a/arch/hexagon/atomic_arch.h b/arch/hexagon/atomic_arch.h
new file mode 100644
index 00000000..af2f88a5
--- /dev/null
+++ b/arch/hexagon/atomic_arch.h
@@ -0,0 +1,184 @@
+#define a_ctz_32 a_ctz_32
+static inline int a_ctz_32(unsigned long x)
+{
+	__asm__(
+		"%0 = ct0(%0)\n\t"
+		: "+r"(x));
+	return x;
+}
+
+#define a_ctz_64 a_ctz_64
+static inline int a_ctz_64(uint64_t x)
+{
+	int count;
+	__asm__(
+		"%0 = ct0(%1)\n\t"
+		: "=r"(count) : "r"(x));
+	return count;
+}
+
+#define a_cas a_cas
+static inline int a_cas(volatile int *p, int t, int s)
+{
+	int dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%1)\n\t"
+		"	{ p0 = cmp.eq(%0, %2)\n\t"
+		"	  if (!p0.new) jump:nt 2f }\n\t"
+		"	memw_locked(%1, p0) = %3\n\t"
+		"	if (!p0) jump 1b\n\t"
+		"2:	\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(t), "r"(s)
+		: "p0", "memory" );
+        return dummy;
+}
+
+#define a_cas_p a_cas_p
+static inline void *a_cas_p(volatile void *p, void *t, void *s)
+{
+	return (void *)a_cas(p, (int)t, (int)s);
+}
+
+#define a_swap a_swap
+static inline int a_swap(volatile int *x, int v)
+{
+	int old, dummy;
+	__asm__ __volatile__(
+		"	%1 = %3\n\t"
+		"1:	%0 = memw_locked(%2)\n\t"
+		"	memw_locked(%2, p0) = %1\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(old), "=&r"(dummy)
+		: "r"(x), "r"(v)
+		: "p0", "memory" );
+        return old;
+}
+
+#define a_fetch_add a_fetch_add
+static inline int a_fetch_add(volatile int *x, int v)
+{
+	int old, dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%2)\n\t"
+		"	%1 = add(%0, %3)\n\t"
+		"	memw_locked(%2, p0) = %1\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(old), "=&r"(dummy)
+		: "r"(x), "r"(v)
+		: "p0", "memory" );
+        return old;
+}
+
+#define a_inc a_inc
+static inline void a_inc(volatile int *x)
+{
+	a_fetch_add(x, 1);
+}
+
+#define a_dec a_dec
+static inline void a_dec(volatile int *x)
+{
+	int dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%1)\n\t"
+		"	%0 = add(%0, #-1)\n\t"
+		"	memw_locked(%1, p0) = %0\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(x)
+		: "p0", "memory" );
+}
+
+#define a_store a_store
+static inline void a_store(volatile int *p, int x)
+{
+	int dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%1)\n\t"
+		"	memw_locked(%1, p0) = %2\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(x)
+		: "p0", "memory" );
+}
+
+#define a_barrier a_barrier
+static inline void a_barrier()
+{
+	__asm__ __volatile__ ("barrier" ::: "memory");
+}
+#define a_spin a_spin
+static inline void a_spin()
+{
+	__asm__ __volatile__ ("pause(#255)" :::);
+}
+
+#define a_crash a_crash
+static inline void a_crash()
+{
+	*(volatile char *)0=0;
+}
+
+#define a_and a_and
+static inline void a_and(volatile int *p, int v)
+{
+	int dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%1)\n\t"
+		"	%0 = and(%0, %2)\n\t"
+		"	memw_locked(%1, p0) = %0\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(v)
+		: "p0", "memory" );
+}
+
+#define  a_or a_or
+static inline void a_or(volatile int *p, int v)
+{
+	int dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%1)\n\t"
+		"	%0 = or(%0, %2)\n\t"
+		"	memw_locked(%1, p0) = %0\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(v)
+		: "p0", "memory" );
+}
+
+#define a_or_l a_or_l
+static inline void a_or_l(volatile void *p, long v)
+{
+	a_or(p, v);
+}
+
+#define a_and_64 a_and_64
+static inline void a_and_64(volatile uint64_t *p, uint64_t v)
+{
+	uint64_t dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memd_locked(%1)\n\t"
+		"	%0 = and(%0, %2)\n\t"
+		"	memd_locked(%1, p0) = %0\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(v)
+		: "p0", "memory" );
+}
+
+#define  a_or_64 a_or_64
+static inline void a_or_64(volatile uint64_t *p, uint64_t v)
+{
+	uint64_t dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memd_locked(%1)\n\t"
+		"	%0 = or(%0, %2)\n\t"
+		"	memd_locked(%1, p0) = %0\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(v)
+		: "p0", "memory" );
+}
+
diff --git a/arch/hexagon/bits/alltypes.h.in b/arch/hexagon/bits/alltypes.h.in
new file mode 100644
index 00000000..9d770c7e
--- /dev/null
+++ b/arch/hexagon/bits/alltypes.h.in
@@ -0,0 +1,26 @@
+#define _Addr int
+#define _Int64 long long
+#define _Reg int
+
+#define __BYTE_ORDER 1234
+#define __LONG_MAX 0x7fffffffL
+
+#ifndef __cplusplus
+#ifdef __WCHAR_TYPE__
+TYPEDEF __WCHAR_TYPE__ wchar_t;
+#else
+TYPEDEF long wchar_t;
+#endif
+#endif
+
+TYPEDEF float float_t;
+TYPEDEF double double_t;
+
+#if !defined(__cplusplus)
+TYPEDEF struct { _Alignas(8) long long __ll; long double __ld; } max_align_t;
+#elif defined(__GNUC__)
+TYPEDEF struct { __attribute__((__aligned__(8))) long long __ll; long double __ld; } max_align_t;
+#else
+TYPEDEF struct { alignas(8) long long __ll; long double __ld; } max_align_t;
+#endif
+
diff --git a/arch/hexagon/bits/fenv.h b/arch/hexagon/bits/fenv.h
new file mode 100644
index 00000000..d3349306
--- /dev/null
+++ b/arch/hexagon/bits/fenv.h
@@ -0,0 +1,20 @@
+#define FE_INVALID    (1 << 1)
+#define FE_DIVBYZERO  (1 << 2)
+#define FE_OVERFLOW   (1 << 3)
+#define FE_UNDERFLOW  (1 << 4)
+#define FE_INEXACT    (1 << 5)
+#define FE_ALL_EXCEPT (FE_DIVBYZERO | FE_INEXACT | FE_INVALID | \
+                       FE_OVERFLOW | FE_UNDERFLOW)
+
+#define FE_TONEAREST  0x00
+#define FE_TOWARDZERO 0x01
+#define FE_DOWNWARD   0x02
+#define FE_UPWARD     0x03
+
+typedef unsigned long fexcept_t;
+
+typedef struct {
+	unsigned long __cw;
+} fenv_t;
+
+#define FE_DFL_ENV      ((const fenv_t *) -1)
diff --git a/arch/hexagon/bits/float.h b/arch/hexagon/bits/float.h
new file mode 100644
index 00000000..c4a655e7
--- /dev/null
+++ b/arch/hexagon/bits/float.h
@@ -0,0 +1,16 @@
+#define FLT_EVAL_METHOD 0
+
+#define LDBL_TRUE_MIN 4.94065645841246544177e-324L
+#define LDBL_MIN 2.22507385850720138309e-308L
+#define LDBL_MAX 1.79769313486231570815e+308L
+#define LDBL_EPSILON 2.22044604925031308085e-16L
+
+#define LDBL_MANT_DIG 53
+#define LDBL_MIN_EXP (-1021)
+#define LDBL_MAX_EXP 1024
+
+#define LDBL_DIG 15
+#define LDBL_MIN_10_EXP (-307)
+#define LDBL_MAX_10_EXP 308
+
+#define DECIMAL_DIG 17
diff --git a/arch/hexagon/bits/ipcstat.h b/arch/hexagon/bits/ipcstat.h
new file mode 100644
index 00000000..4f4fcb0c
--- /dev/null
+++ b/arch/hexagon/bits/ipcstat.h
@@ -0,0 +1 @@
+#define IPC_STAT 0x102
diff --git a/arch/hexagon/bits/msg.h b/arch/hexagon/bits/msg.h
new file mode 100644
index 00000000..7bbbb2bf
--- /dev/null
+++ b/arch/hexagon/bits/msg.h
@@ -0,0 +1,18 @@
+struct msqid_ds {
+	struct ipc_perm msg_perm;
+	unsigned long __msg_stime_lo;
+	unsigned long __msg_stime_hi;
+	unsigned long __msg_rtime_lo;
+	unsigned long __msg_rtime_hi;
+	unsigned long __msg_ctime_lo;
+	unsigned long __msg_ctime_hi;
+	unsigned long msg_cbytes;
+	msgqnum_t msg_qnum;
+	msglen_t msg_qbytes;
+	pid_t msg_lspid;
+	pid_t msg_lrpid;
+	unsigned long __unused[2];
+	time_t msg_stime;
+	time_t msg_rtime;
+	time_t msg_ctime;
+};
diff --git a/arch/hexagon/bits/posix.h b/arch/hexagon/bits/posix.h
new file mode 100644
index 00000000..30a38714
--- /dev/null
+++ b/arch/hexagon/bits/posix.h
@@ -0,0 +1,2 @@
+#define _POSIX_V6_ILP32_OFFBIG  1
+#define _POSIX_V7_ILP32_OFFBIG  1
diff --git a/arch/hexagon/bits/sem.h b/arch/hexagon/bits/sem.h
new file mode 100644
index 00000000..65661542
--- /dev/null
+++ b/arch/hexagon/bits/sem.h
@@ -0,0 +1,13 @@
+struct semid_ds {
+	struct ipc_perm sem_perm;
+	unsigned long __sem_otime_lo;
+	unsigned long __sem_otime_hi;
+	unsigned long __sem_ctime_lo;
+	unsigned long __sem_ctime_hi;
+	unsigned short sem_nsems;
+	char __sem_nsems_pad[sizeof(long)-sizeof(short)];
+	long __unused3;
+	long __unused4;
+	time_t sem_otime;
+	time_t sem_ctime;
+};
diff --git a/arch/hexagon/bits/setjmp.h b/arch/hexagon/bits/setjmp.h
new file mode 100644
index 00000000..5ee5e49f
--- /dev/null
+++ b/arch/hexagon/bits/setjmp.h
@@ -0,0 +1,4 @@
+
+typedef struct {
+	long regs[16];
+} __jmp_buf[1] __attribute__((aligned (8)));
diff --git a/arch/hexagon/bits/shm.h b/arch/hexagon/bits/shm.h
new file mode 100644
index 00000000..725fb469
--- /dev/null
+++ b/arch/hexagon/bits/shm.h
@@ -0,0 +1,31 @@
+#define SHMLBA 4096
+
+struct shmid_ds {
+	struct ipc_perm shm_perm;
+	size_t shm_segsz;
+	unsigned long __shm_atime_lo;
+	unsigned long __shm_atime_hi;
+	unsigned long __shm_dtime_lo;
+	unsigned long __shm_dtime_hi;
+	unsigned long __shm_ctime_lo;
+	unsigned long __shm_ctime_hi;
+	pid_t shm_cpid;
+	pid_t shm_lpid;
+	unsigned long shm_nattch;
+	unsigned long __pad1;
+	unsigned long __pad2;
+	unsigned long __pad3;
+	time_t shm_atime;
+	time_t shm_dtime;
+	time_t shm_ctime;
+};
+
+struct shminfo {
+	unsigned long shmmax, shmmin, shmmni, shmseg, shmall, __unused[4];
+};
+
+struct shm_info {
+	int __used_ids;
+	unsigned long shm_tot, shm_rss, shm_swp;
+	unsigned long __swap_attempts, __swap_successes;
+};
diff --git a/arch/hexagon/bits/signal.h b/arch/hexagon/bits/signal.h
new file mode 100644
index 00000000..7a3b36d0
--- /dev/null
+++ b/arch/hexagon/bits/signal.h
@@ -0,0 +1,105 @@
+#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
+
+#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
+#define MINSIGSTKSZ 2048
+#define SIGSTKSZ 8192
+#endif
+
+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
+typedef int greg_t, gregset_t[18];
+typedef struct sigcontext
+{
+	unsigned long  r0,  r1,  r2,  r3;
+	unsigned long  r4,  r5,  r6,  r7;
+	unsigned long  r8,  r9, r10, r11;
+	unsigned long r12, r13, r14, r15;
+	unsigned long r16, r17, r18, r19;
+	unsigned long r20, r21, r22, r23;
+	unsigned long r24, r25, r26, r27;
+	unsigned long r28, r29, r30, r31;
+	unsigned long sa0;
+	unsigned long lc0;
+	unsigned long sa1;
+	unsigned long lc1;
+	unsigned long m0;
+	unsigned long m1;
+	unsigned long usr;
+	unsigned long p3_0;
+	unsigned long gp;
+	unsigned long ugp;
+	unsigned long pc;
+	unsigned long cause;
+	unsigned long badva;
+	unsigned long pad1;
+	unsigned long pad2;
+	unsigned long pad3;
+} __attribute__((__aligned__(8))) mcontext_t;
+#else
+typedef struct {
+	unsigned long __regs[48];
+} __attribute__((__aligned__(8))) mcontext_t;
+#endif
+
+struct sigaltstack {
+	void *ss_sp;
+	int ss_flags;
+	size_t ss_size;
+};
+
+typedef struct __ucontext {
+	unsigned long uc_flags;
+	struct __ucontext *uc_link;
+	stack_t uc_stack;
+	mcontext_t uc_mcontext;
+	sigset_t uc_sigmask;
+//	unsigned long long uc_regspace[64];
+} ucontext_t;
+
+#define SA_NOCLDSTOP  1
+#define SA_NOCLDWAIT  2
+#define SA_SIGINFO    4
+#define SA_ONSTACK    0x08000000
+#define SA_RESTART    0x10000000
+#define SA_NODEFER    0x40000000
+#define SA_RESETHAND  0x80000000
+#define SA_RESTORER   0x04000000
+
+#endif
+
+#define SIGHUP    1
+#define SIGINT    2
+#define SIGQUIT   3
+#define SIGILL    4
+#define SIGTRAP   5
+#define SIGABRT   6
+#define SIGIOT    SIGABRT
+#define SIGBUS    7
+#define SIGFPE    8
+#define SIGKILL   9
+#define SIGUSR1   10
+#define SIGSEGV   11
+#define SIGUSR2   12
+#define SIGPIPE   13
+#define SIGALRM   14
+#define SIGTERM   15
+#define SIGSTKFLT 16
+#define SIGCHLD   17
+#define SIGCONT   18
+#define SIGSTOP   19
+#define SIGTSTP   20
+#define SIGTTIN   21
+#define SIGTTOU   22
+#define SIGURG    23
+#define SIGXCPU   24
+#define SIGXFSZ   25
+#define SIGVTALRM 26
+#define SIGPROF   27
+#define SIGWINCH  28
+#define SIGIO     29
+#define SIGPOLL   29
+#define SIGPWR    30
+#define SIGSYS    31
+#define SIGUNUSED SIGSYS
+
+#define _NSIG 65
diff --git a/arch/hexagon/bits/stat.h b/arch/hexagon/bits/stat.h
new file mode 100644
index 00000000..55e81fd9
--- /dev/null
+++ b/arch/hexagon/bits/stat.h
@@ -0,0 +1,20 @@
+/* copied from kernel definition, but with padding replaced
+ * by the corresponding correctly-sized userspace types. */
+struct stat {
+	dev_t st_dev;
+	ino_t st_ino;
+	mode_t st_mode;
+	nlink_t st_nlink;
+	uid_t st_uid;
+	gid_t st_gid;
+	dev_t st_rdev;
+	unsigned long __pad;
+	off_t st_size;
+	blksize_t st_blksize;
+	int __pad2;
+	blkcnt_t st_blocks;
+	struct timespec st_atim;
+	struct timespec st_mtim;
+	struct timespec st_ctim;
+	unsigned __unused[2];
+};
diff --git a/arch/hexagon/bits/stdint.h b/arch/hexagon/bits/stdint.h
new file mode 100644
index 00000000..d1b27121
--- /dev/null
+++ b/arch/hexagon/bits/stdint.h
@@ -0,0 +1,20 @@
+typedef int32_t int_fast16_t;
+typedef int32_t int_fast32_t;
+typedef uint32_t uint_fast16_t;
+typedef uint32_t uint_fast32_t;
+
+#define INT_FAST16_MIN  INT32_MIN
+#define INT_FAST32_MIN  INT32_MIN
+
+#define INT_FAST16_MAX  INT32_MAX
+#define INT_FAST32_MAX  INT32_MAX
+
+#define UINT_FAST16_MAX UINT32_MAX
+#define UINT_FAST32_MAX UINT32_MAX
+
+#define INTPTR_MIN      INT32_MIN
+#define INTPTR_MAX      INT32_MAX
+#define UINTPTR_MAX     UINT32_MAX
+#define PTRDIFF_MIN     INT32_MIN
+#define PTRDIFF_MAX     INT32_MAX
+#define SIZE_MAX        UINT32_MAX
diff --git a/arch/hexagon/bits/syscall.h.in b/arch/hexagon/bits/syscall.h.in
new file mode 100644
index 00000000..77ca3fa0
--- /dev/null
+++ b/arch/hexagon/bits/syscall.h.in
@@ -0,0 +1,317 @@
+#define __NR_io_setup 0
+#define __NR_io_destroy 1
+#define __NR_io_submit 2
+#define __NR_io_cancel 3
+#define __NR_io_getevents 4
+#define __NR_setxattr 5
+#define __NR_lsetxattr 6
+#define __NR_fsetxattr 7
+#define __NR_getxattr 8
+#define __NR_lgetxattr 9
+#define __NR_fgetxattr 10
+#define __NR_listxattr 11
+#define __NR_llistxattr 12
+#define __NR_flistxattr 13
+#define __NR_removexattr 14
+#define __NR_lremovexattr 15
+#define __NR_fremovexattr 16
+#define __NR_getcwd 17
+#define __NR_lookup_dcookie 18
+#define __NR_eventfd2 19
+#define __NR_epoll_create1 20
+#define __NR_epoll_ctl 21
+#define __NR_epoll_pwait 22
+#define __NR_dup 23
+#define __NR_dup3 24
+#define __NR3264_fcntl 25
+#define __NR_inotify_init1 26
+#define __NR_inotify_add_watch 27
+#define __NR_inotify_rm_watch 28
+#define __NR_ioctl 29
+#define __NR_ioprio_set 30
+#define __NR_ioprio_get 31
+#define __NR_flock 32
+#define __NR_mknodat 33
+#define __NR_mkdirat 34
+#define __NR_unlinkat 35
+#define __NR_symlinkat 36
+#define __NR_linkat 37
+#define __NR_renameat 38
+#define __NR_umount2 39
+#define __NR_mount 40
+#define __NR_pivot_root 41
+#define __NR_nfsservctl 42
+#define __NR3264_statfs 43
+#define __NR3264_fstatfs 44
+#define __NR3264_truncate 45
+#define __NR3264_ftruncate 46
+#define __NR_fallocate 47
+#define __NR_faccessat 48
+#define __NR_chdir 49
+#define __NR_fchdir 50
+#define __NR_chroot 51
+#define __NR_fchmod 52
+#define __NR_fchmodat 53
+#define __NR_fchownat 54
+#define __NR_fchown 55
+#define __NR_openat 56
+#define __NR_close 57
+#define __NR_vhangup 58
+#define __NR_pipe2 59
+#define __NR_quotactl 60
+#define __NR_getdents64 61
+#define __NR3264_lseek 62
+#define __NR_read 63
+#define __NR_write 64
+#define __NR_readv 65
+#define __NR_writev 66
+#define __NR_pread64 67
+#define __NR_pwrite64 68
+#define __NR_preadv 69
+#define __NR_pwritev 70
+#define __NR3264_sendfile 71
+#define __NR_pselect6 72
+#define __NR_ppoll 73
+#define __NR_signalfd4 74
+#define __NR_vmsplice 75
+#define __NR_splice 76
+#define __NR_tee 77
+#define __NR_readlinkat 78
+#define __NR3264_fstatat 79
+#define __NR3264_fstat 80
+#define __NR_sync 81
+#define __NR_fsync 82
+#define __NR_fdatasync 83
+#define __NR_sync_file_range2 84
+#define __NR_sync_file_range 84
+#define __NR_timerfd_create 85
+#define __NR_timerfd_settime 86
+#define __NR_timerfd_gettime 87
+#define __NR_utimensat 88
+#define __NR_acct 89
+#define __NR_capget 90
+#define __NR_capset 91
+#define __NR_personality 92
+#define __NR_exit 93
+#define __NR_exit_group 94
+#define __NR_waitid 95
+#define __NR_set_tid_address 96
+#define __NR_unshare 97
+#define __NR_futex 98
+#define __NR_set_robust_list 99
+#define __NR_get_robust_list 100
+#define __NR_nanosleep 101
+#define __NR_getitimer 102
+#define __NR_setitimer 103
+#define __NR_kexec_load 104
+#define __NR_init_module 105
+#define __NR_delete_module 106
+#define __NR_timer_create 107
+#define __NR_timer_gettime 108
+#define __NR_timer_getoverrun 109
+#define __NR_timer_settime 110
+#define __NR_timer_delete 111
+#define __NR_clock_settime 112
+#define __NR_clock_gettime 113
+#define __NR_clock_getres 114
+#define __NR_clock_nanosleep 115
+#define __NR_syslog 116
+#define __NR_ptrace 117
+#define __NR_sched_setparam 118
+#define __NR_sched_setscheduler 119
+#define __NR_sched_getscheduler 120
+#define __NR_sched_getparam 121
+#define __NR_sched_setaffinity 122
+#define __NR_sched_getaffinity 123
+#define __NR_sched_yield 124
+#define __NR_sched_get_priority_max 125
+#define __NR_sched_get_priority_min 126
+#define __NR_sched_rr_get_interval 127
+#define __NR_restart_syscall 128
+#define __NR_kill 129
+#define __NR_tkill 130
+#define __NR_tgkill 131
+#define __NR_sigaltstack 132
+#define __NR_rt_sigsuspend 133
+#define __NR_rt_sigaction 134
+#define __NR_rt_sigprocmask 135
+#define __NR_rt_sigpending 136
+#define __NR_rt_sigtimedwait 137
+#define __NR_rt_sigqueueinfo 138
+#define __NR_rt_sigreturn 139
+#define __NR_setpriority 140
+#define __NR_getpriority 141
+#define __NR_reboot 142
+#define __NR_setregid 143
+#define __NR_setgid 144
+#define __NR_setreuid 145
+#define __NR_setuid 146
+#define __NR_setresuid 147
+#define __NR_getresuid 148
+#define __NR_setresgid 149
+#define __NR_getresgid 150
+#define __NR_setfsuid 151
+#define __NR_setfsgid 152
+#define __NR_times 153
+#define __NR_setpgid 154
+#define __NR_getpgid 155
+#define __NR_getsid 156
+#define __NR_setsid 157
+#define __NR_getgroups 158
+#define __NR_setgroups 159
+#define __NR_uname 160
+#define __NR_sethostname 161
+#define __NR_setdomainname 162
+#define __NR_getrlimit 163
+#define __NR_setrlimit 164
+#define __NR_getrusage 165
+#define __NR_umask 166
+#define __NR_prctl 167
+#define __NR_getcpu 168
+#define __NR_gettimeofday 169
+#define __NR_settimeofday 170
+#define __NR_adjtimex 171
+#define __NR_getpid 172
+#define __NR_getppid 173
+#define __NR_getuid 174
+#define __NR_geteuid 175
+#define __NR_getgid 176
+#define __NR_getegid 177
+#define __NR_gettid 178
+#define __NR_sysinfo 179
+#define __NR_mq_open 180
+#define __NR_mq_unlink 181
+#define __NR_mq_timedsend 182
+#define __NR_mq_timedreceive 183
+#define __NR_mq_notify 184
+#define __NR_mq_getsetattr 185
+#define __NR_msgget 186
+#define __NR_msgctl 187
+#define __NR_msgrcv 188
+#define __NR_msgsnd 189
+#define __NR_semget 190
+#define __NR_semctl 191
+#define __NR_semtimedop 192
+#define __NR_semop 193
+#define __NR_shmget 194
+#define __NR_shmctl 195
+#define __NR_shmat 196
+#define __NR_shmdt 197
+#define __NR_socket 198
+#define __NR_socketpair 199
+#define __NR_bind 200
+#define __NR_listen 201
+#define __NR_accept 202
+#define __NR_connect 203
+#define __NR_getsockname 204
+#define __NR_getpeername 205
+#define __NR_sendto 206
+#define __NR_recvfrom 207
+#define __NR_setsockopt 208
+#define __NR_getsockopt 209
+#define __NR_shutdown 210
+#define __NR_sendmsg 211
+#define __NR_recvmsg 212
+#define __NR_readahead 213
+#define __NR_brk 214
+#define __NR_munmap 215
+#define __NR_mremap 216
+#define __NR_add_key 217
+#define __NR_request_key 218
+#define __NR_keyctl 219
+#define __NR_clone 220
+#define __NR_execve 221
+#define __NR3264_mmap 222
+#define __NR3264_fadvise64 223
+#define __NR_swapon 224
+#define __NR_swapoff 225
+#define __NR_mprotect 226
+#define __NR_msync 227
+#define __NR_mlock 228
+#define __NR_munlock 229
+#define __NR_mlockall 230
+#define __NR_munlockall 231
+#define __NR_mincore 232
+#define __NR_madvise 233
+#define __NR_remap_file_pages 234
+#define __NR_mbind 235
+#define __NR_get_mempolicy 236
+#define __NR_set_mempolicy 237
+#define __NR_migrate_pages 238
+#define __NR_move_pages 239
+#define __NR_rt_tgsigqueueinfo 240
+#define __NR_perf_event_open 241
+#define __NR_accept4 242
+#define __NR_recvmmsg 243
+#define __NR_arch_specific_syscall 244
+#define __NR_wait4 260
+#define __NR_prlimit64 261
+#define __NR_fanotify_init 262
+#define __NR_fanotify_mark 263
+#define __NR_name_to_handle_at 264
+#define __NR_open_by_handle_at 265
+#define __NR_clock_adjtime 266
+#define __NR_syncfs 267
+#define __NR_setns 268
+#define __NR_sendmmsg 269
+#define __NR_process_vm_readv 270
+#define __NR_process_vm_writev 271
+#define __NR_kcmp 272
+#define __NR_finit_module 273
+#define __NR_sched_setattr 274
+#define __NR_sched_getattr 275
+#define __NR_renameat2 276
+#define __NR_seccomp 277
+#define __NR_getrandom 278
+#define __NR_memfd_create 279
+#define __NR_bpf 280
+#define __NR_execveat 281
+#define __NR_userfaultfd 282
+#define __NR_membarrier 283
+#define __NR_mlock2 284
+#define __NR_copy_file_range 285
+#define __NR_preadv2 286
+#define __NR_pwritev2 287
+#define __NR_pkey_mprotect 288
+#define __NR_pkey_alloc 289
+#define __NR_pkey_free 290
+#define __NR_statx 291
+#define __NR_clock_gettime64 403
+#define __NR_clock_settime64 404
+#define __NR_clock_adjtime64 405
+#define __NR_clock_getres_time64 406
+#define __NR_clock_nanosleep_time64 407
+#define __NR_timer_gettime64 408
+#define __NR_timer_settime64 409
+#define __NR_timerfd_gettime64 410
+#define __NR_timerfd_settime64 411
+#define __NR_utimensat_time64 412
+#define __NR_pselect6_time64 413
+#define __NR_ppoll_time64 414
+#define __NR_io_pgetevents_time64 416
+#define __NR_recvmmsg_time64 417
+#define __NR_mq_timedsend_time64 418
+#define __NR_mq_timedreceive_time64 419
+#define __NR_semtimedop_time64 420
+#define __NR_rt_sigtimedwait_time64 421
+#define __NR_futex_time64 422
+#define __NR_sched_rr_get_interval_time64 423
+#define __NR_syscalls (__NR_sched_rr_get_interval_time64+1)
+#define __NR_fcntl  __NR3264_fcntl
+#define __NR_fstatfs  __NR3264_fstatfs
+#define __NR_truncate  __NR3264_truncate
+#define __NR_ftruncate  __NR3264_ftruncate
+#define __NR_lseek  __NR3264_lseek
+#define __NR_sendfile  __NR3264_sendfile
+#define __NR_newfstatat  __NR3264_fstatat
+#define __NR_fcntl64  __NR3264_fcntl
+#define __NR_statfs64  __NR3264_statfs
+#define __NR_fstatfs64  __NR3264_fstatfs
+#define __NR_truncate64  __NR3264_truncate
+#define __NR_ftruncate64  __NR3264_ftruncate
+#define __NR__llseek  __NR3264_lseek
+#define __NR_sendfile64  __NR3264_sendfile
+#define __NR_fstatat64  __NR3264_fstatat
+#define __NR_fstat64  __NR3264_fstat
+#define __NR_mmap2  __NR3264_mmap
+#define __NR_fadvise64_64  __NR3264_fadvise64
diff --git a/arch/hexagon/crt_arch.h b/arch/hexagon/crt_arch.h
new file mode 100644
index 00000000..331a797e
--- /dev/null
+++ b/arch/hexagon/crt_arch.h
@@ -0,0 +1,35 @@
+__asm__(
+".weak _DYNAMIC \n"
+".hidden _DYNAMIC \n"
+".text \n"
+".global " START " \n"
+".type " START ", %function \n"
+START ": \n"
+"                                       // Find _DYNAMIC\n"
+"       jump 1f\n"
+".word  _DYNAMIC - .\n"
+"1:     r2 = pc\n"
+"       r2 = add(r2, #-4)\n"
+"       r1 = memw(r2)\n"
+"       r1 = add(r2, r1)\n"
+"	r30 = #0			// Signals the end of backtrace\n"
+"	r0 = r29			// Pointer to argc/argv\n"
+"	r29 = and(r29, #-16)		// Align\n"
+"	memw(r29+#-8) = r29\n"
+"	r29 = add(r29, #-8)\n"
+"	call " START "_c \n"
+".size " START ", .-" START "\n"
+);
+
+__asm__(
+".section \".note.ABI-tag\", \"a\" \n"
+".align 4 \n"
+".long 1f - 0f		/* name length */ \n"
+".long 3f - 2f		/* data length */ \n"
+".long  1		/* note type */ \n"
+"0:	.asciz \"GNU\"	/* vendor name seems like this should be MUSL but lldb doesn't agree.*/ \n"
+"1:	.align 4		 \n"
+"2:	.long 0	/* linux */ \n"
+"	.long 3,0,0 \n"
+"3:	.align 4 \n"
+);
diff --git a/arch/hexagon/kstat.h b/arch/hexagon/kstat.h
new file mode 100644
index 00000000..92625f36
--- /dev/null
+++ b/arch/hexagon/kstat.h
@@ -0,0 +1,21 @@
+struct kstat {
+	dev_t st_dev;
+	ino_t st_ino;
+	mode_t st_mode;
+	nlink_t st_nlink;
+	uid_t st_uid;
+	gid_t st_gid;
+	dev_t st_rdev;
+	unsigned long __pad;
+	off_t st_size;
+	blksize_t st_blksize;
+	int __pad2;
+	blkcnt_t st_blocks;
+	long st_atime_sec;
+	long st_atime_nsec;
+	long st_mtime_sec;
+	long st_mtime_nsec;
+	long st_ctime_sec;
+	long st_ctime_nsec;
+	unsigned __unused[2];
+};
diff --git a/arch/hexagon/pthread_arch.h b/arch/hexagon/pthread_arch.h
new file mode 100644
index 00000000..b1344dc1
--- /dev/null
+++ b/arch/hexagon/pthread_arch.h
@@ -0,0 +1,14 @@
+
+// Hexagon supports variant 2 TLS.
+static inline struct pthread *__pthread_self()
+{
+  struct pthread *tp;
+  __asm__ ( "%0 = ugp" : "=r"(tp));
+  return tp;
+}
+
+#define TP_ADJ(p) (p)
+
+#define CANCEL_REG_IP 43
+
+#define MC_PC pc
diff --git a/arch/hexagon/reloc.h b/arch/hexagon/reloc.h
new file mode 100644
index 00000000..14085872
--- /dev/null
+++ b/arch/hexagon/reloc.h
@@ -0,0 +1,25 @@
+#include <endian.h>
+
+#if __BYTE_ORDER == __LITTLE_ENDIAN
+#define ENDIAN_SUFFIX "el"
+#else
+#define ENDIAN_SUFFIX ""
+#endif
+
+#define FP_SUFFIX ""
+
+#define LDSO_ARCH "hexagon" ENDIAN_SUFFIX FP_SUFFIX
+
+#define TPOFF_K 0
+
+#define REL_SYMBOLIC    R_HEX_32
+#define REL_GOT         R_HEX_GLOB_DAT
+#define REL_PLT         R_HEX_JMP_SLOT
+#define REL_RELATIVE    R_HEX_RELATIVE
+#define REL_COPY        R_HEX_COPY
+#define REL_DTPMOD      R_HEX_DTPMOD_32
+#define REL_TPOFF       R_HEX_TPREL_32
+#define REL_DTPOFF      R_HEX_DTPREL_32
+
+#define CRTJMP(pc,sp) __asm__ __volatile__( \
+	"r29 = %1 ; jumpr %0" : : "r"(pc), "r"(sp) : "memory" )
diff --git a/arch/hexagon/syscall_arch.h b/arch/hexagon/syscall_arch.h
new file mode 100644
index 00000000..e6defe41
--- /dev/null
+++ b/arch/hexagon/syscall_arch.h
@@ -0,0 +1,77 @@
+
+#define __SYSCALL_LL_E(x) \
+((union { long long ll; long l[2]; }){ .ll = x }).l[0], \
+((union { long long ll; long l[2]; }){ .ll = x }).l[1]
+#define __SYSCALL_LL_O(x) 0, __SYSCALL_LL_E((x))
+
+#define __asm_syscall(...) do { \
+    __asm__ __volatile__ ( "trap0(#1)" \
+    : "=r"(r0) : __VA_ARGS__ : "memory"); \
+    return r0; \
+    } while (0)
+
+static inline long __syscall0(long n)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0");
+  __asm_syscall("r"(r6));
+}
+
+static inline long __syscall1(long n, long a)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  __asm_syscall("r"(r6), "0"(r0));
+}
+
+static inline long __syscall2(long n, long a, long b)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  register long r1 __asm__("r1") = b;
+  __asm_syscall("r"(r6), "0"(r0), "r"(r1));
+}
+
+static inline long __syscall3(long n, long a, long b, long c)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  register long r1 __asm__("r1") = b;
+  register long r2 __asm__("r2") = c;
+  __asm_syscall("r"(r6), "0"(r0), "r"(r1), "r"(r2));
+}
+
+static inline long __syscall4(long n, long a, long b, long c, long d)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  register long r1 __asm__("r1") = b;
+  register long r2 __asm__("r2") = c;
+  register long r3 __asm__("r3") = d;
+  __asm_syscall("r"(r6), "0"(r0), "r"(r1), "r"(r2), "r"(r3));
+}
+
+static inline long __syscall5(long n, long a, long b, long c, long d, long e)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  register long r1 __asm__("r1") = b;
+  register long r2 __asm__("r2") = c;
+  register long r3 __asm__("r3") = d;
+  register long r4 __asm__("r4") = e;
+  __asm_syscall("r"(r6), "0"(r0), "r"(r1), "r"(r2), "r"(r3), "r"(r4));
+}
+
+static inline long __syscall6(long n, long a, long b, long c, long d, long e, long f)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  register long r1 __asm__("r1") = b;
+  register long r2 __asm__("r2") = c;
+  register long r3 __asm__("r3") = d;
+  register long r4 __asm__("r4") = e;
+  register long r5 __asm__("r5") = f;
+  __asm_syscall("r"(r6), "0"(r0), "r"(r1), "r"(r2), "r"(r3), "r"(r4), "r"(r5));
+}
+
+#define SYSCALL_FADVISE_6_ARG
diff --git a/configure b/configure
index 43598825..d6aab5ab 100755
--- a/configure
+++ b/configure
@@ -312,6 +312,7 @@ case "$target" in
 # Catch these early to simplify matching for 32-bit archs
 arm*) ARCH=arm ;;
 aarch64*) ARCH=aarch64 ;;
+hexagon*) ARCH=hexagon ;;
 i?86-nt32*) ARCH=nt32 ;;
 i?86*) ARCH=i386 ;;
 x86_64-x32*|x32*|x86_64*x32) ARCH=x32 ;;
diff --git a/include/elf.h b/include/elf.h
index 549f92c1..54251c24 100644
--- a/include/elf.h
+++ b/include/elf.h
@@ -3284,6 +3284,107 @@ enum
 #define R_RISCV_SET32           56
 #define R_RISCV_32_PCREL        57
 
+#define R_HEX_NONE               0
+#define R_HEX_B22_PCREL          1
+#define R_HEX_B15_PCREL          2
+#define R_HEX_B7_PCREL           3
+#define R_HEX_LO16               4
+#define R_HEX_HI16               5
+#define R_HEX_32                 6
+#define R_HEX_16                 7
+#define R_HEX_8                  8
+#define R_HEX_GPREL16_0          9
+#define R_HEX_GPREL16_1         10
+#define R_HEX_GPREL16_2         11
+#define R_HEX_GPREL16_3         12
+#define R_HEX_HL16              13
+#define R_HEX_B13_PCREL         14
+#define R_HEX_B9_PCREL          15
+#define R_HEX_B32_PCREL_X       16
+#define R_HEX_32_6_X            17
+#define R_HEX_B22_PCREL_X       18
+#define R_HEX_B15_PCREL_X       19
+#define R_HEX_B13_PCREL_X       20
+#define R_HEX_B9_PCREL_X        21
+#define R_HEX_B7_PCREL_X        22
+#define R_HEX_16_X              23
+#define R_HEX_12_X              24
+#define R_HEX_11_X              25
+#define R_HEX_10_X              26
+#define R_HEX_9_X               27
+#define R_HEX_8_X               28
+#define R_HEX_7_X               29
+#define R_HEX_6_X               30
+#define R_HEX_32_PCREL          31
+#define R_HEX_COPY              32
+#define R_HEX_GLOB_DAT          33
+#define R_HEX_JMP_SLOT          34
+#define R_HEX_RELATIVE          35
+#define R_HEX_PLT_B22_PCREL     36
+#define R_HEX_GOTOFF_LO16       37
+#define R_HEX_GOTOFF_HI16       38
+#define R_HEX_GOTOFF_32         39
+#define R_HEX_GOT_LO16          40
+#define R_HEX_GOT_HI16          41
+#define R_HEX_GOT_32            42
+#define R_HEX_GOT_16            43
+#define R_HEX_DTPMOD_32         44
+#define R_HEX_DTPREL_LO16       45
+#define R_HEX_DTPREL_HI16       46
+#define R_HEX_DTPREL_32         47
+#define R_HEX_DTPREL_16         48
+#define R_HEX_GD_PLT_B22_PCREL  49
+#define R_HEX_GD_GOT_LO16       50
+#define R_HEX_GD_GOT_HI16       51
+#define R_HEX_GD_GOT_32         52
+#define R_HEX_GD_GOT_16         53
+#define R_HEX_IE_LO16           54
+#define R_HEX_IE_HI16           55
+#define R_HEX_IE_32             56
+#define R_HEX_IE_GOT_LO16       57
+#define R_HEX_IE_GOT_HI16       58
+#define R_HEX_IE_GOT_32         59
+#define R_HEX_IE_GOT_16         60
+#define R_HEX_TPREL_LO16        61
+#define R_HEX_TPREL_HI16        62
+#define R_HEX_TPREL_32          63
+#define R_HEX_TPREL_16          64
+#define R_HEX_6_PCREL_X         65
+#define R_HEX_GOTREL_32_6_X     66
+#define R_HEX_GOTREL_16_X       67
+#define R_HEX_GOTREL_11_X       68
+#define R_HEX_GOT_32_6_X        69
+#define R_HEX_GOT_16_X          70
+#define R_HEX_GOT_11_X          71
+#define R_HEX_DTPREL_32_6_X     72
+#define R_HEX_DTPREL_16_X       73
+#define R_HEX_DTPREL_11_X       74
+#define R_HEX_GD_GOT_32_6_X     75
+#define R_HEX_GD_GOT_16_X       76
+#define R_HEX_GD_GOT_11_X       77
+#define R_HEX_IE_32_6_X         78
+#define R_HEX_IE_16_X           79
+#define R_HEX_IE_GOT_32_6_X     80
+#define R_HEX_IE_GOT_16_X       81
+#define R_HEX_IE_GOT_11_X       82
+#define R_HEX_TPREL_32_6_X      83
+#define R_HEX_TPREL_16_X        84
+#define R_HEX_TPREL_11_X        85
+#define R_HEX_LD_PLT_B22_PCREL  86
+#define R_HEX_LD_GOT_LO16       87
+#define R_HEX_LD_GOT_HI16       88
+#define R_HEX_LD_GOT_32         89
+#define R_HEX_LD_GOT_16         90
+#define R_HEX_LD_GOT_32_6_X     91
+#define R_HEX_LD_GOT_16_X       92
+#define R_HEX_LD_GOT_11_X       93
+#define R_HEX_23_REG            94
+#define R_HEX_GD_PLT_B22_PCREL_X 95
+#define R_HEX_GD_PLT_B32_PCREL_X 96
+#define R_HEX_LD_PLT_B22_PCREL_X 97
+#define R_HEX_LD_PLT_B32_PCREL_X 98
+
+
 #ifdef __cplusplus
 }
 #endif
diff --git a/src/fenv/hexagon/fenv.S b/src/fenv/hexagon/fenv.S
new file mode 100644
index 00000000..07b89764
--- /dev/null
+++ b/src/fenv/hexagon/fenv.S
@@ -0,0 +1,143 @@
+/*
+The Hexagon user status register includes five status fields which work as
+sticky flags for the five IEEE-defined exception conditions: inexact, overflow, underflow,
+divide by zero, and invalid. A sticky flag is set when the corresponding exception occurs,
+and remains set until explicitly cleared.
+
+  usr:23:22 - Rounding Mode
+  00: Round toward nearest
+  01: Round toward zero
+  10: Downward Round toward negative infinity
+  11: Upward Round toward positive infinity
+
+  usr:5 - Floating-point IEEE Inexact Sticky Flag.
+  usr:4 - Floating-point IEEE Underflow Sticky Flag.
+  usr:3 - Floating-point IEEE Overflow Sticky Flag.
+  usr:2 - Floating-point IEEE Divide-By-Zero Sticky Flag.
+  usr:1 - Floating-point IEEE Invalid Sticky Flag.
+  usr:0 - Sticky Saturation Overflow, when 1 saturation occurred.
+*/
+
+#define FE_ALL_EXCEPT 0x3f
+
+#define USR_FE_MASK 0x3fc0003f
+#define RND_MASK    (0x3 << 22)
+#define RND_NEAR    (0x0 << 22)
+#define RND_ZERO    (0x1 << 22)
+#define RND_DOWN    (0x2 << 22)
+#define RND_UP      (0x3 << 22)
+
+/*
+int feclearexcept(int mask)
+*/
+.global feclearexcept
+.type feclearexcept,@function
+feclearexcept:
+  {
+    r0 = and(r0, #FE_ALL_EXCEPT) // Only touch the IEEE flag bits.
+    r1 = usr
+  }
+  r1 = and(r1, ~r0)
+  {
+    usr = r1
+    r0 = #0
+    jumpr r31
+  }
+
+/*
+int feraiseexcept(int mask)
+*/
+.global feraiseexcept
+.type feraiseexcept,@function
+feraiseexcept:
+  {
+    r0 = and(r0, #FE_ALL_EXCEPT) // Only touch the IEEE flag bits.
+    r1 = usr
+  }
+  r1 = or(r1, r0)
+  {
+    usr = r1
+    r0 = #0
+    jumpr r31
+  }
+
+
+/*
+int fetestexcept(int mask)
+*/
+.global fetestexcept
+.type fetestexcept,@function
+fetestexcept:
+  {
+    r0 = and(r0, #FE_ALL_EXCEPT) // Only touch the IEEE flag bits.
+    r1 = usr
+  }
+  {
+    r0 = and(r1, r0)
+    jumpr r31
+  }
+
+/*
+int fegetround(void)
+*/
+.global fegetround
+.type fegetround,@function
+fegetround:
+  r0 = usr
+  r0 = and(r0, ##RND_MASK)
+  r0 = lsr(r0, #22);
+  jumpr r31
+
+/*
+int __fesetround(int r)
+*/
+.global __fesetround
+.type __fesetround,@function
+__fesetround:
+  {
+    r0 = and(r0, #0x3) // Can only be 0,1,2, or 3
+    r1 = usr
+    r2 = ##RND_MASK
+  }
+  {
+    r1 = and (r1, ~r2)  // Clear the current rounding bits.
+    r0 = asl (r0, #22)
+  }
+  r1 = or(r1, r0)
+  usr = r1
+  {
+    r0 = #0; jumpr r31
+  }
+
+/*
+int fegetenv(fenv_t *envp)
+*/
+.global fegetenv
+.type fegetenv,@function
+fegetenv:
+  r1 = usr
+  memw(r0) = r1
+  {
+    r0 = #0
+    jumpr r31
+  }
+
+/*
+int fesetenv(const fenv_t *envp)
+*/
+.global fesetenv
+.type fesetenv,@function
+fesetenv:
+  { p0 = cmp.eq(r0, #-1); if (p0.new) r1 = #0 }  /* The default mode */
+  if (!p0) r1 = memw(r0)                         /* stored in fenv_t */
+
+  r2 = ##USR_FE_MASK // USR:FE bit mask
+  r1 = and(r1, r2)   // MASK the input bits with the FE bits
+  r3 = usr
+  r3 = and(r3, ~r2)  // Clear any currently set FE bits
+  r3 = or(r3, r1)   // Set the newbits
+  usr = r3
+  {
+    r0 = #0
+    jumpr r31
+  }
diff --git a/src/setjmp/hexagon/longjmp.s b/src/setjmp/hexagon/longjmp.s
new file mode 100644
index 00000000..691b67dd
--- /dev/null
+++ b/src/setjmp/hexagon/longjmp.s
@@ -0,0 +1,25 @@
+.text
+.global _longjmp
+.global longjmp
+.type _longjmp,%function
+.type longjmp,%function
+_longjmp:
+longjmp:
+    { r17:16=memd(r0+#0)
+      r19:18=memd(r0+#8) }
+    { r21:20=memd(r0+#16)
+      r23:22=memd(r0+#24) }
+    { r25:24=memd(r0+#32)
+      r27:26=memd(r0+#40) }
+    { r29:28=memd(r0+#48)
+      r31:30=memd(r0+#56) }
+
+    r0 = r1
+    r1 = #0
+    p0 = cmp.eq(r0,r1)
+    if (!p0) jumpr r31
+    r0 = #1
+
+    jumpr r31
+.size _longjmp, .-_longjmp
+.size longjmp, .-longjmp
diff --git a/src/setjmp/hexagon/setjmp.s b/src/setjmp/hexagon/setjmp.s
new file mode 100644
index 00000000..d29f036e
--- /dev/null
+++ b/src/setjmp/hexagon/setjmp.s
@@ -0,0 +1,24 @@
+.text
+.global __setjmp
+.global _setjmp
+.global setjmp
+.type __setjmp,@function
+.type _setjmp,@function
+.type setjmp,@function
+__setjmp:
+_setjmp:
+setjmp:
+    { memd(r0+#0)=r17:16
+      memd(r0+#8)=r19:18 }
+    { memd(r0+#16)=r21:20
+      memd(r0+#24)=r23:22 }
+    { memd(r0+#32)=r25:24
+      memd(r0+#40)=r27:26 }
+    { memd(r0+#48)=r29:28
+      memd(r0+#56)=r31:30 }
+
+    r0 = #0
+    jumpr r31
+.size __setjmp, .-__setjmp
+.size _setjmp, .-_setjmp
+.size setjmp, .-setjmp
diff --git a/src/signal/hexagon/restore.s b/src/signal/hexagon/restore.s
new file mode 100644
index 00000000..f43f5e02
--- /dev/null
+++ b/src/signal/hexagon/restore.s
@@ -0,0 +1,11 @@
+// TODO - Test this if sa_restorer is ever supported in our kernel
+.global __restore
+.type __restore,%function
+.global __restore_rt
+.type __restore_rt,%function
+__restore:
+__restore_rt:
+	r6 = #139				// SYS_rt_sigreturn
+	trap0(#0)
+.size __restore, .-__restore
+.size __restore_rt, .-__restore_rt
diff --git a/src/signal/hexagon/sigsetjmp.s b/src/signal/hexagon/sigsetjmp.s
new file mode 100644
index 00000000..f1aaf165
--- /dev/null
+++ b/src/signal/hexagon/sigsetjmp.s
@@ -0,0 +1,28 @@
+.global sigsetjmp
+.global __sigsetjmp
+.type sigsetjmp,@function
+.type __sigsetjmp,@function
+.balign 4
+sigsetjmp:
+__sigsetjmp:
+	// if savemask is 0 sigsetjmp behaves like setjmp
+	{
+		p0 = cmp.eq(r1, #0)
+		if (p0.new) jump:t ##setjmp
+	}
+	{
+		memw(r0+#64+4+8) = r16  // save r16 in __ss[2]
+		memw(r0+#64)   = r31  // save linkregister in __fl
+		r16 = r0
+	}
+		call ##setjmp
+	{
+		r1 = r0;
+		r0  = r16             // restore r0
+		r31 = memw(r16+#64)   // restore linkregister
+		r16 = memw(r16+#64+4+8) // restore r16 from __ss[2]
+	}
+.hidden __sigsetjmp_tail
+	jump ##__sigsetjmp_tail
+
+.size	sigsetjmp, .-sigsetjmp
diff --git a/src/thread/hexagon/__set_thread_area.s b/src/thread/hexagon/__set_thread_area.s
new file mode 100644
index 00000000..87a991b7
--- /dev/null
+++ b/src/thread/hexagon/__set_thread_area.s
@@ -0,0 +1,7 @@
+.global __set_thread_area
+.type   __set_thread_area,@function
+__set_thread_area:
+	{ ugp = r0
+	  r0 = #0
+	  jumpr r31 }
+.size __set_thread_area, .-__set_thread_area
diff --git a/src/thread/hexagon/__unmapself.s b/src/thread/hexagon/__unmapself.s
new file mode 100644
index 00000000..c47dce21
--- /dev/null
+++ b/src/thread/hexagon/__unmapself.s
@@ -0,0 +1,11 @@
+#include <syscall.h>
+
+.global __unmapself
+.type   __unmapself,%function
+__unmapself:
+	r6 = #215			// SYS_munmap
+	trap0(#1)
+	r6 = #93			// SYS_exit
+	trap0(#1)
+	jumpr r31
+.size __unmapself, .-__unmapself
diff --git a/src/thread/hexagon/clone.s b/src/thread/hexagon/clone.s
new file mode 100644
index 00000000..42aab67a
--- /dev/null
+++ b/src/thread/hexagon/clone.s
@@ -0,0 +1,37 @@
+// __clone(func, stack, flags, arg, ptid, tls, ctid)
+//         r0,   r1,    r2,    r3,  r4,   r5,  stack
+
+// tid = syscall(SYS_clone, flags, stack, ptid, ctid, tls)
+//               r6,        r0,    r1,    r2,   r3,   r4
+// if (tid != 0) return
+// func(arg)
+// syscall(SYS_exit)
+
+.text
+.global __clone
+.type   __clone,%function
+__clone:
+	allocframe(#8)
+	// Save pointers for later
+	{ r11 = r0
+	  r10 = r3 }
+
+	// Set up syscall args - The stack must be 8 byte aligned.
+	{ r0 = r2
+	  r1 = and(r1, ##0xfffffff8)
+	  r2 = r4 }
+	{
+	  r3 = memw(r30+#8)
+	  r4 = r5 }
+	r6 = #220			// SYS_clone
+	trap0(#1)
+
+	p0 = cmp.eq(r0, #0)
+	if (!p0) dealloc_return
+
+	{ r0 = r10
+	  callr r11 }
+
+	r6 = #93			// SYS_exit
+	trap0(#1)
+.size __clone, .-__clone
diff --git a/src/thread/hexagon/syscall_cp.s b/src/thread/hexagon/syscall_cp.s
new file mode 100644
index 00000000..50383cad
--- /dev/null
+++ b/src/thread/hexagon/syscall_cp.s
@@ -0,0 +1,35 @@
+// __syscall_cp_asm(&self->cancel, nr,  u, v, w, x, y,    z)
+//                  r0             r1  r2 r3 r4 r5  stack stack
+
+// syscall(nr,  u, v, w, x, y, z)
+//         r6  r0 r1 r2 r3 r4 r5
+
+.text
+.global __cp_begin
+.hidden __cp_begin
+.global __cp_end
+.hidden __cp_end
+.global __cp_cancel
+.hidden __cp_cancel
+.hidden __cancel
+.global __syscall_cp_asm
+.hidden __syscall_cp_asm
+.type __syscall_cp_asm,%function
+__syscall_cp_asm:
+__cp_begin:
+	r0 = memw(r0+#0)
+	{
+	  p0 = cmp.eq(r0, #0); if (!p0.new) jump:nt __cancel
+	}
+	{ r6 = r1
+	  r1:0 = combine(r3, r2)
+	  r3:2 = combine(r5, r4) }
+	{ r4 = memw(r29+#0)
+	  r5 = memw(r29+#4) }
+	trap0(#1)
+__cp_end:
+	jumpr r31
+.size __syscall_cp_asm, .-__syscall_cp_asm
+__cp_cancel:
+        jump __cancel
+.size __cp_cancel, .-__cp_cancel

^ permalink raw reply	[flat|nested] 43+ messages in thread

* Re: [musl] Hexagon DSP support
  2020-06-18 16:37                     ` sidneym
@ 2020-06-18 21:42                       ` Szabolcs Nagy
  2020-06-19 21:58                         ` sidneym
  0 siblings, 1 reply; 43+ messages in thread
From: Szabolcs Nagy @ 2020-06-18 21:42 UTC (permalink / raw)
  To: sidneym; +Cc: musl

* sidneym@codeaurora.org <sidneym@codeaurora.org> [2020-06-18 11:37:05 -0500]:
> I attached the updated REPORT with warning output disabled, -w and
> -fno-rounding-math (See https://bugs.llvm.org/show_bug.cgi?id=45329)  along
> with the patch.  I've rebased a couple of times without any conflicts and
> the git repo is here: https://github.com/quic/musl/tree/hexagon

the fmal failures are a bit concerning:

fmal should be a tail call to fma if long double has the same
representation as double. (can you please verify this? there
should be a single branch instruction in fmal)

there are no fma failures with the same tests so fmal should
work fine too.

may be the libc-test code got miscompiled or somehow wrong?
or long double arithmetics is broken?

^ permalink raw reply	[flat|nested] 43+ messages in thread

* RE: [musl] Hexagon DSP support
  2020-06-18 21:42                       ` Szabolcs Nagy
@ 2020-06-19 21:58                         ` sidneym
  2020-06-19 22:46                           ` Rich Felker
  0 siblings, 1 reply; 43+ messages in thread
From: sidneym @ 2020-06-19 21:58 UTC (permalink / raw)
  To: 'Szabolcs Nagy'; +Cc: musl


> -----Original Message-----
> From: Szabolcs Nagy <nsz@port70.net>
> Sent: Thursday, June 18, 2020 4:43 PM
> To: sidneym@codeaurora.org
> Cc: musl@lists.openwall.com
> Subject: Re: [musl] Hexagon DSP support
> 
> * sidneym@codeaurora.org <sidneym@codeaurora.org> [2020-06-18 11:37:05
> -0500]:
> > I attached the updated REPORT with warning output disabled, -w and
> > -fno-rounding-math (See https://bugs.llvm.org/show_bug.cgi?id=45329)
> > along with the patch.  I've rebased a couple of times without any
> > conflicts and the git repo is here:
> > https://github.com/quic/musl/tree/hexagon
> 
> the fmal failures are a bit concerning:
> 
> fmal should be a tail call to fma if long double has the same
representation as
> double. (can you please verify this? there should be a single branch
instruction
> in fmal)
> 
> there are no fma failures with the same tests so fmal should work fine
too.

In the case of fma the selected function comes from compiler-rt-builtins.
It looks like since fmal calls fma within the context of the c-library the
c-library's version is branched to.

compiler-rt-builtins for hexagon should include a fmal function that jumps
to the optimized fma, it does not but I can fix that.

I generally only use the tip-of-tree clang and that isn't generating correct
code when building fma.c.  When I use our internally release llvm tools fma
and fmal tests both pass.

Thanks

> 
> may be the libc-test code got miscompiled or somehow wrong?
> or long double arithmetics is broken?


^ permalink raw reply	[flat|nested] 43+ messages in thread

* Re: [musl] Hexagon DSP support
  2020-06-19 21:58                         ` sidneym
@ 2020-06-19 22:46                           ` Rich Felker
  2020-06-20  0:03                             ` [musl] strtok Robert Skopalík
  2020-06-20  2:29                             ` [musl] Hexagon DSP support sidneym
  0 siblings, 2 replies; 43+ messages in thread
From: Rich Felker @ 2020-06-19 22:46 UTC (permalink / raw)
  To: sidneym; +Cc: 'Szabolcs Nagy', musl

On Fri, Jun 19, 2020 at 04:58:53PM -0500, sidneym@codeaurora.org wrote:
> 
> > -----Original Message-----
> > From: Szabolcs Nagy <nsz@port70.net>
> > Sent: Thursday, June 18, 2020 4:43 PM
> > To: sidneym@codeaurora.org
> > Cc: musl@lists.openwall.com
> > Subject: Re: [musl] Hexagon DSP support
> > 
> > * sidneym@codeaurora.org <sidneym@codeaurora.org> [2020-06-18 11:37:05
> > -0500]:
> > > I attached the updated REPORT with warning output disabled, -w and
> > > -fno-rounding-math (See https://bugs.llvm.org/show_bug.cgi?id=45329)
> > > along with the patch.  I've rebased a couple of times without any
> > > conflicts and the git repo is here:
> > > https://github.com/quic/musl/tree/hexagon
> > 
> > the fmal failures are a bit concerning:
> > 
> > fmal should be a tail call to fma if long double has the same
> representation as
> > double. (can you please verify this? there should be a single branch
> instruction
> > in fmal)
> > 
> > there are no fma failures with the same tests so fmal should work fine
> too.
> 
> In the case of fma the selected function comes from compiler-rt-builtins.
> It looks like since fmal calls fma within the context of the c-library the
> c-library's version is branched to.

Are you talking about how libc-test was built or how musl was built?
This kind of replacement is not valid in either place. musl is built
with -ffreestanding, and libc-test is expected to be built with
-fno-builtin.

Rich

^ permalink raw reply	[flat|nested] 43+ messages in thread

* [musl] strtok
  2020-06-19 22:46                           ` Rich Felker
@ 2020-06-20  0:03                             ` Robert Skopalík
  2020-06-20  0:15                               ` Rich Felker
  2020-06-20  2:29                             ` [musl] Hexagon DSP support sidneym
  1 sibling, 1 reply; 43+ messages in thread
From: Robert Skopalík @ 2020-06-20  0:03 UTC (permalink / raw)
  To: musl; +Cc: Miroslav Němeček

Hello,

we are working on an OS for a STM32 MCU. We like how the reentrancy is solved in musl, but ... when two (or more) userspace programs using a strtok function are run, there might be a collision (because strtok uses a static var to save the pointer). We did not find any redirection mechanism from strtok to strtok_r. How is it meant pls? We do not want to force the users to write strtok_r into a non-threaded user program.

Is there some solution to make it work right?

Thank you

RS

^ permalink raw reply	[flat|nested] 43+ messages in thread

* Re: [musl] strtok
  2020-06-20  0:03                             ` [musl] strtok Robert Skopalík
@ 2020-06-20  0:15                               ` Rich Felker
  2020-06-20  0:36                                 ` Robert Skopalík
                                                   ` (2 more replies)
  0 siblings, 3 replies; 43+ messages in thread
From: Rich Felker @ 2020-06-20  0:15 UTC (permalink / raw)
  To: Robert Skopalík; +Cc: musl, Miroslav Němeček

On Sat, Jun 20, 2020 at 12:03:12AM +0000, Robert Skopalík wrote:
> Hello,
> 
> we are working on an OS for a STM32 MCU. We like how the reentrancy
> is solved in musl, but ... when two (or more) userspace programs
> using a strtok function are run, there might be a collision (because
> strtok uses a static var to save the pointer). We did not find any
> redirection mechanism from strtok to strtok_r. How is it meant pls?
> We do not want to force the users to write strtok_r into a
> non-threaded user program.
> 
> Is there some solution to make it work right?
> 
> Thank you

If multiple programs are running, each needs its own execution context
including its own versions of all libc (and any other) global data.
Probably you should look into the ARM FDPIC ABI, which is the right
way to do this while still sharing program text for MMU-less
microcontrollers like the one you're working with. The tooling should
be mature now so that support could be added to musl, but making it
happen needs people who are interested in providing feedback and
testing.

Rich

^ permalink raw reply	[flat|nested] 43+ messages in thread

* RE: [musl] strtok
  2020-06-20  0:15                               ` Rich Felker
@ 2020-06-20  0:36                                 ` Robert Skopalík
  2020-06-20  0:46                                 ` Robert Skopalík
  2020-06-20  7:07                                 ` Patrick Oppenlander
  2 siblings, 0 replies; 43+ messages in thread
From: Robert Skopalík @ 2020-06-20  0:36 UTC (permalink / raw)
  To: Rich Felker; +Cc: musl, Miroslav Němeček

I see! Thank you.

We know fdpic. I guess we need to compile gcc toolchain with fdpic for this MCU. We tried that, no success :) I am afraid we are not experienced enough to make it right. We don't even know how the resulting gcc should be named - arm-our_os-eabi? :)

Could you pls point us to some literature - what to read to do it? And to connect it to musl the right way?

Thank you.

R

-----Original Message-----
From: Rich Felker [mailto:dalias@libc.org] 
Sent: Saturday, June 20, 2020 2:16 AM
To: Robert Skopalík
Cc: musl@lists.openwall.com; Miroslav Němeček
Subject: Re: [musl] strtok

On Sat, Jun 20, 2020 at 12:03:12AM +0000, Robert Skopalík wrote:
> Hello,
> 
> we are working on an OS for a STM32 MCU. We like how the reentrancy
> is solved in musl, but ... when two (or more) userspace programs
> using a strtok function are run, there might be a collision (because
> strtok uses a static var to save the pointer). We did not find any
> redirection mechanism from strtok to strtok_r. How is it meant pls?
> We do not want to force the users to write strtok_r into a
> non-threaded user program.
> 
> Is there some solution to make it work right?
> 
> Thank you

If multiple programs are running, each needs its own execution context
including its own versions of all libc (and any other) global data.
Probably you should look into the ARM FDPIC ABI, which is the right
way to do this while still sharing program text for MMU-less
microcontrollers like the one you're working with. The tooling should
be mature now so that support could be added to musl, but making it
happen needs people who are interested in providing feedback and
testing.

Rich

^ permalink raw reply	[flat|nested] 43+ messages in thread

* RE: [musl] strtok
  2020-06-20  0:15                               ` Rich Felker
  2020-06-20  0:36                                 ` Robert Skopalík
@ 2020-06-20  0:46                                 ` Robert Skopalík
  2020-06-20  1:44                                   ` Rich Felker
  2020-06-20  7:07                                 ` Patrick Oppenlander
  2 siblings, 1 reply; 43+ messages in thread
From: Robert Skopalík @ 2020-06-20  0:46 UTC (permalink / raw)
  To: Rich Felker; +Cc: musl, Miroslav Němeček

I wouldn't like to bother you more than neccessary, but if you don't mind (as I hope :), I have one more question:

Do we really need got table for a noMMU MCU? Fdpic uses it and I was looking for the answer what is it for pretty long - no success. Wouldn't it be enough just to keep the data segment offset in r9 and make all the data relative to it (in compiler)? That would get rid of the whole got table complexities. Bad idea? :)

Thanks

R

-----Original Message-----
From: Rich Felker [mailto:dalias@libc.org] 
Sent: Saturday, June 20, 2020 2:16 AM
To: Robert Skopalík
Cc: musl@lists.openwall.com; Miroslav Němeček
Subject: Re: [musl] strtok

On Sat, Jun 20, 2020 at 12:03:12AM +0000, Robert Skopalík wrote:
> Hello,
> 
> we are working on an OS for a STM32 MCU. We like how the reentrancy
> is solved in musl, but ... when two (or more) userspace programs
> using a strtok function are run, there might be a collision (because
> strtok uses a static var to save the pointer). We did not find any
> redirection mechanism from strtok to strtok_r. How is it meant pls?
> We do not want to force the users to write strtok_r into a
> non-threaded user program.
> 
> Is there some solution to make it work right?
> 
> Thank you

If multiple programs are running, each needs its own execution context
including its own versions of all libc (and any other) global data.
Probably you should look into the ARM FDPIC ABI, which is the right
way to do this while still sharing program text for MMU-less
microcontrollers like the one you're working with. The tooling should
be mature now so that support could be added to musl, but making it
happen needs people who are interested in providing feedback and
testing.

Rich

^ permalink raw reply	[flat|nested] 43+ messages in thread

* Re: [musl] strtok
  2020-06-20  0:46                                 ` Robert Skopalík
@ 2020-06-20  1:44                                   ` Rich Felker
  0 siblings, 0 replies; 43+ messages in thread
From: Rich Felker @ 2020-06-20  1:44 UTC (permalink / raw)
  To: Robert Skopalík; +Cc: musl, Miroslav Němeček

On Sat, Jun 20, 2020 at 12:46:43AM +0000, Robert Skopalík wrote:
> I wouldn't like to bother you more than neccessary, but if you don't
> mind (as I hope :), I have one more question:
> 
> Do we really need got table for a noMMU MCU? Fdpic uses it and I was
> looking for the answer what is it for pretty long - no success.
> Wouldn't it be enough just to keep the data segment offset in r9 and
> make all the data relative to it (in compiler)? That would get rid
> of the whole got table complexities. Bad idea? :)

That doesn't admit shared libraries, just multiple instances of the
same static-linked binary. It's not a supported ABI so you'd need to
hack up a toolchain and modified musl to do it.

On the other hand if you don't care about sharing text at all (might
be the case if yout text is expected to be very small anyway) you can
just use normal PIE binaries.

Rich


> -----Original Message-----
> From: Rich Felker [mailto:dalias@libc.org] 
> Sent: Saturday, June 20, 2020 2:16 AM
> To: Robert Skopalík
> Cc: musl@lists.openwall.com; Miroslav Němeček
> Subject: Re: [musl] strtok
> 
> On Sat, Jun 20, 2020 at 12:03:12AM +0000, Robert Skopalík wrote:
> > Hello,
> > 
> > we are working on an OS for a STM32 MCU. We like how the reentrancy
> > is solved in musl, but ... when two (or more) userspace programs
> > using a strtok function are run, there might be a collision (because
> > strtok uses a static var to save the pointer). We did not find any
> > redirection mechanism from strtok to strtok_r. How is it meant pls?
> > We do not want to force the users to write strtok_r into a
> > non-threaded user program.
> > 
> > Is there some solution to make it work right?
> > 
> > Thank you
> 
> If multiple programs are running, each needs its own execution context
> including its own versions of all libc (and any other) global data.
> Probably you should look into the ARM FDPIC ABI, which is the right
> way to do this while still sharing program text for MMU-less
> microcontrollers like the one you're working with. The tooling should
> be mature now so that support could be added to musl, but making it
> happen needs people who are interested in providing feedback and
> testing.
> 
> Rich

^ permalink raw reply	[flat|nested] 43+ messages in thread

* RE: [musl] Hexagon DSP support
  2020-06-19 22:46                           ` Rich Felker
  2020-06-20  0:03                             ` [musl] strtok Robert Skopalík
@ 2020-06-20  2:29                             ` sidneym
  2020-06-20  3:20                               ` Rich Felker
  1 sibling, 1 reply; 43+ messages in thread
From: sidneym @ 2020-06-20  2:29 UTC (permalink / raw)
  To: musl; +Cc: 'Szabolcs Nagy'



> -----Original Message-----
> From: Rich Felker <dalias@libc.org>
> Sent: Friday, June 19, 2020 5:46 PM
> To: sidneym@codeaurora.org
> Cc: 'Szabolcs Nagy' <nsz@port70.net>; musl@lists.openwall.com
> Subject: Re: [musl] Hexagon DSP support
> 
> On Fri, Jun 19, 2020 at 04:58:53PM -0500, sidneym@codeaurora.org wrote:
> >
> > > -----Original Message-----
> > > From: Szabolcs Nagy <nsz@port70.net>
> > > Sent: Thursday, June 18, 2020 4:43 PM
> > > To: sidneym@codeaurora.org
> > > Cc: musl@lists.openwall.com
> > > Subject: Re: [musl] Hexagon DSP support
> > >
> > > * sidneym@codeaurora.org <sidneym@codeaurora.org> [2020-06-18
> > > 11:37:05
> > > -0500]:
> > > > I attached the updated REPORT with warning output disabled, -w and
> > > > -fno-rounding-math (See
> > > > https://bugs.llvm.org/show_bug.cgi?id=45329)
> > > > along with the patch.  I've rebased a couple of times without any
> > > > conflicts and the git repo is here:
> > > > https://github.com/quic/musl/tree/hexagon
> > >
> > > the fmal failures are a bit concerning:
> > >
> > > fmal should be a tail call to fma if long double has the same
> > representation as
> > > double. (can you please verify this? there should be a single branch
> > instruction
> > > in fmal)
> > >
> > > there are no fma failures with the same tests so fmal should work
> > > fine
> > too.
> >
> > In the case of fma the selected function comes from
compiler-rt-builtins.
> > It looks like since fmal calls fma within the context of the c-library
> > the c-library's version is branched to.
> 
> Are you talking about how libc-test was built or how musl was built?
> This kind of replacement is not valid in either place. musl is built with
-
> ffreestanding, and libc-test is expected to be built with -fno-builtin.
> 
The link order is the reason.  The clang driver places
-lclang_rt.builtins-hexagon ahead of -lc and it happens that this library
includes an implementation of fma.  I think fma is something that was
introduced in error in compiler-rt.builtins because hexagon is the only arch
that has it.


> Rich


^ permalink raw reply	[flat|nested] 43+ messages in thread

* Re: [musl] Hexagon DSP support
  2020-06-20  2:29                             ` [musl] Hexagon DSP support sidneym
@ 2020-06-20  3:20                               ` Rich Felker
  2020-07-20 21:26                                 ` sidneym
  0 siblings, 1 reply; 43+ messages in thread
From: Rich Felker @ 2020-06-20  3:20 UTC (permalink / raw)
  To: sidneym; +Cc: musl, 'Szabolcs Nagy'

On Fri, Jun 19, 2020 at 09:29:04PM -0500, sidneym@codeaurora.org wrote:
> 
> 
> > -----Original Message-----
> > From: Rich Felker <dalias@libc.org>
> > Sent: Friday, June 19, 2020 5:46 PM
> > To: sidneym@codeaurora.org
> > Cc: 'Szabolcs Nagy' <nsz@port70.net>; musl@lists.openwall.com
> > Subject: Re: [musl] Hexagon DSP support
> > 
> > On Fri, Jun 19, 2020 at 04:58:53PM -0500, sidneym@codeaurora.org wrote:
> > >
> > > > -----Original Message-----
> > > > From: Szabolcs Nagy <nsz@port70.net>
> > > > Sent: Thursday, June 18, 2020 4:43 PM
> > > > To: sidneym@codeaurora.org
> > > > Cc: musl@lists.openwall.com
> > > > Subject: Re: [musl] Hexagon DSP support
> > > >
> > > > * sidneym@codeaurora.org <sidneym@codeaurora.org> [2020-06-18
> > > > 11:37:05
> > > > -0500]:
> > > > > I attached the updated REPORT with warning output disabled, -w and
> > > > > -fno-rounding-math (See
> > > > > https://bugs.llvm.org/show_bug.cgi?id=45329)
> > > > > along with the patch.  I've rebased a couple of times without any
> > > > > conflicts and the git repo is here:
> > > > > https://github.com/quic/musl/tree/hexagon
> > > >
> > > > the fmal failures are a bit concerning:
> > > >
> > > > fmal should be a tail call to fma if long double has the same
> > > representation as
> > > > double. (can you please verify this? there should be a single branch
> > > instruction
> > > > in fmal)
> > > >
> > > > there are no fma failures with the same tests so fmal should work
> > > > fine
> > > too.
> > >
> > > In the case of fma the selected function comes from
> compiler-rt-builtins.
> > > It looks like since fmal calls fma within the context of the c-library
> > > the c-library's version is branched to.
> > 
> > Are you talking about how libc-test was built or how musl was built?
> > This kind of replacement is not valid in either place. musl is built with
> -
> > ffreestanding, and libc-test is expected to be built with -fno-builtin.
> > 
> The link order is the reason.  The clang driver places
> -lclang_rt.builtins-hexagon ahead of -lc and it happens that this library
> includes an implementation of fma.  I think fma is something that was
> introduced in error in compiler-rt.builtins because hexagon is the only arch
> that has it.

Yes, that's a bug. compiler-rt cannot define libc functions.

Rich

^ permalink raw reply	[flat|nested] 43+ messages in thread

* Re: [musl] strtok
  2020-06-20  0:15                               ` Rich Felker
  2020-06-20  0:36                                 ` Robert Skopalík
  2020-06-20  0:46                                 ` Robert Skopalík
@ 2020-06-20  7:07                                 ` Patrick Oppenlander
  2020-06-20 13:00                                   ` Robert Skopalík
  2 siblings, 1 reply; 43+ messages in thread
From: Patrick Oppenlander @ 2020-06-20  7:07 UTC (permalink / raw)
  To: musl

On Sat, Jun 20, 2020 at 10:15 AM Rich Felker <dalias@libc.org> wrote:
>
> If multiple programs are running, each needs its own execution context
> including its own versions of all libc (and any other) global data.
> Probably you should look into the ARM FDPIC ABI, which is the right
> way to do this while still sharing program text for MMU-less
> microcontrollers like the one you're working with. The tooling should
> be mature now so that support could be added to musl, but making it
> happen needs people who are interested in providing feedback and
> testing.
>

I'm very interested and will definitely be able to provide feedback & testing.

Apex (apexrtos.com) is waiting for musl FDPIC support so that I can
work on the kernel side. This is the RTOS with the Linux syscall
interface I think I might have mentioned some time ago.

Patrick

^ permalink raw reply	[flat|nested] 43+ messages in thread

* RE: [musl] strtok
  2020-06-20  7:07                                 ` Patrick Oppenlander
@ 2020-06-20 13:00                                   ` Robert Skopalík
  2020-06-22  0:57                                     ` Bery Saidi
  0 siblings, 1 reply; 43+ messages in thread
From: Robert Skopalík @ 2020-06-20 13:00 UTC (permalink / raw)
  To: musl

Me tooo :)))

-----Original Message-----
From: Patrick Oppenlander [mailto:patrick.oppenlander@gmail.com] 
Sent: Saturday, June 20, 2020 9:07 AM
To: musl@lists.openwall.com
Subject: Re: [musl] strtok

On Sat, Jun 20, 2020 at 10:15 AM Rich Felker <dalias@libc.org> wrote:
>
> If multiple programs are running, each needs its own execution context
> including its own versions of all libc (and any other) global data.
> Probably you should look into the ARM FDPIC ABI, which is the right
> way to do this while still sharing program text for MMU-less
> microcontrollers like the one you're working with. The tooling should
> be mature now so that support could be added to musl, but making it
> happen needs people who are interested in providing feedback and
> testing.
>

I'm very interested and will definitely be able to provide feedback & testing.

Apex (apexrtos.com) is waiting for musl FDPIC support so that I can
work on the kernel side. This is the RTOS with the Linux syscall
interface I think I might have mentioned some time ago.

Patrick

^ permalink raw reply	[flat|nested] 43+ messages in thread

* Re: [musl] strtok
  2020-06-20 13:00                                   ` Robert Skopalík
@ 2020-06-22  0:57                                     ` Bery Saidi
  0 siblings, 0 replies; 43+ messages in thread
From: Bery Saidi @ 2020-06-22  0:57 UTC (permalink / raw)
  To: musl

[-- Attachment #1: Type: text/plain, Size: 1257 bytes --]

I can also provide testing and feedback.
Regards,
On Sat, Jun 20, 2020 at 9:01 AM Robert Skopalík <rs@income.cz> wrote:

> Me tooo :)))
>
> -----Original Message-----
> From: Patrick Oppenlander [mailto:patrick.oppenlander@gmail.com]
> Sent: Saturday, June 20, 2020 9:07 AM
> To: musl@lists.openwall.com
> Subject: Re: [musl] strtok
>
> On Sat, Jun 20, 2020 at 10:15 AM Rich Felker <dalias@libc.org> wrote:
> >
> > If multiple programs are running, each needs its own execution context
> > including its own versions of all libc (and any other) global data.
> > Probably you should look into the ARM FDPIC ABI, which is the right
> > way to do this while still sharing program text for MMU-less
> > microcontrollers like the one you're working with. The tooling should
> > be mature now so that support could be added to musl, but making it
> > happen needs people who are interested in providing feedback and
> > testing.
> >
>
> I'm very interested and will definitely be able to provide feedback &
> testing.
>
> Apex (apexrtos.com) is waiting for musl FDPIC support so that I can
> work on the kernel side. This is the RTOS with the Linux syscall
> interface I think I might have mentioned some time ago.
>
> Patrick
>

[-- Attachment #2: Type: text/html, Size: 1886 bytes --]

^ permalink raw reply	[flat|nested] 43+ messages in thread

* RE: [musl] Hexagon DSP support
  2020-06-20  3:20                               ` Rich Felker
@ 2020-07-20 21:26                                 ` sidneym
  2020-07-23 21:56                                   ` Szabolcs Nagy
  0 siblings, 1 reply; 43+ messages in thread
From: sidneym @ 2020-07-20 21:26 UTC (permalink / raw)
  To: 'Rich Felker'; +Cc: musl, 'Szabolcs Nagy'

[-- Attachment #1: Type: text/plain, Size: 3521 bytes --]



> -----Original Message-----
> From: Rich Felker <dalias@libc.org>
> Sent: Friday, June 19, 2020 10:21 PM
> To: sidneym@codeaurora.org
> Cc: musl@lists.openwall.com; 'Szabolcs Nagy' <nsz@port70.net>
> Subject: Re: [musl] Hexagon DSP support
> 
> On Fri, Jun 19, 2020 at 09:29:04PM -0500, sidneym@codeaurora.org wrote:
> >
> >
> > > -----Original Message-----
> > > From: Rich Felker <dalias@libc.org>
> > > Sent: Friday, June 19, 2020 5:46 PM
> > > To: sidneym@codeaurora.org
> > > Cc: 'Szabolcs Nagy' <nsz@port70.net>; musl@lists.openwall.com
> > > Subject: Re: [musl] Hexagon DSP support
> > >
> > > On Fri, Jun 19, 2020 at 04:58:53PM -0500, sidneym@codeaurora.org
> wrote:
> > > >
> > > > > -----Original Message-----
> > > > > From: Szabolcs Nagy <nsz@port70.net>
> > > > > Sent: Thursday, June 18, 2020 4:43 PM
> > > > > To: sidneym@codeaurora.org
> > > > > Cc: musl@lists.openwall.com
> > > > > Subject: Re: [musl] Hexagon DSP support
> > > > >
> > > > > * sidneym@codeaurora.org <sidneym@codeaurora.org> [2020-06-18
> > > > > 11:37:05
> > > > > -0500]:
> > > > > > I attached the updated REPORT with warning output disabled, -w
> > > > > > and -fno-rounding-math (See
> > > > > > https://bugs.llvm.org/show_bug.cgi?id=45329)
> > > > > > along with the patch.  I've rebased a couple of times without
> > > > > > any conflicts and the git repo is here:
> > > > > > https://github.com/quic/musl/tree/hexagon
> > > > >
> > > > > the fmal failures are a bit concerning:
> > > > >
> > > > > fmal should be a tail call to fma if long double has the same
> > > > representation as
> > > > > double. (can you please verify this? there should be a single
> > > > > branch
> > > > instruction
> > > > > in fmal)
> > > > >
> > > > > there are no fma failures with the same tests so fmal should
> > > > > work fine
> > > > too.
> > > >
> > > > In the case of fma the selected function comes from
> > compiler-rt-builtins.
> > > > It looks like since fmal calls fma within the context of the
> > > > c-library the c-library's version is branched to.
> > >
> > > Are you talking about how libc-test was built or how musl was built?
> > > This kind of replacement is not valid in either place. musl is built
> > > with
> > -
> > > ffreestanding, and libc-test is expected to be built with
-fno-builtin.
> > >
> > The link order is the reason.  The clang driver places
> > -lclang_rt.builtins-hexagon ahead of -lc and it happens that this
> > library includes an implementation of fma.  I think fma is something
> > that was introduced in error in compiler-rt.builtins because hexagon
> > is the only arch that has it.
> 
> Yes, that's a bug. compiler-rt cannot define libc functions.

I removed fma/fmal/fmax/fmin/fabs from compiler-rt-builtins,
https://reviews.llvm.org/D82263
The comparison with musl can be found here:
https://github.com/quic/musl/compare/hexagon but I've also attached the
patch.

An assert in clang when building both musl and libc-test for hexagon was
fixed by, https://reviews.llvm.org/D80952 prior to this change
-frounding-math had to be used.

The test-results are also attached.  Everything is built with the
tip-of-tree llvm so sometimes results vary but these are the results I got
from this morning's clone.  The only notable difference in the results would
be that both fma and fmal fail and this is because of the compiler-rt
change.  I didn't add fma to musl because it require more complex assembly,
along the lines you saw in an earlier version with sqrt. 

Thanks for reviewing.


> 
> Rich

[-- Attachment #2: Add-Hexagon.diff --]
[-- Type: application/octet-stream, Size: 43210 bytes --]

diff --git a/arch/hexagon/atomic_arch.h b/arch/hexagon/atomic_arch.h
new file mode 100644
index 00000000..af2f88a5
--- /dev/null
+++ b/arch/hexagon/atomic_arch.h
@@ -0,0 +1,184 @@
+#define a_ctz_32 a_ctz_32
+static inline int a_ctz_32(unsigned long x)
+{
+	__asm__(
+		"%0 = ct0(%0)\n\t"
+		: "+r"(x));
+	return x;
+}
+
+#define a_ctz_64 a_ctz_64
+static inline int a_ctz_64(uint64_t x)
+{
+	int count;
+	__asm__(
+		"%0 = ct0(%1)\n\t"
+		: "=r"(count) : "r"(x));
+	return count;
+}
+
+#define a_cas a_cas
+static inline int a_cas(volatile int *p, int t, int s)
+{
+	int dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%1)\n\t"
+		"	{ p0 = cmp.eq(%0, %2)\n\t"
+		"	  if (!p0.new) jump:nt 2f }\n\t"
+		"	memw_locked(%1, p0) = %3\n\t"
+		"	if (!p0) jump 1b\n\t"
+		"2:	\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(t), "r"(s)
+		: "p0", "memory" );
+        return dummy;
+}
+
+#define a_cas_p a_cas_p
+static inline void *a_cas_p(volatile void *p, void *t, void *s)
+{
+	return (void *)a_cas(p, (int)t, (int)s);
+}
+
+#define a_swap a_swap
+static inline int a_swap(volatile int *x, int v)
+{
+	int old, dummy;
+	__asm__ __volatile__(
+		"	%1 = %3\n\t"
+		"1:	%0 = memw_locked(%2)\n\t"
+		"	memw_locked(%2, p0) = %1\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(old), "=&r"(dummy)
+		: "r"(x), "r"(v)
+		: "p0", "memory" );
+        return old;
+}
+
+#define a_fetch_add a_fetch_add
+static inline int a_fetch_add(volatile int *x, int v)
+{
+	int old, dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%2)\n\t"
+		"	%1 = add(%0, %3)\n\t"
+		"	memw_locked(%2, p0) = %1\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(old), "=&r"(dummy)
+		: "r"(x), "r"(v)
+		: "p0", "memory" );
+        return old;
+}
+
+#define a_inc a_inc
+static inline void a_inc(volatile int *x)
+{
+	a_fetch_add(x, 1);
+}
+
+#define a_dec a_dec
+static inline void a_dec(volatile int *x)
+{
+	int dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%1)\n\t"
+		"	%0 = add(%0, #-1)\n\t"
+		"	memw_locked(%1, p0) = %0\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(x)
+		: "p0", "memory" );
+}
+
+#define a_store a_store
+static inline void a_store(volatile int *p, int x)
+{
+	int dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%1)\n\t"
+		"	memw_locked(%1, p0) = %2\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(x)
+		: "p0", "memory" );
+}
+
+#define a_barrier a_barrier
+static inline void a_barrier()
+{
+	__asm__ __volatile__ ("barrier" ::: "memory");
+}
+#define a_spin a_spin
+static inline void a_spin()
+{
+	__asm__ __volatile__ ("pause(#255)" :::);
+}
+
+#define a_crash a_crash
+static inline void a_crash()
+{
+	*(volatile char *)0=0;
+}
+
+#define a_and a_and
+static inline void a_and(volatile int *p, int v)
+{
+	int dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%1)\n\t"
+		"	%0 = and(%0, %2)\n\t"
+		"	memw_locked(%1, p0) = %0\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(v)
+		: "p0", "memory" );
+}
+
+#define  a_or a_or
+static inline void a_or(volatile int *p, int v)
+{
+	int dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%1)\n\t"
+		"	%0 = or(%0, %2)\n\t"
+		"	memw_locked(%1, p0) = %0\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(v)
+		: "p0", "memory" );
+}
+
+#define a_or_l a_or_l
+static inline void a_or_l(volatile void *p, long v)
+{
+	a_or(p, v);
+}
+
+#define a_and_64 a_and_64
+static inline void a_and_64(volatile uint64_t *p, uint64_t v)
+{
+	uint64_t dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memd_locked(%1)\n\t"
+		"	%0 = and(%0, %2)\n\t"
+		"	memd_locked(%1, p0) = %0\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(v)
+		: "p0", "memory" );
+}
+
+#define  a_or_64 a_or_64
+static inline void a_or_64(volatile uint64_t *p, uint64_t v)
+{
+	uint64_t dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memd_locked(%1)\n\t"
+		"	%0 = or(%0, %2)\n\t"
+		"	memd_locked(%1, p0) = %0\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(v)
+		: "p0", "memory" );
+}
+
diff --git a/arch/hexagon/bits/alltypes.h.in b/arch/hexagon/bits/alltypes.h.in
new file mode 100644
index 00000000..9d770c7e
--- /dev/null
+++ b/arch/hexagon/bits/alltypes.h.in
@@ -0,0 +1,26 @@
+#define _Addr int
+#define _Int64 long long
+#define _Reg int
+
+#define __BYTE_ORDER 1234
+#define __LONG_MAX 0x7fffffffL
+
+#ifndef __cplusplus
+#ifdef __WCHAR_TYPE__
+TYPEDEF __WCHAR_TYPE__ wchar_t;
+#else
+TYPEDEF long wchar_t;
+#endif
+#endif
+
+TYPEDEF float float_t;
+TYPEDEF double double_t;
+
+#if !defined(__cplusplus)
+TYPEDEF struct { _Alignas(8) long long __ll; long double __ld; } max_align_t;
+#elif defined(__GNUC__)
+TYPEDEF struct { __attribute__((__aligned__(8))) long long __ll; long double __ld; } max_align_t;
+#else
+TYPEDEF struct { alignas(8) long long __ll; long double __ld; } max_align_t;
+#endif
+
diff --git a/arch/hexagon/bits/fenv.h b/arch/hexagon/bits/fenv.h
new file mode 100644
index 00000000..d3349306
--- /dev/null
+++ b/arch/hexagon/bits/fenv.h
@@ -0,0 +1,20 @@
+#define FE_INVALID    (1 << 1)
+#define FE_DIVBYZERO  (1 << 2)
+#define FE_OVERFLOW   (1 << 3)
+#define FE_UNDERFLOW  (1 << 4)
+#define FE_INEXACT    (1 << 5)
+#define FE_ALL_EXCEPT (FE_DIVBYZERO | FE_INEXACT | FE_INVALID | \
+                       FE_OVERFLOW | FE_UNDERFLOW)
+
+#define FE_TONEAREST  0x00
+#define FE_TOWARDZERO 0x01
+#define FE_DOWNWARD   0x02
+#define FE_UPWARD     0x03
+
+typedef unsigned long fexcept_t;
+
+typedef struct {
+	unsigned long __cw;
+} fenv_t;
+
+#define FE_DFL_ENV      ((const fenv_t *) -1)
diff --git a/arch/hexagon/bits/float.h b/arch/hexagon/bits/float.h
new file mode 100644
index 00000000..c4a655e7
--- /dev/null
+++ b/arch/hexagon/bits/float.h
@@ -0,0 +1,16 @@
+#define FLT_EVAL_METHOD 0
+
+#define LDBL_TRUE_MIN 4.94065645841246544177e-324L
+#define LDBL_MIN 2.22507385850720138309e-308L
+#define LDBL_MAX 1.79769313486231570815e+308L
+#define LDBL_EPSILON 2.22044604925031308085e-16L
+
+#define LDBL_MANT_DIG 53
+#define LDBL_MIN_EXP (-1021)
+#define LDBL_MAX_EXP 1024
+
+#define LDBL_DIG 15
+#define LDBL_MIN_10_EXP (-307)
+#define LDBL_MAX_10_EXP 308
+
+#define DECIMAL_DIG 17
diff --git a/arch/hexagon/bits/ipcstat.h b/arch/hexagon/bits/ipcstat.h
new file mode 100644
index 00000000..4f4fcb0c
--- /dev/null
+++ b/arch/hexagon/bits/ipcstat.h
@@ -0,0 +1 @@
+#define IPC_STAT 0x102
diff --git a/arch/hexagon/bits/msg.h b/arch/hexagon/bits/msg.h
new file mode 100644
index 00000000..7bbbb2bf
--- /dev/null
+++ b/arch/hexagon/bits/msg.h
@@ -0,0 +1,18 @@
+struct msqid_ds {
+	struct ipc_perm msg_perm;
+	unsigned long __msg_stime_lo;
+	unsigned long __msg_stime_hi;
+	unsigned long __msg_rtime_lo;
+	unsigned long __msg_rtime_hi;
+	unsigned long __msg_ctime_lo;
+	unsigned long __msg_ctime_hi;
+	unsigned long msg_cbytes;
+	msgqnum_t msg_qnum;
+	msglen_t msg_qbytes;
+	pid_t msg_lspid;
+	pid_t msg_lrpid;
+	unsigned long __unused[2];
+	time_t msg_stime;
+	time_t msg_rtime;
+	time_t msg_ctime;
+};
diff --git a/arch/hexagon/bits/posix.h b/arch/hexagon/bits/posix.h
new file mode 100644
index 00000000..30a38714
--- /dev/null
+++ b/arch/hexagon/bits/posix.h
@@ -0,0 +1,2 @@
+#define _POSIX_V6_ILP32_OFFBIG  1
+#define _POSIX_V7_ILP32_OFFBIG  1
diff --git a/arch/hexagon/bits/sem.h b/arch/hexagon/bits/sem.h
new file mode 100644
index 00000000..65661542
--- /dev/null
+++ b/arch/hexagon/bits/sem.h
@@ -0,0 +1,13 @@
+struct semid_ds {
+	struct ipc_perm sem_perm;
+	unsigned long __sem_otime_lo;
+	unsigned long __sem_otime_hi;
+	unsigned long __sem_ctime_lo;
+	unsigned long __sem_ctime_hi;
+	unsigned short sem_nsems;
+	char __sem_nsems_pad[sizeof(long)-sizeof(short)];
+	long __unused3;
+	long __unused4;
+	time_t sem_otime;
+	time_t sem_ctime;
+};
diff --git a/arch/hexagon/bits/setjmp.h b/arch/hexagon/bits/setjmp.h
new file mode 100644
index 00000000..5ee5e49f
--- /dev/null
+++ b/arch/hexagon/bits/setjmp.h
@@ -0,0 +1,4 @@
+
+typedef struct {
+	long regs[16];
+} __jmp_buf[1] __attribute__((aligned (8)));
diff --git a/arch/hexagon/bits/shm.h b/arch/hexagon/bits/shm.h
new file mode 100644
index 00000000..725fb469
--- /dev/null
+++ b/arch/hexagon/bits/shm.h
@@ -0,0 +1,31 @@
+#define SHMLBA 4096
+
+struct shmid_ds {
+	struct ipc_perm shm_perm;
+	size_t shm_segsz;
+	unsigned long __shm_atime_lo;
+	unsigned long __shm_atime_hi;
+	unsigned long __shm_dtime_lo;
+	unsigned long __shm_dtime_hi;
+	unsigned long __shm_ctime_lo;
+	unsigned long __shm_ctime_hi;
+	pid_t shm_cpid;
+	pid_t shm_lpid;
+	unsigned long shm_nattch;
+	unsigned long __pad1;
+	unsigned long __pad2;
+	unsigned long __pad3;
+	time_t shm_atime;
+	time_t shm_dtime;
+	time_t shm_ctime;
+};
+
+struct shminfo {
+	unsigned long shmmax, shmmin, shmmni, shmseg, shmall, __unused[4];
+};
+
+struct shm_info {
+	int __used_ids;
+	unsigned long shm_tot, shm_rss, shm_swp;
+	unsigned long __swap_attempts, __swap_successes;
+};
diff --git a/arch/hexagon/bits/signal.h b/arch/hexagon/bits/signal.h
new file mode 100644
index 00000000..7a3b36d0
--- /dev/null
+++ b/arch/hexagon/bits/signal.h
@@ -0,0 +1,105 @@
+#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
+
+#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
+#define MINSIGSTKSZ 2048
+#define SIGSTKSZ 8192
+#endif
+
+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
+typedef int greg_t, gregset_t[18];
+typedef struct sigcontext
+{
+	unsigned long  r0,  r1,  r2,  r3;
+	unsigned long  r4,  r5,  r6,  r7;
+	unsigned long  r8,  r9, r10, r11;
+	unsigned long r12, r13, r14, r15;
+	unsigned long r16, r17, r18, r19;
+	unsigned long r20, r21, r22, r23;
+	unsigned long r24, r25, r26, r27;
+	unsigned long r28, r29, r30, r31;
+	unsigned long sa0;
+	unsigned long lc0;
+	unsigned long sa1;
+	unsigned long lc1;
+	unsigned long m0;
+	unsigned long m1;
+	unsigned long usr;
+	unsigned long p3_0;
+	unsigned long gp;
+	unsigned long ugp;
+	unsigned long pc;
+	unsigned long cause;
+	unsigned long badva;
+	unsigned long pad1;
+	unsigned long pad2;
+	unsigned long pad3;
+} __attribute__((__aligned__(8))) mcontext_t;
+#else
+typedef struct {
+	unsigned long __regs[48];
+} __attribute__((__aligned__(8))) mcontext_t;
+#endif
+
+struct sigaltstack {
+	void *ss_sp;
+	int ss_flags;
+	size_t ss_size;
+};
+
+typedef struct __ucontext {
+	unsigned long uc_flags;
+	struct __ucontext *uc_link;
+	stack_t uc_stack;
+	mcontext_t uc_mcontext;
+	sigset_t uc_sigmask;
+//	unsigned long long uc_regspace[64];
+} ucontext_t;
+
+#define SA_NOCLDSTOP  1
+#define SA_NOCLDWAIT  2
+#define SA_SIGINFO    4
+#define SA_ONSTACK    0x08000000
+#define SA_RESTART    0x10000000
+#define SA_NODEFER    0x40000000
+#define SA_RESETHAND  0x80000000
+#define SA_RESTORER   0x04000000
+
+#endif
+
+#define SIGHUP    1
+#define SIGINT    2
+#define SIGQUIT   3
+#define SIGILL    4
+#define SIGTRAP   5
+#define SIGABRT   6
+#define SIGIOT    SIGABRT
+#define SIGBUS    7
+#define SIGFPE    8
+#define SIGKILL   9
+#define SIGUSR1   10
+#define SIGSEGV   11
+#define SIGUSR2   12
+#define SIGPIPE   13
+#define SIGALRM   14
+#define SIGTERM   15
+#define SIGSTKFLT 16
+#define SIGCHLD   17
+#define SIGCONT   18
+#define SIGSTOP   19
+#define SIGTSTP   20
+#define SIGTTIN   21
+#define SIGTTOU   22
+#define SIGURG    23
+#define SIGXCPU   24
+#define SIGXFSZ   25
+#define SIGVTALRM 26
+#define SIGPROF   27
+#define SIGWINCH  28
+#define SIGIO     29
+#define SIGPOLL   29
+#define SIGPWR    30
+#define SIGSYS    31
+#define SIGUNUSED SIGSYS
+
+#define _NSIG 65
diff --git a/arch/hexagon/bits/stat.h b/arch/hexagon/bits/stat.h
new file mode 100644
index 00000000..55e81fd9
--- /dev/null
+++ b/arch/hexagon/bits/stat.h
@@ -0,0 +1,20 @@
+/* copied from kernel definition, but with padding replaced
+ * by the corresponding correctly-sized userspace types. */
+struct stat {
+	dev_t st_dev;
+	ino_t st_ino;
+	mode_t st_mode;
+	nlink_t st_nlink;
+	uid_t st_uid;
+	gid_t st_gid;
+	dev_t st_rdev;
+	unsigned long __pad;
+	off_t st_size;
+	blksize_t st_blksize;
+	int __pad2;
+	blkcnt_t st_blocks;
+	struct timespec st_atim;
+	struct timespec st_mtim;
+	struct timespec st_ctim;
+	unsigned __unused[2];
+};
diff --git a/arch/hexagon/bits/stdint.h b/arch/hexagon/bits/stdint.h
new file mode 100644
index 00000000..d1b27121
--- /dev/null
+++ b/arch/hexagon/bits/stdint.h
@@ -0,0 +1,20 @@
+typedef int32_t int_fast16_t;
+typedef int32_t int_fast32_t;
+typedef uint32_t uint_fast16_t;
+typedef uint32_t uint_fast32_t;
+
+#define INT_FAST16_MIN  INT32_MIN
+#define INT_FAST32_MIN  INT32_MIN
+
+#define INT_FAST16_MAX  INT32_MAX
+#define INT_FAST32_MAX  INT32_MAX
+
+#define UINT_FAST16_MAX UINT32_MAX
+#define UINT_FAST32_MAX UINT32_MAX
+
+#define INTPTR_MIN      INT32_MIN
+#define INTPTR_MAX      INT32_MAX
+#define UINTPTR_MAX     UINT32_MAX
+#define PTRDIFF_MIN     INT32_MIN
+#define PTRDIFF_MAX     INT32_MAX
+#define SIZE_MAX        UINT32_MAX
diff --git a/arch/hexagon/bits/syscall.h.in b/arch/hexagon/bits/syscall.h.in
new file mode 100644
index 00000000..77ca3fa0
--- /dev/null
+++ b/arch/hexagon/bits/syscall.h.in
@@ -0,0 +1,317 @@
+#define __NR_io_setup 0
+#define __NR_io_destroy 1
+#define __NR_io_submit 2
+#define __NR_io_cancel 3
+#define __NR_io_getevents 4
+#define __NR_setxattr 5
+#define __NR_lsetxattr 6
+#define __NR_fsetxattr 7
+#define __NR_getxattr 8
+#define __NR_lgetxattr 9
+#define __NR_fgetxattr 10
+#define __NR_listxattr 11
+#define __NR_llistxattr 12
+#define __NR_flistxattr 13
+#define __NR_removexattr 14
+#define __NR_lremovexattr 15
+#define __NR_fremovexattr 16
+#define __NR_getcwd 17
+#define __NR_lookup_dcookie 18
+#define __NR_eventfd2 19
+#define __NR_epoll_create1 20
+#define __NR_epoll_ctl 21
+#define __NR_epoll_pwait 22
+#define __NR_dup 23
+#define __NR_dup3 24
+#define __NR3264_fcntl 25
+#define __NR_inotify_init1 26
+#define __NR_inotify_add_watch 27
+#define __NR_inotify_rm_watch 28
+#define __NR_ioctl 29
+#define __NR_ioprio_set 30
+#define __NR_ioprio_get 31
+#define __NR_flock 32
+#define __NR_mknodat 33
+#define __NR_mkdirat 34
+#define __NR_unlinkat 35
+#define __NR_symlinkat 36
+#define __NR_linkat 37
+#define __NR_renameat 38
+#define __NR_umount2 39
+#define __NR_mount 40
+#define __NR_pivot_root 41
+#define __NR_nfsservctl 42
+#define __NR3264_statfs 43
+#define __NR3264_fstatfs 44
+#define __NR3264_truncate 45
+#define __NR3264_ftruncate 46
+#define __NR_fallocate 47
+#define __NR_faccessat 48
+#define __NR_chdir 49
+#define __NR_fchdir 50
+#define __NR_chroot 51
+#define __NR_fchmod 52
+#define __NR_fchmodat 53
+#define __NR_fchownat 54
+#define __NR_fchown 55
+#define __NR_openat 56
+#define __NR_close 57
+#define __NR_vhangup 58
+#define __NR_pipe2 59
+#define __NR_quotactl 60
+#define __NR_getdents64 61
+#define __NR3264_lseek 62
+#define __NR_read 63
+#define __NR_write 64
+#define __NR_readv 65
+#define __NR_writev 66
+#define __NR_pread64 67
+#define __NR_pwrite64 68
+#define __NR_preadv 69
+#define __NR_pwritev 70
+#define __NR3264_sendfile 71
+#define __NR_pselect6 72
+#define __NR_ppoll 73
+#define __NR_signalfd4 74
+#define __NR_vmsplice 75
+#define __NR_splice 76
+#define __NR_tee 77
+#define __NR_readlinkat 78
+#define __NR3264_fstatat 79
+#define __NR3264_fstat 80
+#define __NR_sync 81
+#define __NR_fsync 82
+#define __NR_fdatasync 83
+#define __NR_sync_file_range2 84
+#define __NR_sync_file_range 84
+#define __NR_timerfd_create 85
+#define __NR_timerfd_settime 86
+#define __NR_timerfd_gettime 87
+#define __NR_utimensat 88
+#define __NR_acct 89
+#define __NR_capget 90
+#define __NR_capset 91
+#define __NR_personality 92
+#define __NR_exit 93
+#define __NR_exit_group 94
+#define __NR_waitid 95
+#define __NR_set_tid_address 96
+#define __NR_unshare 97
+#define __NR_futex 98
+#define __NR_set_robust_list 99
+#define __NR_get_robust_list 100
+#define __NR_nanosleep 101
+#define __NR_getitimer 102
+#define __NR_setitimer 103
+#define __NR_kexec_load 104
+#define __NR_init_module 105
+#define __NR_delete_module 106
+#define __NR_timer_create 107
+#define __NR_timer_gettime 108
+#define __NR_timer_getoverrun 109
+#define __NR_timer_settime 110
+#define __NR_timer_delete 111
+#define __NR_clock_settime 112
+#define __NR_clock_gettime 113
+#define __NR_clock_getres 114
+#define __NR_clock_nanosleep 115
+#define __NR_syslog 116
+#define __NR_ptrace 117
+#define __NR_sched_setparam 118
+#define __NR_sched_setscheduler 119
+#define __NR_sched_getscheduler 120
+#define __NR_sched_getparam 121
+#define __NR_sched_setaffinity 122
+#define __NR_sched_getaffinity 123
+#define __NR_sched_yield 124
+#define __NR_sched_get_priority_max 125
+#define __NR_sched_get_priority_min 126
+#define __NR_sched_rr_get_interval 127
+#define __NR_restart_syscall 128
+#define __NR_kill 129
+#define __NR_tkill 130
+#define __NR_tgkill 131
+#define __NR_sigaltstack 132
+#define __NR_rt_sigsuspend 133
+#define __NR_rt_sigaction 134
+#define __NR_rt_sigprocmask 135
+#define __NR_rt_sigpending 136
+#define __NR_rt_sigtimedwait 137
+#define __NR_rt_sigqueueinfo 138
+#define __NR_rt_sigreturn 139
+#define __NR_setpriority 140
+#define __NR_getpriority 141
+#define __NR_reboot 142
+#define __NR_setregid 143
+#define __NR_setgid 144
+#define __NR_setreuid 145
+#define __NR_setuid 146
+#define __NR_setresuid 147
+#define __NR_getresuid 148
+#define __NR_setresgid 149
+#define __NR_getresgid 150
+#define __NR_setfsuid 151
+#define __NR_setfsgid 152
+#define __NR_times 153
+#define __NR_setpgid 154
+#define __NR_getpgid 155
+#define __NR_getsid 156
+#define __NR_setsid 157
+#define __NR_getgroups 158
+#define __NR_setgroups 159
+#define __NR_uname 160
+#define __NR_sethostname 161
+#define __NR_setdomainname 162
+#define __NR_getrlimit 163
+#define __NR_setrlimit 164
+#define __NR_getrusage 165
+#define __NR_umask 166
+#define __NR_prctl 167
+#define __NR_getcpu 168
+#define __NR_gettimeofday 169
+#define __NR_settimeofday 170
+#define __NR_adjtimex 171
+#define __NR_getpid 172
+#define __NR_getppid 173
+#define __NR_getuid 174
+#define __NR_geteuid 175
+#define __NR_getgid 176
+#define __NR_getegid 177
+#define __NR_gettid 178
+#define __NR_sysinfo 179
+#define __NR_mq_open 180
+#define __NR_mq_unlink 181
+#define __NR_mq_timedsend 182
+#define __NR_mq_timedreceive 183
+#define __NR_mq_notify 184
+#define __NR_mq_getsetattr 185
+#define __NR_msgget 186
+#define __NR_msgctl 187
+#define __NR_msgrcv 188
+#define __NR_msgsnd 189
+#define __NR_semget 190
+#define __NR_semctl 191
+#define __NR_semtimedop 192
+#define __NR_semop 193
+#define __NR_shmget 194
+#define __NR_shmctl 195
+#define __NR_shmat 196
+#define __NR_shmdt 197
+#define __NR_socket 198
+#define __NR_socketpair 199
+#define __NR_bind 200
+#define __NR_listen 201
+#define __NR_accept 202
+#define __NR_connect 203
+#define __NR_getsockname 204
+#define __NR_getpeername 205
+#define __NR_sendto 206
+#define __NR_recvfrom 207
+#define __NR_setsockopt 208
+#define __NR_getsockopt 209
+#define __NR_shutdown 210
+#define __NR_sendmsg 211
+#define __NR_recvmsg 212
+#define __NR_readahead 213
+#define __NR_brk 214
+#define __NR_munmap 215
+#define __NR_mremap 216
+#define __NR_add_key 217
+#define __NR_request_key 218
+#define __NR_keyctl 219
+#define __NR_clone 220
+#define __NR_execve 221
+#define __NR3264_mmap 222
+#define __NR3264_fadvise64 223
+#define __NR_swapon 224
+#define __NR_swapoff 225
+#define __NR_mprotect 226
+#define __NR_msync 227
+#define __NR_mlock 228
+#define __NR_munlock 229
+#define __NR_mlockall 230
+#define __NR_munlockall 231
+#define __NR_mincore 232
+#define __NR_madvise 233
+#define __NR_remap_file_pages 234
+#define __NR_mbind 235
+#define __NR_get_mempolicy 236
+#define __NR_set_mempolicy 237
+#define __NR_migrate_pages 238
+#define __NR_move_pages 239
+#define __NR_rt_tgsigqueueinfo 240
+#define __NR_perf_event_open 241
+#define __NR_accept4 242
+#define __NR_recvmmsg 243
+#define __NR_arch_specific_syscall 244
+#define __NR_wait4 260
+#define __NR_prlimit64 261
+#define __NR_fanotify_init 262
+#define __NR_fanotify_mark 263
+#define __NR_name_to_handle_at 264
+#define __NR_open_by_handle_at 265
+#define __NR_clock_adjtime 266
+#define __NR_syncfs 267
+#define __NR_setns 268
+#define __NR_sendmmsg 269
+#define __NR_process_vm_readv 270
+#define __NR_process_vm_writev 271
+#define __NR_kcmp 272
+#define __NR_finit_module 273
+#define __NR_sched_setattr 274
+#define __NR_sched_getattr 275
+#define __NR_renameat2 276
+#define __NR_seccomp 277
+#define __NR_getrandom 278
+#define __NR_memfd_create 279
+#define __NR_bpf 280
+#define __NR_execveat 281
+#define __NR_userfaultfd 282
+#define __NR_membarrier 283
+#define __NR_mlock2 284
+#define __NR_copy_file_range 285
+#define __NR_preadv2 286
+#define __NR_pwritev2 287
+#define __NR_pkey_mprotect 288
+#define __NR_pkey_alloc 289
+#define __NR_pkey_free 290
+#define __NR_statx 291
+#define __NR_clock_gettime64 403
+#define __NR_clock_settime64 404
+#define __NR_clock_adjtime64 405
+#define __NR_clock_getres_time64 406
+#define __NR_clock_nanosleep_time64 407
+#define __NR_timer_gettime64 408
+#define __NR_timer_settime64 409
+#define __NR_timerfd_gettime64 410
+#define __NR_timerfd_settime64 411
+#define __NR_utimensat_time64 412
+#define __NR_pselect6_time64 413
+#define __NR_ppoll_time64 414
+#define __NR_io_pgetevents_time64 416
+#define __NR_recvmmsg_time64 417
+#define __NR_mq_timedsend_time64 418
+#define __NR_mq_timedreceive_time64 419
+#define __NR_semtimedop_time64 420
+#define __NR_rt_sigtimedwait_time64 421
+#define __NR_futex_time64 422
+#define __NR_sched_rr_get_interval_time64 423
+#define __NR_syscalls (__NR_sched_rr_get_interval_time64+1)
+#define __NR_fcntl  __NR3264_fcntl
+#define __NR_fstatfs  __NR3264_fstatfs
+#define __NR_truncate  __NR3264_truncate
+#define __NR_ftruncate  __NR3264_ftruncate
+#define __NR_lseek  __NR3264_lseek
+#define __NR_sendfile  __NR3264_sendfile
+#define __NR_newfstatat  __NR3264_fstatat
+#define __NR_fcntl64  __NR3264_fcntl
+#define __NR_statfs64  __NR3264_statfs
+#define __NR_fstatfs64  __NR3264_fstatfs
+#define __NR_truncate64  __NR3264_truncate
+#define __NR_ftruncate64  __NR3264_ftruncate
+#define __NR__llseek  __NR3264_lseek
+#define __NR_sendfile64  __NR3264_sendfile
+#define __NR_fstatat64  __NR3264_fstatat
+#define __NR_fstat64  __NR3264_fstat
+#define __NR_mmap2  __NR3264_mmap
+#define __NR_fadvise64_64  __NR3264_fadvise64
diff --git a/arch/hexagon/crt_arch.h b/arch/hexagon/crt_arch.h
new file mode 100644
index 00000000..331a797e
--- /dev/null
+++ b/arch/hexagon/crt_arch.h
@@ -0,0 +1,35 @@
+__asm__(
+".weak _DYNAMIC \n"
+".hidden _DYNAMIC \n"
+".text \n"
+".global " START " \n"
+".type " START ", %function \n"
+START ": \n"
+"                                       // Find _DYNAMIC\n"
+"       jump 1f\n"
+".word  _DYNAMIC - .\n"
+"1:     r2 = pc\n"
+"       r2 = add(r2, #-4)\n"
+"       r1 = memw(r2)\n"
+"       r1 = add(r2, r1)\n"
+"	r30 = #0			// Signals the end of backtrace\n"
+"	r0 = r29			// Pointer to argc/argv\n"
+"	r29 = and(r29, #-16)		// Align\n"
+"	memw(r29+#-8) = r29\n"
+"	r29 = add(r29, #-8)\n"
+"	call " START "_c \n"
+".size " START ", .-" START "\n"
+);
+
+__asm__(
+".section \".note.ABI-tag\", \"a\" \n"
+".align 4 \n"
+".long 1f - 0f		/* name length */ \n"
+".long 3f - 2f		/* data length */ \n"
+".long  1		/* note type */ \n"
+"0:	.asciz \"GNU\"	/* vendor name seems like this should be MUSL but lldb doesn't agree.*/ \n"
+"1:	.align 4		 \n"
+"2:	.long 0	/* linux */ \n"
+"	.long 3,0,0 \n"
+"3:	.align 4 \n"
+);
diff --git a/arch/hexagon/kstat.h b/arch/hexagon/kstat.h
new file mode 100644
index 00000000..92625f36
--- /dev/null
+++ b/arch/hexagon/kstat.h
@@ -0,0 +1,21 @@
+struct kstat {
+	dev_t st_dev;
+	ino_t st_ino;
+	mode_t st_mode;
+	nlink_t st_nlink;
+	uid_t st_uid;
+	gid_t st_gid;
+	dev_t st_rdev;
+	unsigned long __pad;
+	off_t st_size;
+	blksize_t st_blksize;
+	int __pad2;
+	blkcnt_t st_blocks;
+	long st_atime_sec;
+	long st_atime_nsec;
+	long st_mtime_sec;
+	long st_mtime_nsec;
+	long st_ctime_sec;
+	long st_ctime_nsec;
+	unsigned __unused[2];
+};
diff --git a/arch/hexagon/pthread_arch.h b/arch/hexagon/pthread_arch.h
new file mode 100644
index 00000000..b1344dc1
--- /dev/null
+++ b/arch/hexagon/pthread_arch.h
@@ -0,0 +1,14 @@
+
+// Hexagon supports variant 2 TLS.
+static inline struct pthread *__pthread_self()
+{
+  struct pthread *tp;
+  __asm__ ( "%0 = ugp" : "=r"(tp));
+  return tp;
+}
+
+#define TP_ADJ(p) (p)
+
+#define CANCEL_REG_IP 43
+
+#define MC_PC pc
diff --git a/arch/hexagon/reloc.h b/arch/hexagon/reloc.h
new file mode 100644
index 00000000..14085872
--- /dev/null
+++ b/arch/hexagon/reloc.h
@@ -0,0 +1,25 @@
+#include <endian.h>
+
+#if __BYTE_ORDER == __LITTLE_ENDIAN
+#define ENDIAN_SUFFIX "el"
+#else
+#define ENDIAN_SUFFIX ""
+#endif
+
+#define FP_SUFFIX ""
+
+#define LDSO_ARCH "hexagon" ENDIAN_SUFFIX FP_SUFFIX
+
+#define TPOFF_K 0
+
+#define REL_SYMBOLIC    R_HEX_32
+#define REL_GOT         R_HEX_GLOB_DAT
+#define REL_PLT         R_HEX_JMP_SLOT
+#define REL_RELATIVE    R_HEX_RELATIVE
+#define REL_COPY        R_HEX_COPY
+#define REL_DTPMOD      R_HEX_DTPMOD_32
+#define REL_TPOFF       R_HEX_TPREL_32
+#define REL_DTPOFF      R_HEX_DTPREL_32
+
+#define CRTJMP(pc,sp) __asm__ __volatile__( \
+	"r29 = %1 ; jumpr %0" : : "r"(pc), "r"(sp) : "memory" )
diff --git a/arch/hexagon/syscall_arch.h b/arch/hexagon/syscall_arch.h
new file mode 100644
index 00000000..e6defe41
--- /dev/null
+++ b/arch/hexagon/syscall_arch.h
@@ -0,0 +1,77 @@
+
+#define __SYSCALL_LL_E(x) \
+((union { long long ll; long l[2]; }){ .ll = x }).l[0], \
+((union { long long ll; long l[2]; }){ .ll = x }).l[1]
+#define __SYSCALL_LL_O(x) 0, __SYSCALL_LL_E((x))
+
+#define __asm_syscall(...) do { \
+    __asm__ __volatile__ ( "trap0(#1)" \
+    : "=r"(r0) : __VA_ARGS__ : "memory"); \
+    return r0; \
+    } while (0)
+
+static inline long __syscall0(long n)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0");
+  __asm_syscall("r"(r6));
+}
+
+static inline long __syscall1(long n, long a)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  __asm_syscall("r"(r6), "0"(r0));
+}
+
+static inline long __syscall2(long n, long a, long b)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  register long r1 __asm__("r1") = b;
+  __asm_syscall("r"(r6), "0"(r0), "r"(r1));
+}
+
+static inline long __syscall3(long n, long a, long b, long c)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  register long r1 __asm__("r1") = b;
+  register long r2 __asm__("r2") = c;
+  __asm_syscall("r"(r6), "0"(r0), "r"(r1), "r"(r2));
+}
+
+static inline long __syscall4(long n, long a, long b, long c, long d)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  register long r1 __asm__("r1") = b;
+  register long r2 __asm__("r2") = c;
+  register long r3 __asm__("r3") = d;
+  __asm_syscall("r"(r6), "0"(r0), "r"(r1), "r"(r2), "r"(r3));
+}
+
+static inline long __syscall5(long n, long a, long b, long c, long d, long e)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  register long r1 __asm__("r1") = b;
+  register long r2 __asm__("r2") = c;
+  register long r3 __asm__("r3") = d;
+  register long r4 __asm__("r4") = e;
+  __asm_syscall("r"(r6), "0"(r0), "r"(r1), "r"(r2), "r"(r3), "r"(r4));
+}
+
+static inline long __syscall6(long n, long a, long b, long c, long d, long e, long f)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  register long r1 __asm__("r1") = b;
+  register long r2 __asm__("r2") = c;
+  register long r3 __asm__("r3") = d;
+  register long r4 __asm__("r4") = e;
+  register long r5 __asm__("r5") = f;
+  __asm_syscall("r"(r6), "0"(r0), "r"(r1), "r"(r2), "r"(r3), "r"(r4), "r"(r5));
+}
+
+#define SYSCALL_FADVISE_6_ARG
diff --git a/configure b/configure
index 18fda9af..ac18ca9f 100755
--- a/configure
+++ b/configure
@@ -323,6 +323,7 @@ case "$target" in
 # Catch these early to simplify matching for 32-bit archs
 arm*) ARCH=arm ;;
 aarch64*) ARCH=aarch64 ;;
+hexagon*) ARCH=hexagon ;;
 i?86-nt32*) ARCH=nt32 ;;
 i?86*) ARCH=i386 ;;
 x86_64-x32*|x32*|x86_64*x32) ARCH=x32 ;;
diff --git a/include/elf.h b/include/elf.h
index 549f92c1..54251c24 100644
--- a/include/elf.h
+++ b/include/elf.h
@@ -3284,6 +3284,107 @@ enum
 #define R_RISCV_SET32           56
 #define R_RISCV_32_PCREL        57
 
+#define R_HEX_NONE               0
+#define R_HEX_B22_PCREL          1
+#define R_HEX_B15_PCREL          2
+#define R_HEX_B7_PCREL           3
+#define R_HEX_LO16               4
+#define R_HEX_HI16               5
+#define R_HEX_32                 6
+#define R_HEX_16                 7
+#define R_HEX_8                  8
+#define R_HEX_GPREL16_0          9
+#define R_HEX_GPREL16_1         10
+#define R_HEX_GPREL16_2         11
+#define R_HEX_GPREL16_3         12
+#define R_HEX_HL16              13
+#define R_HEX_B13_PCREL         14
+#define R_HEX_B9_PCREL          15
+#define R_HEX_B32_PCREL_X       16
+#define R_HEX_32_6_X            17
+#define R_HEX_B22_PCREL_X       18
+#define R_HEX_B15_PCREL_X       19
+#define R_HEX_B13_PCREL_X       20
+#define R_HEX_B9_PCREL_X        21
+#define R_HEX_B7_PCREL_X        22
+#define R_HEX_16_X              23
+#define R_HEX_12_X              24
+#define R_HEX_11_X              25
+#define R_HEX_10_X              26
+#define R_HEX_9_X               27
+#define R_HEX_8_X               28
+#define R_HEX_7_X               29
+#define R_HEX_6_X               30
+#define R_HEX_32_PCREL          31
+#define R_HEX_COPY              32
+#define R_HEX_GLOB_DAT          33
+#define R_HEX_JMP_SLOT          34
+#define R_HEX_RELATIVE          35
+#define R_HEX_PLT_B22_PCREL     36
+#define R_HEX_GOTOFF_LO16       37
+#define R_HEX_GOTOFF_HI16       38
+#define R_HEX_GOTOFF_32         39
+#define R_HEX_GOT_LO16          40
+#define R_HEX_GOT_HI16          41
+#define R_HEX_GOT_32            42
+#define R_HEX_GOT_16            43
+#define R_HEX_DTPMOD_32         44
+#define R_HEX_DTPREL_LO16       45
+#define R_HEX_DTPREL_HI16       46
+#define R_HEX_DTPREL_32         47
+#define R_HEX_DTPREL_16         48
+#define R_HEX_GD_PLT_B22_PCREL  49
+#define R_HEX_GD_GOT_LO16       50
+#define R_HEX_GD_GOT_HI16       51
+#define R_HEX_GD_GOT_32         52
+#define R_HEX_GD_GOT_16         53
+#define R_HEX_IE_LO16           54
+#define R_HEX_IE_HI16           55
+#define R_HEX_IE_32             56
+#define R_HEX_IE_GOT_LO16       57
+#define R_HEX_IE_GOT_HI16       58
+#define R_HEX_IE_GOT_32         59
+#define R_HEX_IE_GOT_16         60
+#define R_HEX_TPREL_LO16        61
+#define R_HEX_TPREL_HI16        62
+#define R_HEX_TPREL_32          63
+#define R_HEX_TPREL_16          64
+#define R_HEX_6_PCREL_X         65
+#define R_HEX_GOTREL_32_6_X     66
+#define R_HEX_GOTREL_16_X       67
+#define R_HEX_GOTREL_11_X       68
+#define R_HEX_GOT_32_6_X        69
+#define R_HEX_GOT_16_X          70
+#define R_HEX_GOT_11_X          71
+#define R_HEX_DTPREL_32_6_X     72
+#define R_HEX_DTPREL_16_X       73
+#define R_HEX_DTPREL_11_X       74
+#define R_HEX_GD_GOT_32_6_X     75
+#define R_HEX_GD_GOT_16_X       76
+#define R_HEX_GD_GOT_11_X       77
+#define R_HEX_IE_32_6_X         78
+#define R_HEX_IE_16_X           79
+#define R_HEX_IE_GOT_32_6_X     80
+#define R_HEX_IE_GOT_16_X       81
+#define R_HEX_IE_GOT_11_X       82
+#define R_HEX_TPREL_32_6_X      83
+#define R_HEX_TPREL_16_X        84
+#define R_HEX_TPREL_11_X        85
+#define R_HEX_LD_PLT_B22_PCREL  86
+#define R_HEX_LD_GOT_LO16       87
+#define R_HEX_LD_GOT_HI16       88
+#define R_HEX_LD_GOT_32         89
+#define R_HEX_LD_GOT_16         90
+#define R_HEX_LD_GOT_32_6_X     91
+#define R_HEX_LD_GOT_16_X       92
+#define R_HEX_LD_GOT_11_X       93
+#define R_HEX_23_REG            94
+#define R_HEX_GD_PLT_B22_PCREL_X 95
+#define R_HEX_GD_PLT_B32_PCREL_X 96
+#define R_HEX_LD_PLT_B22_PCREL_X 97
+#define R_HEX_LD_PLT_B32_PCREL_X 98
+
+
 #ifdef __cplusplus
 }
 #endif
diff --git a/src/fenv/hexagon/fenv.S b/src/fenv/hexagon/fenv.S
new file mode 100644
index 00000000..07b89764
--- /dev/null
+++ b/src/fenv/hexagon/fenv.S
@@ -0,0 +1,143 @@
+/*
+The Hexagon user status register includes five status fields which work as
+sticky flags for the five IEEE-defined exception conditions: inexact, overflow, underflow,
+divide by zero, and invalid. A sticky flag is set when the corresponding exception occurs,
+and remains set until explicitly cleared.
+
+  usr:23:22 - Rounding Mode
+  00: Round toward nearest
+  01: Round toward zero
+  10: Downward Round toward negative infinity
+  11: Upward Round toward positive infinity
+
+  usr:5 - Floating-point IEEE Inexact Sticky Flag.
+  usr:4 - Floating-point IEEE Underflow Sticky Flag.
+  usr:3 - Floating-point IEEE Overflow Sticky Flag.
+  usr:2 - Floating-point IEEE Divide-By-Zero Sticky Flag.
+  usr:1 - Floating-point IEEE Invalid Sticky Flag.
+  usr:0 - Sticky Saturation Overflow, when 1 saturation occurred.
+*/
+
+#define FE_ALL_EXCEPT 0x3f
+
+#define USR_FE_MASK 0x3fc0003f
+#define RND_MASK    (0x3 << 22)
+#define RND_NEAR    (0x0 << 22)
+#define RND_ZERO    (0x1 << 22)
+#define RND_DOWN    (0x2 << 22)
+#define RND_UP      (0x3 << 22)
+
+/*
+int feclearexcept(int mask)
+*/
+.global feclearexcept
+.type feclearexcept,@function
+feclearexcept:
+  {
+    r0 = and(r0, #FE_ALL_EXCEPT) // Only touch the IEEE flag bits.
+    r1 = usr
+  }
+  r1 = and(r1, ~r0)
+  {
+    usr = r1
+    r0 = #0
+    jumpr r31
+  }
+
+/*
+int feraiseexcept(int mask)
+*/
+.global feraiseexcept
+.type feraiseexcept,@function
+feraiseexcept:
+  {
+    r0 = and(r0, #FE_ALL_EXCEPT) // Only touch the IEEE flag bits.
+    r1 = usr
+  }
+  r1 = or(r1, r0)
+  {
+    usr = r1
+    r0 = #0
+    jumpr r31
+  }
+
+
+/*
+int fetestexcept(int mask)
+*/
+.global fetestexcept
+.type fetestexcept,@function
+fetestexcept:
+  {
+    r0 = and(r0, #FE_ALL_EXCEPT) // Only touch the IEEE flag bits.
+    r1 = usr
+  }
+  {
+    r0 = and(r1, r0)
+    jumpr r31
+  }
+
+/*
+int fegetround(void)
+*/
+.global fegetround
+.type fegetround,@function
+fegetround:
+  r0 = usr
+  r0 = and(r0, ##RND_MASK)
+  r0 = lsr(r0, #22);
+  jumpr r31
+
+/*
+int __fesetround(int r)
+*/
+.global __fesetround
+.type __fesetround,@function
+__fesetround:
+  {
+    r0 = and(r0, #0x3) // Can only be 0,1,2, or 3
+    r1 = usr
+    r2 = ##RND_MASK
+  }
+  {
+    r1 = and (r1, ~r2)  // Clear the current rounding bits.
+    r0 = asl (r0, #22)
+  }
+  r1 = or(r1, r0)
+  usr = r1
+  {
+    r0 = #0; jumpr r31
+  }
+
+/*
+int fegetenv(fenv_t *envp)
+*/
+.global fegetenv
+.type fegetenv,@function
+fegetenv:
+  r1 = usr
+  memw(r0) = r1
+  {
+    r0 = #0
+    jumpr r31
+  }
+
+/*
+int fesetenv(const fenv_t *envp)
+*/
+.global fesetenv
+.type fesetenv,@function
+fesetenv:
+  { p0 = cmp.eq(r0, #-1); if (p0.new) r1 = #0 }  /* The default mode */
+  if (!p0) r1 = memw(r0)                         /* stored in fenv_t */
+
+  r2 = ##USR_FE_MASK // USR:FE bit mask
+  r1 = and(r1, r2)   // MASK the input bits with the FE bits
+  r3 = usr
+  r3 = and(r3, ~r2)  // Clear any currently set FE bits
+  r3 = or(r3, r1)   // Set the newbits
+  usr = r3
+  {
+    r0 = #0
+    jumpr r31
+  }
diff --git a/src/math/hexagon/fmaf.c b/src/math/hexagon/fmaf.c
new file mode 100644
index 00000000..7ce1996c
--- /dev/null
+++ b/src/math/hexagon/fmaf.c
@@ -0,0 +1,8 @@
+#include <math.h>
+
+float fmaf(float x, float y, float z)
+{
+	__asm__ ("%[z]+=sfmpy(%[x], %[y])"
+                 : [z]"+r"(z) : [x]"r"(x), [y]"r"(y));
+	return z;
+}
diff --git a/src/math/hexagon/fmaxf.c b/src/math/hexagon/fmaxf.c
new file mode 100644
index 00000000..0dc52b25
--- /dev/null
+++ b/src/math/hexagon/fmaxf.c
@@ -0,0 +1,8 @@
+#include <math.h>
+
+float fmaxf(float x, float y)
+{
+	__asm__ ("%[x]=sfmax(%[x], %[y])"
+                : [x]"+r"(x) : [y]"r"(y));
+	return x;
+}
diff --git a/src/math/hexagon/fminf.c b/src/math/hexagon/fminf.c
new file mode 100644
index 00000000..aeb20ae0
--- /dev/null
+++ b/src/math/hexagon/fminf.c
@@ -0,0 +1,8 @@
+#include <math.h>
+
+float fminf(float x, float y)
+{
+	__asm__ ("%[x]=sfmin(%[x], %[y])"
+                : [x]"+r"(x) : [y]"r"(y));
+	return x;
+}
diff --git a/src/setjmp/hexagon/longjmp.s b/src/setjmp/hexagon/longjmp.s
new file mode 100644
index 00000000..691b67dd
--- /dev/null
+++ b/src/setjmp/hexagon/longjmp.s
@@ -0,0 +1,25 @@
+.text
+.global _longjmp
+.global longjmp
+.type _longjmp,%function
+.type longjmp,%function
+_longjmp:
+longjmp:
+    { r17:16=memd(r0+#0)
+      r19:18=memd(r0+#8) }
+    { r21:20=memd(r0+#16)
+      r23:22=memd(r0+#24) }
+    { r25:24=memd(r0+#32)
+      r27:26=memd(r0+#40) }
+    { r29:28=memd(r0+#48)
+      r31:30=memd(r0+#56) }
+
+    r0 = r1
+    r1 = #0
+    p0 = cmp.eq(r0,r1)
+    if (!p0) jumpr r31
+    r0 = #1
+
+    jumpr r31
+.size _longjmp, .-_longjmp
+.size longjmp, .-longjmp
diff --git a/src/setjmp/hexagon/setjmp.s b/src/setjmp/hexagon/setjmp.s
new file mode 100644
index 00000000..d29f036e
--- /dev/null
+++ b/src/setjmp/hexagon/setjmp.s
@@ -0,0 +1,24 @@
+.text
+.global __setjmp
+.global _setjmp
+.global setjmp
+.type __setjmp,@function
+.type _setjmp,@function
+.type setjmp,@function
+__setjmp:
+_setjmp:
+setjmp:
+    { memd(r0+#0)=r17:16
+      memd(r0+#8)=r19:18 }
+    { memd(r0+#16)=r21:20
+      memd(r0+#24)=r23:22 }
+    { memd(r0+#32)=r25:24
+      memd(r0+#40)=r27:26 }
+    { memd(r0+#48)=r29:28
+      memd(r0+#56)=r31:30 }
+
+    r0 = #0
+    jumpr r31
+.size __setjmp, .-__setjmp
+.size _setjmp, .-_setjmp
+.size setjmp, .-setjmp
diff --git a/src/signal/hexagon/restore.s b/src/signal/hexagon/restore.s
new file mode 100644
index 00000000..f43f5e02
--- /dev/null
+++ b/src/signal/hexagon/restore.s
@@ -0,0 +1,11 @@
+// TODO - Test this if sa_restorer is ever supported in our kernel
+.global __restore
+.type __restore,%function
+.global __restore_rt
+.type __restore_rt,%function
+__restore:
+__restore_rt:
+	r6 = #139				// SYS_rt_sigreturn
+	trap0(#0)
+.size __restore, .-__restore
+.size __restore_rt, .-__restore_rt
diff --git a/src/signal/hexagon/sigsetjmp.s b/src/signal/hexagon/sigsetjmp.s
new file mode 100644
index 00000000..f1aaf165
--- /dev/null
+++ b/src/signal/hexagon/sigsetjmp.s
@@ -0,0 +1,28 @@
+.global sigsetjmp
+.global __sigsetjmp
+.type sigsetjmp,@function
+.type __sigsetjmp,@function
+.balign 4
+sigsetjmp:
+__sigsetjmp:
+	// if savemask is 0 sigsetjmp behaves like setjmp
+	{
+		p0 = cmp.eq(r1, #0)
+		if (p0.new) jump:t ##setjmp
+	}
+	{
+		memw(r0+#64+4+8) = r16  // save r16 in __ss[2]
+		memw(r0+#64)   = r31  // save linkregister in __fl
+		r16 = r0
+	}
+		call ##setjmp
+	{
+		r1 = r0;
+		r0  = r16             // restore r0
+		r31 = memw(r16+#64)   // restore linkregister
+		r16 = memw(r16+#64+4+8) // restore r16 from __ss[2]
+	}
+.hidden __sigsetjmp_tail
+	jump ##__sigsetjmp_tail
+
+.size	sigsetjmp, .-sigsetjmp
diff --git a/src/thread/hexagon/__set_thread_area.s b/src/thread/hexagon/__set_thread_area.s
new file mode 100644
index 00000000..87a991b7
--- /dev/null
+++ b/src/thread/hexagon/__set_thread_area.s
@@ -0,0 +1,7 @@
+.global __set_thread_area
+.type   __set_thread_area,@function
+__set_thread_area:
+	{ ugp = r0
+	  r0 = #0
+	  jumpr r31 }
+.size __set_thread_area, .-__set_thread_area
diff --git a/src/thread/hexagon/__unmapself.s b/src/thread/hexagon/__unmapself.s
new file mode 100644
index 00000000..c47dce21
--- /dev/null
+++ b/src/thread/hexagon/__unmapself.s
@@ -0,0 +1,11 @@
+#include <syscall.h>
+
+.global __unmapself
+.type   __unmapself,%function
+__unmapself:
+	r6 = #215			// SYS_munmap
+	trap0(#1)
+	r6 = #93			// SYS_exit
+	trap0(#1)
+	jumpr r31
+.size __unmapself, .-__unmapself
diff --git a/src/thread/hexagon/clone.s b/src/thread/hexagon/clone.s
new file mode 100644
index 00000000..42aab67a
--- /dev/null
+++ b/src/thread/hexagon/clone.s
@@ -0,0 +1,37 @@
+// __clone(func, stack, flags, arg, ptid, tls, ctid)
+//         r0,   r1,    r2,    r3,  r4,   r5,  stack
+
+// tid = syscall(SYS_clone, flags, stack, ptid, ctid, tls)
+//               r6,        r0,    r1,    r2,   r3,   r4
+// if (tid != 0) return
+// func(arg)
+// syscall(SYS_exit)
+
+.text
+.global __clone
+.type   __clone,%function
+__clone:
+	allocframe(#8)
+	// Save pointers for later
+	{ r11 = r0
+	  r10 = r3 }
+
+	// Set up syscall args - The stack must be 8 byte aligned.
+	{ r0 = r2
+	  r1 = and(r1, ##0xfffffff8)
+	  r2 = r4 }
+	{
+	  r3 = memw(r30+#8)
+	  r4 = r5 }
+	r6 = #220			// SYS_clone
+	trap0(#1)
+
+	p0 = cmp.eq(r0, #0)
+	if (!p0) dealloc_return
+
+	{ r0 = r10
+	  callr r11 }
+
+	r6 = #93			// SYS_exit
+	trap0(#1)
+.size __clone, .-__clone
diff --git a/src/thread/hexagon/syscall_cp.s b/src/thread/hexagon/syscall_cp.s
new file mode 100644
index 00000000..50383cad
--- /dev/null
+++ b/src/thread/hexagon/syscall_cp.s
@@ -0,0 +1,35 @@
+// __syscall_cp_asm(&self->cancel, nr,  u, v, w, x, y,    z)
+//                  r0             r1  r2 r3 r4 r5  stack stack
+
+// syscall(nr,  u, v, w, x, y, z)
+//         r6  r0 r1 r2 r3 r4 r5
+
+.text
+.global __cp_begin
+.hidden __cp_begin
+.global __cp_end
+.hidden __cp_end
+.global __cp_cancel
+.hidden __cp_cancel
+.hidden __cancel
+.global __syscall_cp_asm
+.hidden __syscall_cp_asm
+.type __syscall_cp_asm,%function
+__syscall_cp_asm:
+__cp_begin:
+	r0 = memw(r0+#0)
+	{
+	  p0 = cmp.eq(r0, #0); if (!p0.new) jump:nt __cancel
+	}
+	{ r6 = r1
+	  r1:0 = combine(r3, r2)
+	  r3:2 = combine(r5, r4) }
+	{ r4 = memw(r29+#0)
+	  r5 = memw(r29+#4) }
+	trap0(#1)
+__cp_end:
+	jumpr r31
+.size __syscall_cp_asm, .-__syscall_cp_asm
+__cp_cancel:
+        jump __cancel
+.size __cp_cancel, .-__cp_cancel

[-- Attachment #3: REPORT --]
[-- Type: application/octet-stream, Size: 442197 bytes --]

FAIL src/api/main.exe [status 1]
clang-12: error: no such file or directory: 'src/api/unistd.o'
src/api/unistd.c:87:3: error: use of undeclared identifier '_CS_POSIX_V7_THREADS_CFLAGS'
C(_CS_POSIX_V7_THREADS_CFLAGS)
  ^
src/api/unistd.c:88:3: error: use of undeclared identifier '_CS_POSIX_V7_THREADS_LDFLAGS'
C(_CS_POSIX_V7_THREADS_LDFLAGS)
  ^
src/api/unistd.c:117:3: error: use of undeclared identifier '_PC_TIMESTAMP_RESOLUTION'
C(_PC_TIMESTAMP_RESOLUTION)
  ^
src/api/unistd.c:238:3: error: use of undeclared identifier '_SC_XOPEN_UUCP'
C(_SC_XOPEN_UUCP)
  ^
src/api/unistd.c:87:3: error: use of undeclared identifier '_CS_POSIX_V7_THREADS_CFLAGS'
C(_CS_POSIX_V7_THREADS_CFLAGS)
  ^
src/api/unistd.c:88:3: error: use of undeclared identifier '_CS_POSIX_V7_THREADS_LDFLAGS'
C(_CS_POSIX_V7_THREADS_LDFLAGS)
  ^
src/api/unistd.c:117:3: error: use of undeclared identifier '_PC_TIMESTAMP_RESOLUTION'
C(_PC_TIMESTAMP_RESOLUTION)
  ^
src/api/unistd.c:238:3: error: use of undeclared identifier '_SC_XOPEN_UUCP'
C(_SC_XOPEN_UUCP)
  ^
8 errors generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
src/functional/dlopen.c:39: dlsym main failed: Symbol not found: main
FAIL src/functional/dlopen.exe [status 1]
clang-12: warning: argument unused during compilation: '-rdynamic' [-Wunused-command-line-argument]
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:87: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:87: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:108: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:108: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
FAIL src/functional/pthread_mutex_pi-static.exe [status 1]
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:87: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:87: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:108: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:108: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
FAIL src/functional/pthread_mutex_pi.exe [status 1]
src/functional/pthread_robust.c:39: pthread_mutexattr_setrobust(&mtx_a, PTHREAD_MUTEX_ROBUST) failed: (pshared==0, pi==0) Function not implemented (setting robust attribute)
FAIL src/functional/pthread_robust-static.exe [timed out]
src/functional/pthread_robust.c:39: pthread_mutexattr_setrobust(&mtx_a, PTHREAD_MUTEX_ROBUST) failed: (pshared==0, pi==0) Function not implemented (setting robust attribute)
FAIL src/functional/pthread_robust.exe [timed out]
src/functional/strptime.c:23: "%F": failed to parse "1856-07-10"
src/functional/strptime.c:23: "%s": failed to parse "683078400"
src/functional/strptime.c:47: "%z": failed to parse "+0200"
src/functional/strptime.c:47: "%z": failed to parse "-0530"
src/functional/strptime.c:47: "%z": failed to parse "-06"
FAIL src/functional/strptime-static.exe [status 1]
src/functional/strptime.c:23: "%F": failed to parse "1856-07-10"
src/functional/strptime.c:23: "%s": failed to parse "683078400"
src/functional/strptime.c:47: "%z": failed to parse "+0200"
src/functional/strptime.c:47: "%z": failed to parse "-0530"
src/functional/strptime.c:47: "%z": failed to parse "-06"
FAIL src/functional/strptime.exe [status 1]
src/functional/utime.c:63: futimens(fd, ((struct timespec[2]){{.tv_sec=1LL<<32},{.tv_sec=1LL<<32}})) == 0 failed: Not supported
FAIL src/functional/utime-static.exe [status 1]
src/functional/utime.c:63: futimens(fd, ((struct timespec[2]){{.tv_sec=1LL<<32},{.tv_sec=1LL<<32}})) == 0 failed: Not supported
FAIL src/functional/utime.exe [status 1]
X src/math/special/acosh.h:9: RN acosh(0x1.001f1c62cf304p+0) want 0x1.f8d125ff71ccp-6 got 0x1.f8d125ff71cc2p-6 ulperr 1.853 = 0x1p+1 + -0x1.2d785ap-3
X src/math/special/acosh.h:10: RN acosh(0x1.00788c223616fp+0) want 0x1.f0cb8ee812621p-5 got 0x1.f0cb8ee812623p-5 ulperr 1.724 = 0x1p+1 + -0x1.1b0c1ap-2
X src/math/special/acosh.h:11: RN acosh(0x1.007b7a37c7606p+0) want 0x1.f6cb68859ae3p-5 got 0x1.f6cb68859ae2ep-5 ulperr -1.855 = -0x1p+1 + 0x1.280488p-3
X src/math/special/acosh.h:12: RN acosh(0x1.01d173033243cp+0) want 0x1.e7e1b18d99376p-4 got 0x1.e7e1b18d99378p-4 ulperr 1.930 = 0x1p+1 + -0x1.1f3d3ep-4
X src/math/special/acosh.h:13: RN acosh(0x1.01d8f20e90409p+0) want 0x1.ebca3eea5cda5p-4 got 0x1.ebca3eea5cda3p-4 ulperr -1.652 = -0x1p+1 + 0x1.648602p-2
X src/math/special/acosh.h:14: RN acosh(0x1.01ef6122e68bep+0) want 0x1.f74df150afc94p-4 got 0x1.f74df150afc92p-4 ulperr -1.762 = -0x1p+1 + 0x1.e79556p-3
X src/math/special/acosh.h:15: RN acosh(0x1.06822faf07879p+0) want 0x1.ccd73cbc4af78p-3 got 0x1.ccd73cbc4af7ap-3 ulperr 1.674 = 0x1p+1 + -0x1.4df79ep-2
X src/math/special/acosh.h:17: RN acosh(0x1.069d65411ec51p+0) want 0x1.d0928b08facbap-3 got 0x1.d0928b08facbcp-3 ulperr 1.785 = 0x1p+1 + -0x1.b83338p-3
X src/math/special/acosh.h:18: RN acosh(0x1.071d6b2713d08p+0) want 0x1.e1bc6a6c345fdp-3 got 0x1.e1bc6a6c345ffp-3 ulperr 1.818 = 0x1p+1 + -0x1.74a04ep-3
X src/math/special/acosh.h:19: RN acosh(0x1.0728405f5140cp+0) want 0x1.e328ebe92b32cp-3 got 0x1.e328ebe92b32ep-3 ulperr 1.790 = 0x1p+1 + -0x1.ae89ap-3
X src/math/special/acosh.h:20: RN acosh(0x1.07bd2c5c01bcbp+0) want 0x1.f6513c44c131p-3 got 0x1.f6513c44c1312p-3 ulperr 1.719 = 0x1p+1 + -0x1.203932p-2
X src/math/special/acosh.h:21: RN acosh(0x1.1aae7c452c859p+0) want 0x1.cf8d69288e386p-2 got 0x1.cf8d69288e384p-2 ulperr -1.723 = -0x1p+1 + 0x1.1b325ap-2
X src/math/special/acosh.h:23: RN acosh(0x1.1b50764626f1ep+0) want 0x1.d4ec67c71794p-2 got 0x1.d4ec67c717942p-2 ulperr 1.738 = 0x1p+1 + -0x1.0c09dap-2
src/math/special/acosh.h:9: RN acoshl(0x1.001f1c62cf304p+0) want 0x1.f8d125ff71ccp-6 got 0x1.f8d125ff71cc2p-6 ulperr 1.853 = 0x1p+1 + -0x1.2d785ap-3
src/math/special/acosh.h:10: RN acoshl(0x1.00788c223616fp+0) want 0x1.f0cb8ee812621p-5 got 0x1.f0cb8ee812623p-5 ulperr 1.724 = 0x1p+1 + -0x1.1b0c1ap-2
src/math/special/acosh.h:11: RN acoshl(0x1.007b7a37c7606p+0) want 0x1.f6cb68859ae3p-5 got 0x1.f6cb68859ae2ep-5 ulperr -1.855 = -0x1p+1 + 0x1.280488p-3
src/math/special/acosh.h:12: RN acoshl(0x1.01d173033243cp+0) want 0x1.e7e1b18d99376p-4 got 0x1.e7e1b18d99378p-4 ulperr 1.930 = 0x1p+1 + -0x1.1f3d3ep-4
src/math/special/acosh.h:13: RN acoshl(0x1.01d8f20e90409p+0) want 0x1.ebca3eea5cda5p-4 got 0x1.ebca3eea5cda3p-4 ulperr -1.652 = -0x1p+1 + 0x1.648602p-2
src/math/special/acosh.h:14: RN acoshl(0x1.01ef6122e68bep+0) want 0x1.f74df150afc94p-4 got 0x1.f74df150afc92p-4 ulperr -1.762 = -0x1p+1 + 0x1.e79556p-3
src/math/special/acosh.h:15: RN acoshl(0x1.06822faf07879p+0) want 0x1.ccd73cbc4af78p-3 got 0x1.ccd73cbc4af7ap-3 ulperr 1.674 = 0x1p+1 + -0x1.4df79ep-2
src/math/special/acosh.h:17: RN acoshl(0x1.069d65411ec51p+0) want 0x1.d0928b08facbap-3 got 0x1.d0928b08facbcp-3 ulperr 1.785 = 0x1p+1 + -0x1.b83338p-3
src/math/special/acosh.h:18: RN acoshl(0x1.071d6b2713d08p+0) want 0x1.e1bc6a6c345fdp-3 got 0x1.e1bc6a6c345ffp-3 ulperr 1.818 = 0x1p+1 + -0x1.74a04ep-3
src/math/special/acosh.h:19: RN acoshl(0x1.0728405f5140cp+0) want 0x1.e328ebe92b32cp-3 got 0x1.e328ebe92b32ep-3 ulperr 1.790 = 0x1p+1 + -0x1.ae89ap-3
src/math/special/acosh.h:20: RN acoshl(0x1.07bd2c5c01bcbp+0) want 0x1.f6513c44c131p-3 got 0x1.f6513c44c1312p-3 ulperr 1.719 = 0x1p+1 + -0x1.203932p-2
src/math/special/acosh.h:21: RN acoshl(0x1.1aae7c452c859p+0) want 0x1.cf8d69288e386p-2 got 0x1.cf8d69288e384p-2 ulperr -1.723 = -0x1p+1 + 0x1.1b325ap-2
src/math/special/acosh.h:23: RN acoshl(0x1.1b50764626f1ep+0) want 0x1.d4ec67c71794p-2 got 0x1.d4ec67c717942p-2 ulperr 1.738 = 0x1p+1 + -0x1.0c09dap-2
FAIL src/math/acoshl.exe [status 1]
X src/math/special/asinh.h:7: RN asinh(0x1.fbdd0eedf8143p-3) want 0x1.f6cc20d7a594ap-3 got 0x1.f6cc20d7a594cp-3 ulperr 1.513 = 0x1p+1 + -0x1.f327a8p-2
X src/math/special/asinh.h:8: RN asinh(0x1.df2723491f88fp-3) want 0x1.dae2c8444900cp-3 got 0x1.dae2c8444900ap-3 ulperr -1.551 = -0x1p+1 + 0x1.cb8b86p-2
X src/math/special/asinh.h:9: RN asinh(0x1.ef675c6541305p-3) want 0x1.eab20432c9598p-3 got 0x1.eab20432c959ap-3 ulperr 1.568 = 0x1p+1 + -0x1.ba9e34p-2
X src/math/special/asinh.h:10: RN asinh(0x1.f19df3a1722a9p-3) want 0x1.ecd8a7f621554p-3 got 0x1.ecd8a7f621552p-3 ulperr -1.535 = -0x1p+1 + 0x1.dbc1a8p-2
X src/math/special/asinh.h:11: RN asinh(0x1.f1af09dcfa7d6p-3) want 0x1.ece942815ceccp-3 got 0x1.ece942815cecap-3 ulperr -1.526 = -0x1p+1 + 0x1.e5bb5p-2
X src/math/special/asinh.h:12: RN asinh(0x1.f339ebbeac5bap-3) want 0x1.ee68f10a49c42p-3 got 0x1.ee68f10a49c44p-3 ulperr 1.529 = 0x1p+1 + -0x1.e28cbp-2
X src/math/special/asinh.h:13: RN asinh(0x1.f424275dc8787p-3) want 0x1.ef4c7fcb51c56p-3 got 0x1.ef4c7fcb51c54p-3 ulperr -1.642 = -0x1p+1 + 0x1.6e4e9p-2
X src/math/special/asinh.h:14: RN asinh(0x1.f60d54a133665p-3) want 0x1.f127a8dec0c2p-3 got 0x1.f127a8dec0c1ep-3 ulperr -1.512 = -0x1p+1 + 0x1.f3c9eap-2
X src/math/special/asinh.h:15: RN asinh(0x1.fdccdaf285ffdp-3) want 0x1.f8ad4bed7af4cp-3 got 0x1.f8ad4bed7af4ap-3 ulperr -1.576 = -0x1p+1 + 0x1.b1f1f8p-2
X src/math/special/asinh.h:16: RN asinh(0x1.ff5bec94924c7p-3) want 0x1.fa30836c3949ap-3 got 0x1.fa30836c39498p-3 ulperr -1.533 = -0x1p+1 + 0x1.de989p-2
X src/math/special/asinh.h:17: RN asinh(0x1.028e8fd61c8a5p-2) want 0x1.ffc55bd02e9dep-3 got 0x1.ffc55bd02e9ep-3 ulperr 1.670 = 0x1p+1 + -0x1.523c08p-2
X src/math/special/asinh.h:18: RN asinh(0x1.dc71794e1f137p-2) want 0x1.ccbd41a7d058ap-2 got 0x1.ccbd41a7d0588p-2 ulperr -1.585 = -0x1p+1 + 0x1.a944b8p-2
X src/math/special/asinh.h:19: RN asinh(0x1.df308e177c3cbp-2) want 0x1.cf3a638145d7ap-2 got 0x1.cf3a638145d78p-2 ulperr -1.505 = -0x1p+1 + 0x1.fb3684p-2
X src/math/special/asinh.h:20: RN asinh(0x1.ea94e1e267746p-2) want 0x1.d9862533f65f6p-2 got 0x1.d9862533f65f4p-2 ulperr -1.579 = -0x1p+1 + 0x1.af51ecp-2
X src/math/special/asinh.h:21: RN asinh(0x1.ecd4f07608dc7p-2) want 0x1.db8d6fdcc6d74p-2 got 0x1.db8d6fdcc6d76p-2 ulperr 1.517 = 0x1p+1 + -0x1.eeb48p-2
X src/math/special/asinh.h:22: RN asinh(0x1.f30656c78ee7ep-2) want 0x1.e1204e364a186p-2 got 0x1.e1204e364a188p-2 ulperr 1.576 = 0x1p+1 + -0x1.b23ffp-2
X src/math/special/asinh.h:23: RN asinh(0x1.f5c0c6e41b969p-2) want 0x1.e393d3dc3b70ap-2 got 0x1.e393d3dc3b70cp-2 ulperr 1.562 = 0x1p+1 + -0x1.c06dbep-2
X src/math/special/asinh.h:24: RN asinh(0x1.09c58725300e7p-1) want 0x1.fe2c7f25fb172p-2 got 0x1.fe2c7f25fb174p-2 ulperr 1.579 = 0x1p+1 + -0x1.ae9df6p-2
src/math/special/asinh.h:7: RN asinhl(0x1.fbdd0eedf8143p-3) want 0x1.f6cc20d7a594ap-3 got 0x1.f6cc20d7a594cp-3 ulperr 1.513 = 0x1p+1 + -0x1.f327a8p-2
src/math/special/asinh.h:8: RN asinhl(0x1.df2723491f88fp-3) want 0x1.dae2c8444900cp-3 got 0x1.dae2c8444900ap-3 ulperr -1.551 = -0x1p+1 + 0x1.cb8b86p-2
src/math/special/asinh.h:9: RN asinhl(0x1.ef675c6541305p-3) want 0x1.eab20432c9598p-3 got 0x1.eab20432c959ap-3 ulperr 1.568 = 0x1p+1 + -0x1.ba9e34p-2
src/math/special/asinh.h:10: RN asinhl(0x1.f19df3a1722a9p-3) want 0x1.ecd8a7f621554p-3 got 0x1.ecd8a7f621552p-3 ulperr -1.535 = -0x1p+1 + 0x1.dbc1a8p-2
src/math/special/asinh.h:11: RN asinhl(0x1.f1af09dcfa7d6p-3) want 0x1.ece942815ceccp-3 got 0x1.ece942815cecap-3 ulperr -1.526 = -0x1p+1 + 0x1.e5bb5p-2
src/math/special/asinh.h:12: RN asinhl(0x1.f339ebbeac5bap-3) want 0x1.ee68f10a49c42p-3 got 0x1.ee68f10a49c44p-3 ulperr 1.529 = 0x1p+1 + -0x1.e28cbp-2
src/math/special/asinh.h:13: RN asinhl(0x1.f424275dc8787p-3) want 0x1.ef4c7fcb51c56p-3 got 0x1.ef4c7fcb51c54p-3 ulperr -1.642 = -0x1p+1 + 0x1.6e4e9p-2
src/math/special/asinh.h:14: RN asinhl(0x1.f60d54a133665p-3) want 0x1.f127a8dec0c2p-3 got 0x1.f127a8dec0c1ep-3 ulperr -1.512 = -0x1p+1 + 0x1.f3c9eap-2
src/math/special/asinh.h:15: RN asinhl(0x1.fdccdaf285ffdp-3) want 0x1.f8ad4bed7af4cp-3 got 0x1.f8ad4bed7af4ap-3 ulperr -1.576 = -0x1p+1 + 0x1.b1f1f8p-2
src/math/special/asinh.h:16: RN asinhl(0x1.ff5bec94924c7p-3) want 0x1.fa30836c3949ap-3 got 0x1.fa30836c39498p-3 ulperr -1.533 = -0x1p+1 + 0x1.de989p-2
src/math/special/asinh.h:17: RN asinhl(0x1.028e8fd61c8a5p-2) want 0x1.ffc55bd02e9dep-3 got 0x1.ffc55bd02e9ep-3 ulperr 1.670 = 0x1p+1 + -0x1.523c08p-2
src/math/special/asinh.h:18: RN asinhl(0x1.dc71794e1f137p-2) want 0x1.ccbd41a7d058ap-2 got 0x1.ccbd41a7d0588p-2 ulperr -1.585 = -0x1p+1 + 0x1.a944b8p-2
src/math/special/asinh.h:19: RN asinhl(0x1.df308e177c3cbp-2) want 0x1.cf3a638145d7ap-2 got 0x1.cf3a638145d78p-2 ulperr -1.505 = -0x1p+1 + 0x1.fb3684p-2
src/math/special/asinh.h:20: RN asinhl(0x1.ea94e1e267746p-2) want 0x1.d9862533f65f6p-2 got 0x1.d9862533f65f4p-2 ulperr -1.579 = -0x1p+1 + 0x1.af51ecp-2
src/math/special/asinh.h:21: RN asinhl(0x1.ecd4f07608dc7p-2) want 0x1.db8d6fdcc6d74p-2 got 0x1.db8d6fdcc6d76p-2 ulperr 1.517 = 0x1p+1 + -0x1.eeb48p-2
src/math/special/asinh.h:22: RN asinhl(0x1.f30656c78ee7ep-2) want 0x1.e1204e364a186p-2 got 0x1.e1204e364a188p-2 ulperr 1.576 = 0x1p+1 + -0x1.b23ffp-2
src/math/special/asinh.h:23: RN asinhl(0x1.f5c0c6e41b969p-2) want 0x1.e393d3dc3b70ap-2 got 0x1.e393d3dc3b70cp-2 ulperr 1.562 = 0x1p+1 + -0x1.c06dbep-2
src/math/special/asinh.h:24: RN asinhl(0x1.09c58725300e7p-1) want 0x1.fe2c7f25fb172p-2 got 0x1.fe2c7f25fb174p-2 ulperr 1.579 = 0x1p+1 + -0x1.ae9df6p-2
FAIL src/math/asinhl.exe [status 1]
X src/math/special/erfc.h:6: RN erfc(0x1.5db559fe5c0bap+0) want 0x1.b53cf571d328fp-5 got 0x1.b53cf571d328cp-5 ulperr -2.609 = -0x1.8p+1 + 0x1.900982p-2
src/math/special/erfc.h:6: RN erfcl(0x1.5db559fe5c0bap+0) want 0x1.b53cf571d328fp-5 got 0x1.b53cf571d328cp-5 ulperr -2.609 = -0x1.8p+1 + 0x1.900982p-2
FAIL src/math/erfcl.exe [status 1]
X src/math/special/exp2.h:12: bad fp exception: RN exp2(-0x1.ff8p+9)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/special/exp2.h:18: bad fp exception: RN exp2(-0x1.ff8p+9)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/special/exp2.h:20: bad fp exception: RN exp2(-0x1p+10)=0x1p-1024, want 0 got INEXACT|UNDERFLOW
X src/math/special/exp2.h:21: bad fp exception: RN exp2(-0x1.004p+10)=0x1p-1025, want 0 got INEXACT|UNDERFLOW
X src/math/special/exp2.h:22: bad fp exception: RN exp2(-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:12: bad fp exception: RN exp2l(-0x1.ff8p+9)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:18: bad fp exception: RN exp2l(-0x1.ff8p+9)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:20: bad fp exception: RN exp2l(-0x1p+10)=0x1p-1024, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:21: bad fp exception: RN exp2l(-0x1.004p+10)=0x1p-1025, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:22: bad fp exception: RN exp2l(-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
FAIL src/math/exp2l.exe [status 1]
src/math/sanity/fma.h:1: RN fma(-0x1.02239f3c6a8f1p+3,0x1.22484b9ef31fp+2,0x1.52fb12ef638a1p-1) want -0x1.1f69545c32effp+5 got -0x1.9ee52705ep+4 ulperr 1406739496828928.000 = 0x1.3fdb04p+50 + -0x1.759846p-3
src/math/sanity/fma.h:2: RN fma(0x1.161868e18bc67p+2,-0x1.1c6a6cdce75e8p+3,0x1.ab3ff8575b21dp-5) want -0x1.348be0b9d32d3p+5 got -0x1.c8a99f416p+3 ulperr 3419582362550272.000 = 0x1.84c2f2p+51 + 0x1.b43916p-3
src/math/sanity/fma.h:3: RN fma(-0x1.0c34b3e01e6e7p+3,-0x1.61bde29e83f6dp+1,0x1.eb4a2e7ce0693p+2) want 0x1.ed6e27fca81b7p+4 got 0x1.487be8a56cp+2 ulperr -7235829650948096.000 = -0x1.9b4f2ep+52 + -0x1.f11488p-2
src/math/sanity/fma.h:4: RN fma(-0x1.a206f0a19dcc4p+2,0x1.24527f7b576acp+2,-0x1.95882b433fad3p-1) want -0x1.ea02e2365f336p+4 got 0x1.2e3092a8ap+3 ulperr 11278458491502592.000 = 0x1.408d96p+53 + 0x1.41da3ap-2
src/math/sanity/fma.h:5: RN fma(0x1.288bbb0d6a1e6p+3,0x1.33edd910a3c01p+2,-0x1.1e159e36313eep-1) want 0x1.603abfa620e23p+5 got -0x1.7341dbb0dp+2 ulperr -7012890246643712.000 = -0x1.8ea2fcp+52 + -0x1.7be8ccp-3
src/math/special/fma.h:42: RN fma(0x1p+0,0x1p+0,-0x1p-1074) want 0x1p+0 got -0x1.fffffp-43 ulperr -4503599627370496.000 = -0x1p+52 + 0x0p+0
src/math/special/fma.h:43: bad fp exception: RN fma(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022)=0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:43: RN fma(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.fffffffffffffp-1022 got 0x1p-1074 ulperr -9007199254740992.000 = -0x1p+53 + 0x0p+0
src/math/special/fma.h:44: bad fp exception: RN fma(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022)=0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:44: RN fma(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.fffffffffffffp-1022 got -0x0p+0 ulperr -9007199254740992.000 = -0x1p+53 + 0x0p+0
src/math/special/fma.h:45: bad fp exception: RN fma(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:45: RN fma(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.fffffffffffffp-1022 got -0x1p-1074 ulperr 9007199254740992.000 = 0x1p+53 + 0x0p+0
src/math/special/fma.h:46: bad fp exception: RN fma(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:46: RN fma(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.fffffffffffffp-1022 got 0x0p+0 ulperr 9007199254740992.000 = 0x1p+53 + 0x0p+0
src/math/special/fma.h:47: RN fma(0x1p-1074,-0x1p-1074,0x1p-1074) want 0x1p-1074 got -0x0p+0 ulperr -1.000 = -0x1p+0 + 0x0p+0
src/math/special/fma.h:48: RN fma(0x1p-1074,-0x1p-1074,-0x1p-1074) want -0x1p-1074 got -0x0p+0 ulperr 1.000 = 0x1p+0 + 0x0p+0
src/math/special/fma.h:49: RN fma(0x1.0000000000001p+0,0x1p+0,0x1p+53) want 0x1.0000000000001p+53 got 0x1.000008p+12 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:50: RN fma(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p+53) want 0x1.0000000000001p+53 got 0x1.ffc02p+10 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:51: RN fma(0x1p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp+53) want 0x1.fffffffffffffp+53 got -0x1.ffffep+10 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:52: RN fma(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep+53) want 0x1.fffffffffffffp+53 got 0x1.ffc02p+10 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:53: RN fma(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p-52) want 0x1.0000000000001p+0 got -0x1.fffffp-42 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:54: RN fma(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp-53) want 0x1.0000000000001p+0 got -0x1.fffff8p-41 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:55: RN fma(0x1.0000000000005p+0,0x1.ffffffffffffbp-1,0x1p-52) want 0x1.0000000000003p+0 got -0x1.8fffff8p-37 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:56: RN fma(0x1.0000000000006p+0,0x1.ffffffffffffdp-1,0x1p-52) want 0x1.0000000000005p+0 got -0x1.1fffff8p-37 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:75: RN fma(0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff5p+0 got 0x1.6800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:76: RN fma(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1p+0) want 0x1.ffffffffffff9p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:77: RN fma(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffff7p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:78: RN fma(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffff5p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:79: RN fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffff7p+0 got 0x1.f800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:80: RN fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffff5p+0 got 0x1.f800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:81: RN fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffff7p+0 got 0x1.2000004p-36 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:82: RN fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffff5p+0 got 0x1.2000004p-36 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:83: RN fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.fffffffffffffp-1) want 0x1.ffffffffffff7p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:84: RN fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffff5p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:85: RN fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff3p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:86: RN fma(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep-1) want 0x1.fffffffffffffp+0 got -0x1.fffffp-42 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:87: RN fma(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffp-42 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:88: RN fma(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.fffffffffffffp-1) want 0x1.fffffffffffffp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:89: RN fma(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:90: RN fma(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:91: RN fma(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1p+0) want 0x1.fffffffffffffp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:92: RN fma(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:93: RN fma(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:94: RN fma(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:95: RN fma(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:96: RN fma(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffffdp+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:97: RN fma(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffbp+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:98: RN fma(0x1.5872449b765b9p+0,0x1.c9acf91f8de2bp+0,0x1.9265607e4d168p+0) want 0x1.fd190c77c2a67p+1 got -0x1.b3fc37bedp-4 ulperr -9195829923414016.000 = -0x1.055c78p+53 + -0x1.fffc98p-2
src/math/special/fma.h:99: RN fma(0x1.81d010b146d0ep+0,0x1.2d3c680dc9071p+0,0x1.a80b69538754cp+0) want 0x1.b7040b44973a7p+1 got 0x1.4d0cb20197p+1 ulperr -1864177270390784.000 = -0x1.a7dd66p+50 + 0x1.ffacbcp-2
src/math/special/fma.h:100: RN fma(0x1.6a44f2252b6a2p+0,0x1.da452a378b832p+0,0x1.1fe2ce329104p+0) want 0x1.df842b6f48b13p+1 got 0x1.12e95c1ba4p+0 ulperr -6017592242208768.000 = -0x1.560f7ep+52 + 0x1.ffdda2p-2
src/math/special/fma.h:101: RN fma(0x1.096b1d26463eep+0,0x1.d846d3e34333p+0,0x1.721e3480922b8p+0) want 0x1.ade2909c0269fp+1 got -0x1.a139d9b2cp-1 ulperr -9397596749561856.000 = -0x1.0b1884p+53 + -0x1.ffe5ecp-2
src/math/special/fma.h:102: RN fma(0x1.99bd3434c454bp+0,0x1.03cb8e4115bdep+0,0x1.109f107188b08p+0) want 0x1.5837a47d37fafp+1 got 0x1.cfdec0c00ap+0 ulperr -1975290892910592.000 = -0x1.c1211p+50 + 0x1.ffc604p-2
src/math/special/fma.h:103: RN fma(0x1.ba930a0a78ed2p+0,0x1.8c24e8d67f636p+0,0x1.ac49dbfbf8affp+0) want 0x1.164947ae6a5d9p+2 got -0x1.33e3b04edp-2 ulperr -5234191281160192.000 = -0x1.298782p+52 + -0x1.fffb3p-2
src/math/special/fma.h:104: RN fma(0x1.be224ad773191p+0,0x1.d96b77169731fp+0,0x1.662cfb75d8edep+0) want 0x1.27cd67e720f79p+2 got 0x1.e4711611c78p+1 ulperr -942615600037888.000 = -0x1.aca6e6p+49 + 0x1.ffc372p-2
src/math/special/fma.h:105: RN fma(0x1.59e7a1b0bdb3cp+0,0x1.2decba4d46421p+0,0x1.88f4062e96df5p+0) want 0x1.90749e4794f79p+1 got -0x1.b3c84a9a88p-1 ulperr -8961479327875072.000 = -0x1.fd66bp+52 + -0x1.ffe4c4p-2
src/math/special/fma.h:106: RN fma(0x1.22edf4b4da9a7p+0,0x1.dfa8d65f506cdp+0,0x1.2799208da2fbap+0) want 0x1.a45a1e99ed7a9p+1 got 0x1.a0bdfb8976p-1 ulperr -5562059957731328.000 = -0x1.3c2aap+52 + 0x1.ffe5f4p-2
src/math/special/fma.h:107: RN fma(0x1.ad5b991a2a279p+0,0x1.f02fd26706024p+0,0x1.831cdd5c8797cp+0) want 0x1.30d3a2ac90a61p+2 got 0x1.c7c15e1c82p+1 ulperr -1353701616779264.000 = -0x1.33cbcep+50 + 0x1.ffc708p-2
src/math/special/fma.h:108: RN fma(0x1.531f9620e764ap+0,0x1.cad61b54d4425p+0,0x1.df817cae8a9afp+0) want 0x1.0fd4e7f8671ddp+2 got 0x1.8e74e26059p+1 ulperr -1277252138434560.000 = -0x1.2269dcp+50 + 0x1.ffce32p-2
src/math/special/fma.h:109: RN fma(0x1.629a5ad79494fp+0,0x1.049e58693f4c4p+0,0x1.45b0109e4d00cp+0) want 0x1.5758154e14965p+1 got -0x1.01173c9c2p-3 ulperr -6322847379095552.000 = -0x1.67698ap+52 + -0x1.fffbfcp-2
src/math/special/fma.h:110: RN fma(0x1.2f52b53f9240ap+0,0x1.1d5c686dbb0dap+0,0x1.6da3e392a4fd4p+0) want 0x1.5fe03a6795913p+1 got 0x1.5bdb7d9084p+0 ulperr -3130480329228288.000 = -0x1.63e4f8p+51 + 0x1.ffd484p-2
src/math/special/fma.h:111: RN fma(0x1.058667552b49ep+0,0x1.23307bacc1c42p+0,0x1.5b059b47cd8f5p+0) want 0x1.423f752486d13p+1 got -0x1.4bfb042744p+0 ulperr -8589176530272256.000 = -0x1.e83cf8p+52 + -0x1.ffd68p-2
src/math/special/fma.h:112: RN fma(0x1.a717d95337ed8p+0,0x1.2b1c37846aaadp+0,0x1.be65672f885b1p+0) want 0x1.d65e72303c075p+1 got -0x1.7e0573ec04p+1 ulperr -14995408015065088.000 = -0x1.aa31f4p+53 + -0x1.ffa07ep-2
src/math/special/fma.h:113: RN fma(0x1.deb79287b3d32p+0,0x1.62776b829babap+0,0x1.67daf18bd2eb1p+0) want 0x1.ff5a0d45c69d7p+1 got 0x1.ad881652ap-3 ulperr -8523520438960128.000 = -0x1.e4818cp+52 + 0x1.fff94ap-2
src/math/special/fma.h:114: RN fma(0x1.fbf12d3a6de91p+0,0x1.879fe6124f11p+0,0x1.9f3f1247a8641p+0) want 0x1.2a126c6980019p+2 got 0x1.45e3d61a84p+2 ulperr 489379780886528.000 = 0x1.bd169cp+48 + 0x1.ffae88p-2
src/math/special/fma.h:115: RN fma(0x1.c589628460e01p+0,0x1.e1bec1c797533p+0,0x1.349f30cdb84bbp+0) want 0x1.2286118b6f6e5p+2 got -0x1.8e9d95e0668p+1 ulperr -8617206560587776.000 = -0x1.e9d4dcp+52 + -0x1.ffce2cp-2
src/math/special/fma.h:116: RN fma(0x1.46fd6c2c924ebp+0,0x1.65e2f02e730a1p+0,0x1.37739d2751098p+0) want 0x1.804a71c1f1273p+1 got 0x1.855d7947cbp+0 ulperr -3335623268106240.000 = -0x1.7b376ap+51 + 0x1.ffcf54p-2
src/math/special/fma.h:117: RN fma(0x1.f99e595ae11fdp+0,0x1.bd33d9a1d81bp+0,0x1.932a2a2e244c1p+0) want 0x1.409e34f8f2f89p+2 got -0x1.7a49668944p+2 ulperr -12295261934059520.000 = -0x1.5d73cep+53 + -0x1.ffa16ep-2
src/math/special/fma.h:118: RN fma(0x1.59ea1e56bfe55p+0,0x1.6f46b7d412a44p+0,0x1.80f2bc9a32cc3p+0) want 0x1.b89c7640e32ffp+1 got -0x1.ca180bfb6p-3 ulperr -8254993714905088.000 = -0x1.d53df8p+52 + -0x1.fff8d8p-2
src/math/special/fma.h:119: RN fma(0x1.61490fcb44129p+0,0x1.0038ec4fc35c2p+0,0x1.df7436ed7a7b7p+0) want 0x1.a085ea68d05cfp+1 got -0x1.5ed2c690f7p+1 ulperr -13499301254660096.000 = -0x1.7fac58p+53 + -0x1.ffa84cp-2
src/math/special/fma.h:120: RN fma(0x1.d41b98788502bp+0,0x1.1a7b77843aca6p+0,0x1.05be891837d36p+0) want 0x1.8523596ceced9p+1 got -0x1.48c8fc403cp-1 ulperr -8291801584631808.000 = -0x1.d75598p+52 + -0x1.ffeb74p-2
src/math/special/fma.h:121: RN fma(0x1.3153cf6f69af9p+0,0x1.aaa947e38e57ap+0,0x1.8519f9b590645p+0) want 0x1.c0fcab7b46369p+1 got 0x1.25f4f4bd5p-3 ulperr -7575453653008384.000 = -0x1.ae9d5cp+52 + 0x1.fffb68p-2
src/math/special/fma.h:122: RN fma(0x1.c25a1f73581aap+0,0x1.0a51ffca372ap+0,0x1.0c77e3ebac5f3p+0) want 0x1.707ce48c7d72dp+1 got -0x1.3261c9a0ep+1 ulperr -11872436362412032.000 = -0x1.516f58p+53 + -0x1.ffb368p-2
src/math/special/fma.h:123: RN fma(0x1.829c2cde44b7p+0,0x1.f692e86d8cb36p+0,0x1.455e72d264bfp+0) want 0x1.0f16a3b8b3f97p+2 got -0x1.684386466p+0 ulperr -6353495191977984.000 = -0x1.692786p+52 + -0x1.ffe97cp-2
src/math/special/fma.h:124: RN fma(0x1.94729588dcc69p+0,0x1.c3bb794c6edf8p+0,0x1.9da4e94d262d2p+0) want 0x1.19d4bd84d9fd3p+2 got 0x1.e1b9a2757p-1 ulperr -3898698849320960.000 = -0x1.bb3b12p+51 + 0x1.fff0f2p-2
src/math/special/fma.h:125: RN fma(0x1.e6a5e7e39c3d5p+0,0x1.1b69af2bdd978p+0,0x1.e7ef1eafa119cp+0) want 0x1.00ac5b44c9f31p+2 got -0x1.6777d5d394p+1 ulperr -7677358731427840.000 = -0x1.b46846p+52 + -0x1.ffd312p-2
src/math/special/fma.h:126: RN fma(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022) want 0x1.b594d0e4368efp-1022 got -0x1.9dedc9561p-1023 ulperr -11338968138252288.000 = -0x1.4245dap+53 + -0x1.ffcc42p-2
src/math/special/fma.h:127: RN fma(0x1.022db53c98d14p-1022,0x1.21157eef74848p-2,0x1.2f880432b1bc1p-1022) want 0x1.786ad60a02b3dp-1022 got -0x1.150255ac98p-1022 ulperr -11495199721127936.000 = -0x1.46b696p+53 + -0x1.ffbacp-2
src/math/special/fma.h:128: RN fma(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022) want 0x1.cbb085199a3f5p-1022 got -0x1.6ed115da2f8p-1023 ulperr -11313497908445184.000 = -0x1.418c88p+53 + -0x1.ffd226p-2
src/math/special/fma.h:129: RN fma(0x1.adbc3a9d816dep-1022,0x1.e039d4431e3cdp-2,0x1.93ceef6fe18a2p-1022) want 0x1.2eabb7dc0e2f1p-1021 got 0x1.ef7b6794e3p-1023 ulperr -3145487481831424.000 = -0x1.6599bcp+51 + 0x1.ffe108p-2
src/math/special/fma.h:130: RN fma(0x1.645aa5c2df3afp-1022,0x1.649edfcad854fp-2,0x1.8b43e0bbaeb01p-1022) want 0x1.03af571d2b505p-1021 got 0x1.0ce86163c02p-1021 ulperr 162249436037120.000 = 0x1.272148p+47 + 0x1.ffbcc6p-2
src/math/special/fma.h:131: RN fma(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022) want 0x1.ad9ce7fcefa3fp-1022 got -0x1.12bc4931e6p-1025 ulperr -8161980292530176.000 = -0x1.cff472p+52 + -0x1.fff76ap-2
src/math/special/fma.h:132: RN fma(0x1.8ee3feb00c3e7p-1022,0x1.53bd9353313bcp-2,0x1.5501b57dc3b6fp-1022) want 0x1.d9598906f0bb3p-1022 got -0x1.4660b83f57p-1022 ulperr -14068955652030464.000 = -0x1.8fdd2p+53 + -0x1.ffae68p-2
src/math/special/fma.h:133: RN fma(0x1.161225cfa61e2p-1022,0x1.b6dd69a0af5bp-2,0x1.924ffc3ead5c3p-1022) want 0x1.04be6fc25367bp-1021 got -0x1.f3ab56daa8p-1022 ulperr -8982192881401856.000 = -0x1.fe941cp+52 + -0x1.ffc18ap-2
src/math/special/fma.h:134: RN fma(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022) want 0x1.70b6c3169f043p-1022 got -0x1.a779baefbe8p-1023 ulperr -10211413595258880.000 = -0x1.2239dp+53 + -0x1.ffcb1p-2
src/math/special/fma.h:135: RN fma(0x1.ce0e2ea55040ep-1022,0x1.ce5a55fa3828dp-2,0x1.f2f444d50ce59p-1022) want 0x1.61ca36f5a8a79p-1021 got -0x1.173f0cea128p-1022 ulperr -8680214267691008.000 = -0x1.ed69bep+52 + -0x1.ffdd18p-2
src/math/special/fma.h:136: RN fma(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022) want 0x1.1440cf1c105ebp-1021 got -0x1.f88fda6p-1030 ulperr -4877233864835072.000 = -0x1.153d18p+52 + -0x1.ffffcp-2
src/math/special/fma.h:137: RN fma(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022) want 0x1.1186e1f77012dp-1021 got -0x1.2ffba526fcp-1025 ulperr -5146168610783232.000 = -0x1.24869cp+52 + -0x1.fffb4p-2
src/math/special/fma.h:138: RN fma(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022) want 0x1.8d86310bad175p-1022 got -0x1.1b755c367f8p-1023 ulperr -9486646453993472.000 = -0x1.0da07p+53 + -0x1.ffdc92p-2
src/math/special/fma.h:139: RN fma(0x1.fb3391a4b1d23p-1022,0x1.4d8705b057caep-2,0x1.d026cb6dae73bp-1022) want 0x1.3aad18b424c67p-1021 got -0x1.0a1784c7c6cp-1021 ulperr -10216978799132672.000 = -0x1.22624ep+53 + -0x1.ffbd7ap-2
src/math/special/fma.h:140: RN fma(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022) want 0x1.c0048fd33a417p-1022 got -0x1.d026e457f1p-1024 ulperr -9922974329077760.000 = -0x1.1a0724p+53 + -0x1.ffe2fep-2
src/math/special/fma.h:141: RN fma(0x1.aa9eff070281cp-1022,0x1.fab05661b48ebp-2,0x1.cbe2af6c69c6ep-1022) want 0x1.4f7ddbe122765p-1021 got 0x1.9e529858dap-1023 ulperr -4079821109854208.000 = -0x1.cfd26cp+51 + 0x1.ffe61ap-2
src/math/special/fma.h:142: RN fma(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022) want 0x1.e0e762ee2e7c5p-1022 got -0x1.e2fe0f96ecp-1023 ulperr -12708596701724672.000 = -0x1.693336p+53 + -0x1.ffc3ap-2
src/math/special/fma.h:143: RN fma(0x1.4dab43918a9a8p-1022,0x1.ed667442b4751p-2,0x1.3f25f82e02e3ep-1022) want 0x1.dfec0ee732dcbp-1022 got 0x1.6a41c4d18ap-1022 ulperr -2069987942465536.000 = -0x1.d6a928p+50 + 0x1.ffa57p-2
src/math/special/fma.h:144: RN fma(0x1.7943735951931p-1022,0x1.fa6a357c5c9ddp-2,0x1.0bed44b0b71b4p-1022) want 0x1.c6803a6059abfp-1022 got 0x1.0e970cce134p-1022 ulperr -3235394032238592.000 = -0x1.6fd25cp+51 + 0x1.ffbc5ap-2
src/math/special/fma.h:145: RN fma(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022) want 0x1.8640492c45959p-1022 got -0x1.3271a1b38p-1027 ulperr -7033839486500864.000 = -0x1.8fd3d6p+52 + -0x1.fffd9cp-2
src/math/special/fma.h:146: RN fma(0x1.f52172c56bdf5p-1022,0x1.672b2de422734p-2,0x1.7bc5d708e5a34p-1022) want 0x1.15c5b95145cc7p-1021 got 0x1.3cf4f71d188p-1021 ulperr 689341647028224.000 = 0x1.3979eep+49 + 0x1.ffb0c2p-2
src/math/special/fma.h:147: RN fma(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022) want 0x1.e7fa0dd76fbefp-1022 got -0x1.60a5d541bp-1024 ulperr -10135539776749568.000 = -0x1.2011c2p+53 + -0x1.ffe9f6p-2
src/math/special/fma.h:148: RN fma(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022) want 0x1.b63a7f56fce1fp-1022 got -0x1.497a9bc52p-1024 ulperr -9158461560455168.000 = -0x1.044c94p+53 + -0x1.ffeb68p-2
src/math/special/fma.h:149: RN fma(0x1.f73d5f4e81fd8p-1022,0x1.7ccff2642124ap-2,0x1.e7d836a0c8308p-1022) want 0x1.517f1763126d3p-1021 got -0x1.06939f3372p-1021 ulperr -10556597969354752.000 = -0x1.2c095cp+53 + -0x1.ffbe5cp-2
src/math/special/fma.h:150: RN fma(0x1.b4328925969fbp-1022,0x1.8fa02832a22d5p-2,0x1.2084598e2f8c6p-1022) want 0x1.cabf43838dc51p-1022 got -0x1.7c61d65f0a4p-1022 ulperr -14762118276448256.000 = -0x1.a3908cp+53 + -0x1.ffa0e8p-2
src/math/special/fma.h:151: RN fma(0x1.66ee60a92676fp-1022,0x1.eddd2e7681ce4p-2,0x1.b81d57daeb3a7p-1022) want 0x1.329c918ffb683p-1021 got 0x1.cd379885b8p-1025 ulperr -4886854591578112.000 = -0x1.15c918p+52 + 0x1.fff8ccp-2
src/math/special/fma.h:152: RN fma(0x1.ff2737585895dp-1022,0x1.fb4bf3828ae4ap-2,0x1.4a866847740fp-1022) want 0x1.23e07e4dbbeabp-1021 got 0x1.46c53f7571p-1023 ulperr -3697601232764928.000 = -0x1.a45e5cp+51 + 0x1.ffeb94p-2
src/math/special/fma.h:153: RN fma(0x1.5e2008d269a86p-1022,0x1.507bbbe4d78eep-2,0x1.6220c6f83f636p-1022) want 0x1.d52d9874f1c75p-1022 got 0x1.eda0503c4ap-1023 ulperr -3911886277967872.000 = -0x1.bcbaep+51 + 0x1.ffc24cp-2
src/math/special/fma.h:154: RN fma(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022) want 0x1.9864925e2fb0fp-1022 got -0x1.53ae580e8cp-1025 ulperr -7931489798848512.000 = -0x1.c2da5ep+52 + -0x1.fff562p-2
src/math/special/fma.h:155: RN fma(0x1.7b353b81e793dp-1022,0x1.82b426f874c6dp-2,0x1.d92b19d21fd5cp-1022) want 0x1.342fb0c544a79p-1021 got 0x1.2af4c8aebe4p-1022 ulperr -2792024021401600.000 = -0x1.3d6a98p+51 + 0x1.ffdaa2p-2
src/math/special/fma.h:156: RN fma(0x1.5be667823370ap-1022,0x1.a8a99b163869bp-2,0x1.95456b68dc3bcp-1022) want 0x1.12c638de03c71p-1021 got 0x1.49af7fc787p-1023 ulperr -3383908364189696.000 = -0x1.80b4b2p+51 + 0x1.ffeb66p-2
src/math/special/fma.h:157: RN fma(0x1.17b0fc6c850e5p-1022,0x1.d1d0a4853c315p-2,0x1.36b79f7c0c24p-1022) want 0x1.b5f2baff5635dp-1022 got 0x1.6a19304724p-1026 ulperr -7306334223466496.000 = -0x1.9f5128p+52 + 0x1.fffa58p-2
src/math/special/fma.h:158: RN fma(0x1.bd97819bacfd8p-1022,0x1.2c25f267ba4eep-2,0x1.804b5204a3f3ap-1022) want 0x1.01739c190fd97p-1021 got 0x1.b9e166e6b4p-1022 ulperr -642314707927040.000 = -0x1.241746p+49 + 0x1.ffc8c4p-2
src/math/special/fma.h:159: RN fma(0x1.596577053873dp-1022,0x1.3562ab2d29949p-2,0x1.b3f1ee75db6e7p-1022) want 0x1.0e268a498009bp-1021 got 0x1.e8136bc1594p-1022 ulperr -459377991483392.000 = -0x1.a1cd46p+48 + 0x1.ffc2fep-2
src/math/special/fma.h:160: RN fma(0x1.3c7a68cf0f7b3p-1022,0x1.9a55c15b167bdp-2,0x1.7635b7b163c07p-1022) want 0x1.f5073b93b7b81p-1022 got 0x1.75f9a972138p-1023 ulperr -5524660993130496.000 = -0x1.3a0a66p+52 + 0x1.ffd14p-2
src/math/special/fma.h:161: RN fma(0x1.5825164bc4068p-1022,0x1.dcbb6e5ff3245p-2,0x1.52fc3be0e84dap-1022) want 0x1.f334771c2dcfbp-1022 got 0x1.2b86ba6b02p-1022 ulperr -3512784226615296.000 = -0x1.8f5b7ap+51 + 0x1.ffb51ep-2
src/math/special/fma.h:162: RN fma(0x1.139ea77b760ecp+1022,0x1.9b25f2fd017eap+2,-0x1.bc16788922b6fp+1023) want 0x1.b93aac527380fp+1023 got 0x1.c3ec4f2eep+1022 ulperr -3787028625883136.000 = -0x1.ae890ap+51 + 0x1.ffc782p-2
src/math/special/fma.h:163: RN fma(0x1.0e6f9c1657d7cp+1022,0x1.4d5c6b55ab5f1p+2,-0x1.e027dd5742e2cp+1023) want 0x1.c0538372b4bbfp+1022 got 0x1.54dede6dep+1021 ulperr -4888708943708160.000 = -0x1.15e414p+52 + 0x1.ffd564p-2
src/math/special/fma.h:164: RN fma(0x1.1182524fa411cp+1022,0x1.a3dba56842d19p+2,-0x1.c1ad59474d71fp+1023) want 0x1.bf78969300a77p+1023 got 0x1.8651491efp+1022 ulperr -4438724683235328.000 = -0x1.f89fe4p+51 + 0x1.ffcf36p-2
src/math/special/fma.h:165: RN fma(0x1.1cbf4fb8ec82p+1022,0x1.5e32019a84fbbp+2,-0x1.985af08f32edep+1023) want 0x1.72af6bbad4a29p+1023 got 0x1.a68c1c1ecp+1023 ulperr 912367152005120.000 = 0x1.9ee584p+49 + 0x1.ff965cp-2
src/math/special/fma.h:166: RN fma(0x1.311e25c6db346p+1022,0x1.4e30db6c4b51dp+2,-0x1.7681f7a9786a7p+1023) want 0x1.a61d29434fc13p+1023 got -0x1.791d1989p+1017 ulperr -7529566759288832.000 = -0x1.ac019ep+52 + -0x1.fffe86p-2
src/math/special/fma.h:167: RN fma(0x1.1201cf577052fp+1022,0x1.59730b2db7a16p+2,-0x1.56f1a64a078d5p+1023) want 0x1.8c8d801df34d9p+1023 got -0x1.3048609fd8p+1022 ulperr -inf = -inf + -0x1.ffd9f6p-2
src/math/special/fma.h:168: RN fma(0x1.3e52335b76e81p+1022,0x1.4dbd56f857479p+2,-0x1.509340c11bd2ep+1023) want 0x1.ed6576837f653p+1023 got -0x1.e498d5441cp+1022 ulperr -inf = -inf + -0x1.ffc36cp-2
src/math/special/fma.h:169: RN fma(0x1.18566b4f843cbp+1022,0x1.444fba10eaf29p+2,-0x1.f927beae57f0ap+1023) want 0x1.9a433b9796559p+1022 got 0x1.a048d2820cp+1022 ulperr 105937222238208.000 = 0x1.8165bap+46 + -0x1.ff6812p-2
src/math/special/fma.h:170: RN fma(0x1.3fbe544fe1be8p+1022,0x1.2d2a5fda03639p+2,-0x1.007407dbfd03cp+1023) want 0x1.efdb644b613e5p+1023 got -0x1.e14223656p+1022 ulperr -inf = -inf + -0x1.ffc3d8p-2
src/math/special/fma.h:171: RN fma(0x1.263a0d3bc2e4p+1022,0x1.4cc198adbc651p+2,-0x1.734b1c1f7fdb8p+1023) want 0x1.899878afc0fa3p+1023 got 0x1.a13620448p+1023 ulperr 415454233362432.000 = 0x1.79da7ap+48 + 0x1.ff97b2p-2
src/math/special/fma.h:172: RN fma(0x1.5bf4aec8efc8ep+1022,0x1.555f0341516c9p+2,-0x1.c706408acd14cp+1023) want 0x1.d8f5e18b868bdp+1023 got 0x1.3e5679fdf8p+1022 ulperr -5520279589617664.000 = -0x1.39caa4p+52 + 0x1.ffd836p-2
src/math/special/fma.h:173: RN fma(0x1.1e57f1af78279p+1022,0x1.34bc0c7f082b3p+2,-0x1.497b92c1365edp+1023) want 0x1.692cb7ec68a93p+1023 got -0x1.c0a1f29b28p+1021 ulperr -8326959113175040.000 = -0x1.d95534p+52 + -0x1.ffe3f6p-2
src/math/special/fma.h:174: RN fma(0x1.1d9824cd73511p+1022,0x1.1d557ddfe47ffp+2,-0x1.556cdb1d20a72p+1023) want 0x1.2736a6b6e35f3p+1023 got 0x1.bc6f9c9778p+1021 ulperr -3238800478175232.000 = -0x1.70358p+51 + 0x1.ffe43ap-2
src/math/special/fma.h:175: RN fma(0x1.1ff85a24aff31p+1022,0x1.39ab374b2680dp+2,-0x1.35e6b07b651b8p+1023) want 0x1.8bc7ce2087081p+1023 got 0x1.84b319bafap+1023 ulperr -124568119279616.000 = -0x1.c52d1ap+46 + 0x1.ff9ed4p-2
src/math/special/fma.h:176: RN fma(0x1.0449b3965227ep+1022,0x1.4430d4441f9f2p+2,-0x1.a6966c96307ep+1023) want 0x1.d94eda8c81771p+1022 got -0x1.992ed6b72p+1021 ulperr -11925733685329920.000 = -0x1.52f322p+53 + -0x1.ffccdap-2
src/math/special/fma.h:177: RN fma(0x1.3c91fa00fd0c7p+1022,0x1.1b6661c0b0303p+2,-0x1.f1f2846b64483p+1023) want 0x1.95eae0d2644d3p+1022 got 0x1.9985d8eaap+1019 ulperr -6240425882943488.000 = -0x1.62ba26p+52 + -0x1.ff0cccp-2
src/math/special/fma.h:178: RN fma(0x1.0979b36d46534p+1022,0x1.12fa205f41f7fp+2,-0x1.a83ecf4544a63p+1023) want 0x1.2420f34e2aa3dp+1022 got -0x1.335a0fe68p+1019 ulperr -5815056616914944.000 = -0x1.4a8c36p+52 + 0x1.ff099ap-2
src/math/special/fma.h:179: RN fma(0x1.4c89df582a599p+1022,0x1.55f3dc473ea8fp+2,-0x1.e35037292ddfp+1023) want 0x1.95109fdbc3771p+1023 got -0x1.afa3b29624p+1022 ulperr -inf = -inf + -0x1.ffca0cp-2
src/math/special/fma.h:180: RN fma(0x1.35ee0a669c4fbp+1022,0x1.2263cb63f386ap+2,-0x1.449218ae35ac7p+1023) want 0x1.7a8ed977d817bp+1023 got 0x1.47da9ddfb8p+1022 ulperr -3775828961787904.000 = -0x1.ad4316p+51 + 0x1.ffd704p-2
src/math/special/fma.h:181: RN fma(0x1.117cc860f61bcp+1022,0x1.440985b25d994p+2,-0x1.d7a7d82000449p+1023) want 0x1.b960b7088e74fp+1022 got 0x1.ddfba372cp+1022 ulperr 643964982001664.000 = 0x1.24d764p+49 + -0x1.ff777ep-2
src/math/special/fma.h:182: RN fma(0x1.1e78a37be320fp+1022,0x1.0db0fce62287bp+2,-0x1.376337da5eb53p+1023) want 0x1.24326b9956dfbp+1023 got -0x1.d2881b3596p+1023 ulperr -inf = -inf + -0x1.ff8b5ep-2
src/math/special/fma.h:183: RN fma(0x1.0c79b5c8331c2p+1022,0x1.0aba6ea746b5p+2,-0x1.c86f1fcaf0741p+1023) want 0x1.9c135bb2cff85p+1021 got -0x1.cc298bacp+1019 ulperr -9273126449840128.000 = -0x1.078eep+53 + 0x1.fe1cc2p-2
src/math/special/fma.h:184: RN fma(0x1.556c4c072f272p+1022,0x1.347758d7d4eb5p+2,-0x1.c6fe4f24b248dp+1023) want 0x1.6fcc9f756df6dp+1023 got -0x1.f6f4c76598p+1022 ulperr -inf = -inf + -0x1.ffc122p-2
src/math/special/fma.h:185: RN fma(-0x1.e8349b891b2fp-1,0x1.4a6dec9b72578p-1,0x1.3b6151ce809ddp-1) want 0x1.3a62fe330b355p-11 got -0x1.d97121p-11 ulperr -13859627535958016.000 = -0x1.89ea1p+53 + -0x1.ff89a4p-2
src/math/special/fma.h:186: RN fma(0x1.2996632ac7d74p-1,-0x1.bb3c58b654d94p-1,0x1.01a6660e64a31p-1) want 0x1.ed045bb956a8ep-15 got -0x1.070d62p-15 ulperr -13300911346548736.000 = -0x1.7a08dep+53 + -0x1.eabe3cp-2
src/math/special/fma.h:187: RN fma(-0x1.c602e894c1df8p-1,0x1.a1c980e7d3f94p-1,0x1.7271244b43386p-1) want -0x1.ba251fe026e5bp-15 got -0x1.af2b6cp-15 ulperr 193081294979072.000 = 0x1.5f367cp+47 + 0x1.fa6bcap-2
src/math/special/fma.h:188: RN fma(-0x1.c84baf47e85cp-1,0x1.770b5149ef2ep-1,0x1.4d80f139320bap-1) want -0x1.79277433b9e23p-10 got 0x1.d4b6fp-11 ulperr 10757822555881472.000 = 0x1.31c176p+53 + 0x1.ffc56ap-2
src/math/special/fma.h:189: RN fma(-0x1.36e667dcf9c6p-1,0x1.2591f82556b88p-1,0x1.2452a0f795f95p-1) want 0x1.c83c8e63c159fp-3 got -0x1.221cccp-12 ulperr -8036166204915712.000 = -0x1.c8cd9cp+52 + -0x1.ffffdcp-2
src/math/special/fma.h:190: RN fma(0x1.88b2cede61e4cp-1,-0x1.71dcab5ad9e9p-3,0x1.32b27fea2ae97p-3) want 0x1.70461909b25e2p-7 got -0x1.affe57fffffffp-17 ulperr -6486162973655040.000 = -0x1.70b218p+52 + -0x1.ffffe6p-2
src/math/special/fma.h:191: RN fma(0x1.8d1e44002c98p-3,-0x1.af9fdfb347834p-1,0x1.e280942fb4146p-4) want -0x1.761ac23896dfdp-5 got 0x1.0bec48p-14 ulperr 6590522089013248.000 = 0x1.76a0b8p+52 + 0x1.ffffdep-2
src/math/special/fma.h:192: RN fma(0x1.236e8cb9492c8p-1,-0x1.d37443a57f1c4p-1,0x1.ca10df801aabcp-4) want -0x1.a1a2cdf0138f9p-2 got 0x1.f090cab7p-5 ulperr 8439088898113536.000 = 0x1.dfb4e8p+52 + 0x1.fff07cp-2
src/math/special/fma.h:193: RN fma(-0x1.6ad943e610fb8p-1,-0x1.cef92a7bb18bcp-1,0x1.f28587d8fb0ep-4) want 0x1.866b5204b9aecp-1 got -0x1.8c9eb9a7p-5 ulperr -7304415983697920.000 = -0x1.9f353ep+52 + -0x1.fff9cep-2
src/math/special/fma.h:194: RN fma(-0x1.60a8569a5d894p-1,-0x1.ca07e29dd171cp-1,0x1.b6c475ace09ecp-4) want 0x1.72549291e2f7ap-1 got -0x1.b6fd181e8p-5 ulperr -6997593720619008.000 = -0x1.8dc464p+52 + -0x1.fff924p-2
src/math/special/fma.h:195: RN fma(0x1.d1962720d678cp-1,-0x1.4548ee45c4084p-1,0x1.f416ab193d75cp-4) want -0x1.d2929879dc853p-2 got 0x1.fc38e6f4p-8 ulperr 8347731722502144.000 = 0x1.da837cp+52 + 0x1.fffe04p-2
src/math/special/fma.h:196: RN fma(-0x1.9ddcb295a7d64p-1,0x1.67fb3a2068a78p-1,0x1.da9cd4597fe0ap-4) want -0x1.cf4f6eb4fc5d8p-2 got 0x1.59da5512p-6 ulperr 8530909930192896.000 = 0x1.e4ed14p+52 + 0x1.fffa98p-2
src/math/special/fma.h:197: RN fma(0x1.c00d16ed45b88p+0,0x1.c787eddda3664p+0,0x1.1e3e6f0cc1802p-5) want 0x1.931b8f379dcc3p+1 got -0x1.63fb63b8p-6 ulperr -7140470639558656.000 = -0x1.95e386p+52 + -0x1.ffff4ep-2
src/math/special/fma.h:198: RN fma(0x1.19c2a2372c184p+0,-0x1.cb506961c19fp+0,0x1.db1abf3f7ba3ap-6) want -0x1.f21c0eab0bc18p+0 got 0x1.a29607ffffff8p-13 ulperr 8763735812341760.000 = 0x1.f22924p+52 + 0x1.fffffcp-2
src/math/special/fma.h:199: RN fma(-0x1.3a263218ccd1cp+0,-0x1.e818d390df27cp+0,0x1.2a81ed71785f5p-5) want 0x1.3025ab0f63925p+1 got -0x1.bfdf0b9cp-6 ulperr -5412168283455488.000 = -0x1.33a56ap+52 + -0x1.ffff2p-2
src/math/special/fma.h:200: RN fma(0x1.b0b041fbaca58p+0,-0x1.9d5f76d178e6p+0,0x1.0215c7bb84cf9p-6) want -0x1.5b52aec7ef4p+1 got 0x1.6be7a78p-7 ulperr 6135177709355008.000 = 0x1.5cbe96p+52 + 0x1.ffffa6p-2
src/math/special/fma.h:201: RN fma(-0x1.377549d9a87f4p+0,-0x1.a13d4a03dd6d8p+0,0x1.f190388bc5cc6p-7) want 0x1.ff83bebbd6fe4p+0 got -0x1.e5a6a44p-9 ulperr -9015347881443328.000 = -0x1.003b4ap+53 + -0x1.ffffc4p-2
src/math/special/fma.h:202: RN fma(0x1.6a726c0762ac8p-1,-0x1.d32f2d30e483cp+0,0x1.f953eb70fbde6p-7) want -0x1.46c61b3070332p+0 got 0x1.e556e47fffffep-11 ulperr 5752835425697792.000 = 0x1.4702c6p+52 + 0x1.fffffp-2
src/math/special/fma.h:203: RN fma(0x1.94cf2509d40cp-1,0x1.721976af6dfbp+0,0x1.f51a456921c3ep-7) want 0x1.28880842acc6p+0 got -0x1.effe1ep-8 ulperr -5250719389057024.000 = -0x1.2a7806p+52 + -0x1.ffff84p-2
src/math/special/fma.h:204: RN fma(0x1.b128eb0ad8728p-1,0x1.7682566a54268p+0,0x1.bd4122a074cafp-8) want 0x1.3e9469530e762p+0 got -0x1.6fe0c7cp-9 ulperr -5617154187591680.000 = -0x1.3f4c5ap+52 + -0x1.ffffd2p-2
src/math/special/fma.h:205: RN fma(0x1.c4ae75976e35cp+0,-0x1.11c329dd1160cp+0,0x1.9993f5e13c9bdp-8) want -0x1.e27d925b07cf1p+0 got 0x1.198edf6p-9 ulperr 8497737213411328.000 = 0x1.e30a5ap+52 + 0x1.ffffdcp-2
src/math/special/fma.h:206: RN fma(-0x1.85f81f88fa3c4p+0,-0x1.17648a494fa18p-1,0x1.37d305113b48p-10) want 0x1.aa367b7490e57p-1 got -0x1.7a59ecffffffep-12 ulperr -7501265072291840.000 = -0x1.aa65c6p+52 + -0x1.fffff4p-2
src/math/special/fma.h:207: RN fma(-0x1.311f2b4319efcp+0,0x1.abbb5272e3d18p-1,0x1.35841b7bdbcfep-10) want -0x1.fd337f24b39ep-1 got 0x1.4cbc317ffffffp-11 ulperr 8963677814259712.000 = 0x1.fd86aep+52 + 0x1.ffffecp-2
src/math/special/fma.h:208: RN fma(0x1.ab94369a9a0dp-1,0x1.9d1e0e0aa3bacp+0,0x1.0a63ca87cfa78p-11) want 0x1.592173ee296b6p+0 got -0x1.fd8043ffffff8p-13 ulperr -6072697209487360.000 = -0x1.59316p+52 + -0x1.fffffcp-2
src/math/special/fma.h:250: RZ fma(0x1p+0,0x1p+0,-0x1p-1074) want 0x1.fffffffffffffp-1 got -0x1.fffffp-43 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p+0
src/math/special/fma.h:251: bad fp exception: RZ fma(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022)=0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:251: RZ fma(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.fffffffffffffp-1022 got 0x0p+0 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x0p+0
src/math/special/fma.h:252: bad fp exception: RZ fma(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022)=0x1.ffffffffffffep-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:252: RZ fma(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.ffffffffffffep-1022 got -0x0p+0 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p+0
src/math/special/fma.h:253: bad fp exception: RZ fma(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:253: RZ fma(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.fffffffffffffp-1022 got -0x0p+0 ulperr 9007198717870080.000 = 0x1.fffffep+52 + 0x0p+0
src/math/special/fma.h:254: bad fp exception: RZ fma(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.ffffffffffffep-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:254: RZ fma(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.ffffffffffffep-1022 got 0x0p+0 ulperr 9007198717870080.000 = 0x1.fffffcp+52 + 0x1p+0
src/math/special/fma.h:255: RZ fma(0x1p-1074,-0x1p-1074,0x1p-1074) want 0x0p+0 got -0x0p+0 ulperr inf = inf + -0x1p+0
src/math/special/fma.h:256: RZ fma(0x1p-1074,-0x1p-1074,-0x1p-1074) want -0x1p-1074 got -0x0p+0 ulperr 1.000 = 0x1p+0 + 0x0p+0
src/math/special/fma.h:257: RZ fma(0x1.0000000000001p+0,0x1p+0,0x1p+53) want 0x1p+53 got 0x1.000008p+12 ulperr -4503599358935040.000 = -0x1.fffffcp+51 + -0x1p-1
src/math/special/fma.h:258: RZ fma(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p+53) want 0x1p+53 got 0x1.ffc02p+10 ulperr -4503599358935040.000 = -0x1.fffffcp+51 + -0x1p-1
src/math/special/fma.h:259: RZ fma(0x1p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp+53) want 0x1.fffffffffffffp+53 got -0x1.ffffep+10 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:260: RZ fma(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep+53) want 0x1.ffffffffffffep+53 got 0x1.ffc02p+10 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:261: RZ fma(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p-52) want 0x1.0000000000001p+0 got -0x1.fffffp-42 ulperr -4503599627370496.000 = -0x1.fffffep+51 + -0x1p-1
src/math/special/fma.h:262: RZ fma(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp-53) want 0x1.0000000000001p+0 got -0x1.fffff8p-41 ulperr -4503599627370496.000 = -0x1.fffffep+51 + -0x1p-1
src/math/special/fma.h:263: RZ fma(0x1.0000000000005p+0,0x1.ffffffffffffbp-1,0x1p-52) want 0x1.0000000000003p+0 got -0x1.8fffff8p-37 ulperr -4503599627370496.000 = -0x1.fffffep+51 + -0x1p-1
src/math/special/fma.h:264: RZ fma(0x1.0000000000006p+0,0x1.ffffffffffffdp-1,0x1p-52) want 0x1.0000000000005p+0 got -0x1.1fffff8p-37 ulperr -4503599627370496.000 = -0x1.fffffep+51 + -0x1p-1
src/math/special/fma.h:283: RZ fma(0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff4p+0 got 0x1.6800008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:284: RZ fma(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1p+0) want 0x1.ffffffffffff8p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:285: RZ fma(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffff6p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:286: RZ fma(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffff4p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:287: RZ fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffff6p+0 got 0x1.f800008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:288: RZ fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffff4p+0 got 0x1.f800008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:289: RZ fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffff6p+0 got 0x1.2000004p-36 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:290: RZ fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffff4p+0 got 0x1.2000004p-36 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:291: RZ fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.fffffffffffffp-1) want 0x1.ffffffffffff6p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:292: RZ fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffff4p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:293: RZ fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff2p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:294: RZ fma(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep-1) want 0x1.fffffffffffffp+0 got -0x1.fffffp-42 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:295: RZ fma(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffp-42 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:296: RZ fma(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.fffffffffffffp-1) want 0x1.fffffffffffffp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:297: RZ fma(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:298: RZ fma(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:299: RZ fma(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1p+0) want 0x1.fffffffffffffp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:300: RZ fma(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:301: RZ fma(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:302: RZ fma(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:303: RZ fma(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:304: RZ fma(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffffdp+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:305: RZ fma(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffbp+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:306: RZ fma(0x1.5872449b765b9p+0,0x1.c9acf91f8de2bp+0,0x1.9265607e4d168p+0) want 0x1.fd190c77c2a67p+1 got -0x1.b3fc37becffffp-4 ulperr -9195828849672192.000 = -0x1.055c74p+53 + -0x1.fffc98p-2
src/math/special/fma.h:307: RZ fma(0x1.81d010b146d0ep+0,0x1.2d3c680dc9071p+0,0x1.a80b69538754cp+0) want 0x1.b7040b44973a6p+1 got 0x1.4d0cb20197p+1 ulperr -1864177136173056.000 = -0x1.a7dd62p+50 + -0x1.0029a2p-1
src/math/special/fma.h:308: RZ fma(0x1.6a44f2252b6a2p+0,0x1.da452a378b832p+0,0x1.1fe2ce329104p+0) want 0x1.df842b6f48b12p+1 got 0x1.12e95c1ba4p+0 ulperr -6017591705337856.000 = -0x1.560f7ap+52 + -0x1.00112ep-1
src/math/special/fma.h:309: RZ fma(0x1.096b1d26463eep+0,0x1.d846d3e34333p+0,0x1.721e3480922b8p+0) want 0x1.ade2909c0269fp+1 got -0x1.a139d9b2bffffp-1 ulperr -9397595675820032.000 = -0x1.0b188p+53 + -0x1.ffe5ecp-2
src/math/special/fma.h:310: RZ fma(0x1.99bd3434c454bp+0,0x1.03cb8e4115bdep+0,0x1.109f107188b08p+0) want 0x1.5837a47d37faep+1 got 0x1.cfdec0c00ap+0 ulperr -1975290892910592.000 = -0x1.c1210ep+50 + -0x1.001cfep-1
src/math/special/fma.h:311: RZ fma(0x1.ba930a0a78ed2p+0,0x1.8c24e8d67f636p+0,0x1.ac49dbfbf8affp+0) want 0x1.164947ae6a5d9p+2 got -0x1.33e3b04ecffffp-2 ulperr -5234191281160192.000 = -0x1.29878p+52 + -0x1.fffb3p-2
src/math/special/fma.h:312: RZ fma(0x1.be224ad773191p+0,0x1.d96b77169731fp+0,0x1.662cfb75d8edep+0) want 0x1.27cd67e720f78p+2 got 0x1.e4711611c78p+1 ulperr -942615600037888.000 = -0x1.aca6e4p+49 + -0x1.001e48p-1
src/math/special/fma.h:313: RZ fma(0x1.59e7a1b0bdb3cp+0,0x1.2decba4d46421p+0,0x1.88f4062e96df5p+0) want 0x1.90749e4794f79p+1 got -0x1.b3c84a9a87fffp-1 ulperr -8961479327875072.000 = -0x1.fd66aep+52 + -0x1.ffe4c4p-2
src/math/special/fma.h:314: RZ fma(0x1.22edf4b4da9a7p+0,0x1.dfa8d65f506cdp+0,0x1.2799208da2fbap+0) want 0x1.a45a1e99ed7a8p+1 got 0x1.a0bdfb8976p-1 ulperr -5562059420860416.000 = -0x1.3c2a9cp+52 + -0x1.000d06p-1
src/math/special/fma.h:315: RZ fma(0x1.ad5b991a2a279p+0,0x1.f02fd26706024p+0,0x1.831cdd5c8797cp+0) want 0x1.30d3a2ac90a6p+2 got 0x1.c7c15e1c82p+1 ulperr -1353701616779264.000 = -0x1.33cbccp+50 + -0x1.001c7cp-1
src/math/special/fma.h:316: RZ fma(0x1.531f9620e764ap+0,0x1.cad61b54d4425p+0,0x1.df817cae8a9afp+0) want 0x1.0fd4e7f8671dcp+2 got 0x1.8e74e26059p+1 ulperr -1277252004216832.000 = -0x1.2269d8p+50 + -0x1.0018e8p-1
src/math/special/fma.h:317: RZ fma(0x1.629a5ad79494fp+0,0x1.049e58693f4c4p+0,0x1.45b0109e4d00cp+0) want 0x1.5758154e14965p+1 got -0x1.01173c9c1ffffp-3 ulperr -6322846842224640.000 = -0x1.676986p+52 + -0x1.fffbfcp-2
src/math/special/fma.h:318: RZ fma(0x1.2f52b53f9240ap+0,0x1.1d5c686dbb0dap+0,0x1.6da3e392a4fd4p+0) want 0x1.5fe03a6795912p+1 got 0x1.5bdb7d9084p+0 ulperr -3130480060792832.000 = -0x1.63e4f4p+51 + -0x1.0015bep-1
src/math/special/fma.h:319: RZ fma(0x1.058667552b49ep+0,0x1.23307bacc1c42p+0,0x1.5b059b47cd8f5p+0) want 0x1.423f752486d13p+1 got -0x1.4bfb042743fffp+0 ulperr -8589175993401344.000 = -0x1.e83cf4p+52 + -0x1.ffd68p-2
src/math/special/fma.h:320: RZ fma(0x1.a717d95337ed8p+0,0x1.2b1c37846aaadp+0,0x1.be65672f885b1p+0) want 0x1.d65e72303c075p+1 got -0x1.7e0573ec03fffp+1 ulperr -14995406941323264.000 = -0x1.aa31fp+53 + -0x1.ffa07ep-2
src/math/special/fma.h:321: RZ fma(0x1.deb79287b3d32p+0,0x1.62776b829babap+0,0x1.67daf18bd2eb1p+0) want 0x1.ff5a0d45c69d6p+1 got 0x1.ad881652ap-3 ulperr -8523519902089216.000 = -0x1.e48188p+52 + -0x1.00035cp-1
src/math/special/fma.h:322: RZ fma(0x1.fbf12d3a6de91p+0,0x1.879fe6124f11p+0,0x1.9f3f1247a8641p+0) want 0x1.2a126c6980018p+2 got 0x1.45e3d61a84p+2 ulperr 489379747332096.000 = 0x1.bd169ap+48 + -0x1.0028bcp-1
src/math/special/fma.h:323: RZ fma(0x1.c589628460e01p+0,0x1.e1bec1c797533p+0,0x1.349f30cdb84bbp+0) want 0x1.2286118b6f6e5p+2 got -0x1.8e9d95e0667ffp+1 ulperr -8617206560587776.000 = -0x1.e9d4dap+52 + -0x1.ffce2cp-2
src/math/special/fma.h:324: RZ fma(0x1.46fd6c2c924ebp+0,0x1.65e2f02e730a1p+0,0x1.37739d2751098p+0) want 0x1.804a71c1f1272p+1 got 0x1.855d7947cbp+0 ulperr -3335623268106240.000 = -0x1.7b3768p+51 + -0x1.001856p-1
src/math/special/fma.h:325: RZ fma(0x1.f99e595ae11fdp+0,0x1.bd33d9a1d81bp+0,0x1.932a2a2e244c1p+0) want 0x1.409e34f8f2f89p+2 got -0x1.7a49668943fffp+2 ulperr -12295260860317696.000 = -0x1.5d73cap+53 + -0x1.ffa16ep-2
src/math/special/fma.h:326: RZ fma(0x1.59ea1e56bfe55p+0,0x1.6f46b7d412a44p+0,0x1.80f2bc9a32cc3p+0) want 0x1.b89c7640e32ffp+1 got -0x1.ca180bfb5ffffp-3 ulperr -8254993178034176.000 = -0x1.d53df4p+52 + -0x1.fff8d8p-2
src/math/special/fma.h:327: RZ fma(0x1.61490fcb44129p+0,0x1.0038ec4fc35c2p+0,0x1.df7436ed7a7b7p+0) want 0x1.a085ea68d05cfp+1 got -0x1.5ed2c690f6fffp+1 ulperr -13499301254660096.000 = -0x1.7fac56p+53 + -0x1.ffa84cp-2
src/math/special/fma.h:328: RZ fma(0x1.d41b98788502bp+0,0x1.1a7b77843aca6p+0,0x1.05be891837d36p+0) want 0x1.8523596ceced9p+1 got -0x1.48c8fc403bfffp-1 ulperr -8291801584631808.000 = -0x1.d75596p+52 + -0x1.ffeb74p-2
src/math/special/fma.h:329: RZ fma(0x1.3153cf6f69af9p+0,0x1.aaa947e38e57ap+0,0x1.8519f9b590645p+0) want 0x1.c0fcab7b46368p+1 got 0x1.25f4f4bd5p-3 ulperr -7575453653008384.000 = -0x1.ae9d5ap+52 + -0x1.00024cp-1
src/math/special/fma.h:330: RZ fma(0x1.c25a1f73581aap+0,0x1.0a51ffca372ap+0,0x1.0c77e3ebac5f3p+0) want 0x1.707ce48c7d72dp+1 got -0x1.3261c9a0dffffp+1 ulperr -11872435288670208.000 = -0x1.516f54p+53 + -0x1.ffb368p-2
src/math/special/fma.h:331: RZ fma(0x1.829c2cde44b7p+0,0x1.f692e86d8cb36p+0,0x1.455e72d264bfp+0) want 0x1.0f16a3b8b3f97p+2 got -0x1.684386465ffffp+0 ulperr -6353494655107072.000 = -0x1.692782p+52 + -0x1.ffe97cp-2
src/math/special/fma.h:332: RZ fma(0x1.94729588dcc69p+0,0x1.c3bb794c6edf8p+0,0x1.9da4e94d262d2p+0) want 0x1.19d4bd84d9fd2p+2 got 0x1.e1b9a2757p-1 ulperr -3898698849320960.000 = -0x1.bb3b1p+51 + -0x1.000786p-1
src/math/special/fma.h:333: RZ fma(0x1.e6a5e7e39c3d5p+0,0x1.1b69af2bdd978p+0,0x1.e7ef1eafa119cp+0) want 0x1.00ac5b44c9f31p+2 got -0x1.6777d5d393fffp+1 ulperr -7677358731427840.000 = -0x1.b46844p+52 + -0x1.ffd312p-2
src/math/special/fma.h:334: bad fp exception: RZ fma(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022)=0x1.b594d0e4368efp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:334: RZ fma(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022) want 0x1.b594d0e4368efp-1022 got -0x1.9dedc9560fffep-1023 ulperr -11338968138252288.000 = -0x1.4245d8p+53 + -0x1.ffcc42p-2
src/math/special/fma.h:335: RZ fma(0x1.022db53c98d14p-1022,0x1.21157eef74848p-2,0x1.2f880432b1bc1p-1022) want 0x1.786ad60a02b3dp-1022 got -0x1.150255ac97fffp-1022 ulperr -11495198647386112.000 = -0x1.46b692p+53 + -0x1.ffbacp-2
src/math/special/fma.h:336: bad fp exception: RZ fma(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022)=0x1.cbb085199a3f5p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:336: RZ fma(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022) want 0x1.cbb085199a3f5p-1022 got -0x1.6ed115da2f7fep-1023 ulperr -11313497908445184.000 = -0x1.418c86p+53 + -0x1.ffd226p-2
src/math/special/fma.h:337: RZ fma(0x1.adbc3a9d816dep-1022,0x1.e039d4431e3cdp-2,0x1.93ceef6fe18a2p-1022) want 0x1.2eabb7dc0e2fp-1021 got 0x1.ef7b6794e3p-1023 ulperr -3145487213395968.000 = -0x1.6599b8p+51 + -0x1.000f7cp-1
src/math/special/fma.h:338: RZ fma(0x1.645aa5c2df3afp-1022,0x1.649edfcad854fp-2,0x1.8b43e0bbaeb01p-1022) want 0x1.03af571d2b504p-1021 got 0x1.0ce86163c02p-1021 ulperr 162249436037120.000 = 0x1.272148p+47 + -0x1.00219ep-1
src/math/special/fma.h:339: bad fp exception: RZ fma(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022)=0x1.ad9ce7fcefa3fp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:339: RZ fma(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022) want 0x1.ad9ce7fcefa3fp-1022 got -0x1.12bc4931e5ff8p-1025 ulperr -8161979755659264.000 = -0x1.cff46ep+52 + -0x1.fff76ap-2
src/math/special/fma.h:340: RZ fma(0x1.8ee3feb00c3e7p-1022,0x1.53bd9353313bcp-2,0x1.5501b57dc3b6fp-1022) want 0x1.d9598906f0bb3p-1022 got -0x1.4660b83f56fffp-1022 ulperr -14068955652030464.000 = -0x1.8fdd1ep+53 + -0x1.ffae68p-2
src/math/special/fma.h:341: RZ fma(0x1.161225cfa61e2p-1022,0x1.b6dd69a0af5bp-2,0x1.924ffc3ead5c3p-1022) want 0x1.04be6fc25367bp-1021 got -0x1.f3ab56daa7fffp-1022 ulperr -8982192344530944.000 = -0x1.fe9418p+52 + -0x1.ffc18ap-2
src/math/special/fma.h:342: bad fp exception: RZ fma(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022)=0x1.70b6c3169f043p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:342: RZ fma(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022) want 0x1.70b6c3169f043p-1022 got -0x1.a779baefbe7fep-1023 ulperr -10211413595258880.000 = -0x1.2239cep+53 + -0x1.ffcb1p-2
src/math/special/fma.h:343: RZ fma(0x1.ce0e2ea55040ep-1022,0x1.ce5a55fa3828dp-2,0x1.f2f444d50ce59p-1022) want 0x1.61ca36f5a8a79p-1021 got -0x1.173f0cea127ffp-1022 ulperr -8680213730820096.000 = -0x1.ed69bap+52 + -0x1.ffdd18p-2
src/math/special/fma.h:344: bad fp exception: RZ fma(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022)=0x1.1440cf1c105ebp-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:344: RZ fma(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022) want 0x1.1440cf1c105ebp-1021 got -0x1.f88fda5ffffp-1030 ulperr -4877233327964160.000 = -0x1.153d14p+52 + -0x1.ffffcp-2
src/math/special/fma.h:345: bad fp exception: RZ fma(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022)=0x1.1186e1f77012dp-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:345: RZ fma(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022) want 0x1.1186e1f77012dp-1021 got -0x1.2ffba526fbff8p-1025 ulperr -5146168610783232.000 = -0x1.24869ap+52 + -0x1.fffb4p-2
src/math/special/fma.h:346: bad fp exception: RZ fma(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022)=0x1.8d86310bad175p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:346: RZ fma(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022) want 0x1.8d86310bad175p-1022 got -0x1.1b755c367f7fep-1023 ulperr -9486645380251648.000 = -0x1.0da06cp+53 + -0x1.ffdc92p-2
src/math/special/fma.h:347: RZ fma(0x1.fb3391a4b1d23p-1022,0x1.4d8705b057caep-2,0x1.d026cb6dae73bp-1022) want 0x1.3aad18b424c67p-1021 got -0x1.0a1784c7c6bffp-1021 ulperr -10216978799132672.000 = -0x1.22624cp+53 + -0x1.ffbd7ap-2
src/math/special/fma.h:348: bad fp exception: RZ fma(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022)=0x1.c0048fd33a417p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:348: RZ fma(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022) want 0x1.c0048fd33a417p-1022 got -0x1.d026e457f0ffcp-1024 ulperr -9922974329077760.000 = -0x1.1a0722p+53 + -0x1.ffe2fep-2
src/math/special/fma.h:349: RZ fma(0x1.aa9eff070281cp-1022,0x1.fab05661b48ebp-2,0x1.cbe2af6c69c6ep-1022) want 0x1.4f7ddbe122764p-1021 got 0x1.9e529858dap-1023 ulperr -4079820841418752.000 = -0x1.cfd268p+51 + -0x1.000cf2p-1
src/math/special/fma.h:350: bad fp exception: RZ fma(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022)=0x1.e0e762ee2e7c5p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:350: RZ fma(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022) want 0x1.e0e762ee2e7c5p-1022 got -0x1.e2fe0f96ebffep-1023 ulperr -12708595627982848.000 = -0x1.693332p+53 + -0x1.ffc3ap-2
src/math/special/fma.h:351: RZ fma(0x1.4dab43918a9a8p-1022,0x1.ed667442b4751p-2,0x1.3f25f82e02e3ep-1022) want 0x1.dfec0ee732dcap-1022 got 0x1.6a41c4d18ap-1022 ulperr -2069987942465536.000 = -0x1.d6a926p+50 + -0x1.002d48p-1
src/math/special/fma.h:352: RZ fma(0x1.7943735951931p-1022,0x1.fa6a357c5c9ddp-2,0x1.0bed44b0b71b4p-1022) want 0x1.c6803a6059abep-1022 got 0x1.0e970cce134p-1022 ulperr -3235393763803136.000 = -0x1.6fd258p+51 + -0x1.0021d2p-1
src/math/special/fma.h:353: bad fp exception: RZ fma(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022)=0x1.8640492c45959p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:353: RZ fma(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022) want 0x1.8640492c45959p-1022 got -0x1.3271a1b37ffep-1027 ulperr -7033839486500864.000 = -0x1.8fd3d4p+52 + -0x1.fffd9cp-2
src/math/special/fma.h:354: RZ fma(0x1.f52172c56bdf5p-1022,0x1.672b2de422734p-2,0x1.7bc5d708e5a34p-1022) want 0x1.15c5b95145cc6p-1021 got 0x1.3cf4f71d188p-1021 ulperr 689341647028224.000 = 0x1.3979eep+49 + -0x1.00279ep-1
src/math/special/fma.h:355: bad fp exception: RZ fma(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022)=0x1.e7fa0dd76fbefp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:355: RZ fma(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022) want 0x1.e7fa0dd76fbefp-1022 got -0x1.60a5d541afffcp-1024 ulperr -10135538703007744.000 = -0x1.2011bep+53 + -0x1.ffe9f6p-2
src/math/special/fma.h:356: bad fp exception: RZ fma(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022)=0x1.b63a7f56fce1fp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:356: RZ fma(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022) want 0x1.b63a7f56fce1fp-1022 got -0x1.497a9bc51fffcp-1024 ulperr -9158460486713344.000 = -0x1.044c9p+53 + -0x1.ffeb68p-2
src/math/special/fma.h:357: RZ fma(0x1.f73d5f4e81fd8p-1022,0x1.7ccff2642124ap-2,0x1.e7d836a0c8308p-1022) want 0x1.517f1763126d3p-1021 got -0x1.06939f3371fffp-1021 ulperr -10556596895612928.000 = -0x1.2c0958p+53 + -0x1.ffbe5cp-2
src/math/special/fma.h:358: RZ fma(0x1.b4328925969fbp-1022,0x1.8fa02832a22d5p-2,0x1.2084598e2f8c6p-1022) want 0x1.cabf43838dc51p-1022 got -0x1.7c61d65f0a3ffp-1022 ulperr -14762118276448256.000 = -0x1.a3908ap+53 + -0x1.ffa0e8p-2
src/math/special/fma.h:359: RZ fma(0x1.66ee60a92676fp-1022,0x1.eddd2e7681ce4p-2,0x1.b81d57daeb3a7p-1022) want 0x1.329c918ffb682p-1021 got 0x1.cd379885b8p-1025 ulperr -4886854591578112.000 = -0x1.15c916p+52 + -0x1.00039ap-1
src/math/special/fma.h:360: RZ fma(0x1.ff2737585895dp-1022,0x1.fb4bf3828ae4ap-2,0x1.4a866847740fp-1022) want 0x1.23e07e4dbbeaap-1021 got 0x1.46c53f7571p-1023 ulperr -3697601232764928.000 = -0x1.a45e5ap+51 + -0x1.000a36p-1
src/math/special/fma.h:361: RZ fma(0x1.5e2008d269a86p-1022,0x1.507bbbe4d78eep-2,0x1.6220c6f83f636p-1022) want 0x1.d52d9874f1c74p-1022 got 0x1.eda0503c4ap-1023 ulperr -3911886277967872.000 = -0x1.bcbadep+51 + -0x1.001edap-1
src/math/special/fma.h:362: bad fp exception: RZ fma(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022)=0x1.9864925e2fb0fp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:362: RZ fma(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022) want 0x1.9864925e2fb0fp-1022 got -0x1.53ae580e8bff8p-1025 ulperr -7931489261977600.000 = -0x1.c2da5ap+52 + -0x1.fff562p-2
src/math/special/fma.h:363: RZ fma(0x1.7b353b81e793dp-1022,0x1.82b426f874c6dp-2,0x1.d92b19d21fd5cp-1022) want 0x1.342fb0c544a78p-1021 got 0x1.2af4c8aebe4p-1022 ulperr -2792024021401600.000 = -0x1.3d6a96p+51 + -0x1.0012bp-1
src/math/special/fma.h:364: RZ fma(0x1.5be667823370ap-1022,0x1.a8a99b163869bp-2,0x1.95456b68dc3bcp-1022) want 0x1.12c638de03c7p-1021 got 0x1.49af7fc787p-1023 ulperr -3383908095754240.000 = -0x1.80b4aep+51 + -0x1.000a4ep-1
src/math/special/fma.h:365: RZ fma(0x1.17b0fc6c850e5p-1022,0x1.d1d0a4853c315p-2,0x1.36b79f7c0c24p-1022) want 0x1.b5f2baff5635cp-1022 got 0x1.6a19304724p-1026 ulperr -7306333686595584.000 = -0x1.9f5124p+52 + -0x1.0002d4p-1
src/math/special/fma.h:366: RZ fma(0x1.bd97819bacfd8p-1022,0x1.2c25f267ba4eep-2,0x1.804b5204a3f3ap-1022) want 0x1.01739c190fd96p-1021 got 0x1.b9e166e6b4p-1022 ulperr -642314640818176.000 = -0x1.241742p+49 + -0x1.001b9ep-1
src/math/special/fma.h:367: RZ fma(0x1.596577053873dp-1022,0x1.3562ab2d29949p-2,0x1.b3f1ee75db6e7p-1022) want 0x1.0e268a498009ap-1021 got 0x1.e8136bc1594p-1022 ulperr -459377991483392.000 = -0x1.a1cd44p+48 + -0x1.001e82p-1
src/math/special/fma.h:368: RZ fma(0x1.3c7a68cf0f7b3p-1022,0x1.9a55c15b167bdp-2,0x1.7635b7b163c07p-1022) want 0x1.f5073b93b7b8p-1022 got 0x1.75f9a972138p-1023 ulperr -5524660993130496.000 = -0x1.3a0a64p+52 + -0x1.00176p-1
src/math/special/fma.h:369: RZ fma(0x1.5825164bc4068p-1022,0x1.dcbb6e5ff3245p-2,0x1.52fc3be0e84dap-1022) want 0x1.f334771c2dcfap-1022 got 0x1.2b86ba6b02p-1022 ulperr -3512783958179840.000 = -0x1.8f5b76p+51 + -0x1.00257p-1
src/math/special/fma.h:370: RZ fma(0x1.139ea77b760ecp+1022,0x1.9b25f2fd017eap+2,-0x1.bc16788922b6fp+1023) want 0x1.b93aac527380ep+1023 got 0x1.c3ec4f2eep+1022 ulperr -3787028357447680.000 = -0x1.ae8906p+51 + -0x1.001c3ep-1
src/math/special/fma.h:371: RZ fma(0x1.0e6f9c1657d7cp+1022,0x1.4d5c6b55ab5f1p+2,-0x1.e027dd5742e2cp+1023) want 0x1.c0538372b4bbep+1022 got 0x1.54dede6dep+1021 ulperr -4888708943708160.000 = -0x1.15e412p+52 + -0x1.00154ep-1
src/math/special/fma.h:372: RZ fma(0x1.1182524fa411cp+1022,0x1.a3dba56842d19p+2,-0x1.c1ad59474d71fp+1023) want 0x1.bf78969300a76p+1023 got 0x1.8651491efp+1022 ulperr -4438724683235328.000 = -0x1.f89fe2p+51 + -0x1.001866p-1
src/math/special/fma.h:373: RZ fma(0x1.1cbf4fb8ec82p+1022,0x1.5e32019a84fbbp+2,-0x1.985af08f32edep+1023) want 0x1.72af6bbad4a28p+1023 got 0x1.a68c1c1ecp+1023 ulperr 912367084896256.000 = 0x1.9ee582p+49 + -0x1.0034d2p-1
src/math/special/fma.h:374: RZ fma(0x1.311e25c6db346p+1022,0x1.4e30db6c4b51dp+2,-0x1.7681f7a9786a7p+1023) want 0x1.a61d29434fc13p+1023 got -0x1.791d1988fffffp+1017 ulperr -7529566222417920.000 = -0x1.ac019ap+52 + -0x1.fffe86p-2
src/math/special/fma.h:375: RZ fma(0x1.1201cf577052fp+1022,0x1.59730b2db7a16p+2,-0x1.56f1a64a078d5p+1023) want 0x1.8c8d801df34d9p+1023 got -0x1.3048609fd7fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ffd9f6p-2
src/math/special/fma.h:376: RZ fma(0x1.3e52335b76e81p+1022,0x1.4dbd56f857479p+2,-0x1.509340c11bd2ep+1023) want 0x1.ed6576837f653p+1023 got -0x1.e498d5441bfffp+1022 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ffc36cp-2
src/math/special/fma.h:377: RZ fma(0x1.18566b4f843cbp+1022,0x1.444fba10eaf29p+2,-0x1.f927beae57f0ap+1023) want 0x1.9a433b9796559p+1022 got 0x1.a048d2820cp+1022 ulperr 105937222238208.000 = 0x1.8165bap+46 + -0x1.ff6812p-2
src/math/special/fma.h:378: RZ fma(0x1.3fbe544fe1be8p+1022,0x1.2d2a5fda03639p+2,-0x1.007407dbfd03cp+1023) want 0x1.efdb644b613e5p+1023 got -0x1.e14223655ffffp+1022 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ffc3d8p-2
src/math/special/fma.h:379: RZ fma(0x1.263a0d3bc2e4p+1022,0x1.4cc198adbc651p+2,-0x1.734b1c1f7fdb8p+1023) want 0x1.899878afc0fa2p+1023 got 0x1.a13620448p+1023 ulperr 415454199808000.000 = 0x1.79da78p+48 + -0x1.003426p-1
src/math/special/fma.h:380: RZ fma(0x1.5bf4aec8efc8ep+1022,0x1.555f0341516c9p+2,-0x1.c706408acd14cp+1023) want 0x1.d8f5e18b868bcp+1023 got 0x1.3e5679fdf8p+1022 ulperr -5520279589617664.000 = -0x1.39caa2p+52 + -0x1.0013e6p-1
src/math/special/fma.h:381: RZ fma(0x1.1e57f1af78279p+1022,0x1.34bc0c7f082b3p+2,-0x1.497b92c1365edp+1023) want 0x1.692cb7ec68a93p+1023 got -0x1.c0a1f29b27fffp+1021 ulperr -8326959113175040.000 = -0x1.d95532p+52 + -0x1.ffe3f6p-2
src/math/special/fma.h:382: RZ fma(0x1.1d9824cd73511p+1022,0x1.1d557ddfe47ffp+2,-0x1.556cdb1d20a72p+1023) want 0x1.2736a6b6e35f2p+1023 got 0x1.bc6f9c9778p+1021 ulperr -3238800209739776.000 = -0x1.70357cp+51 + -0x1.000de4p-1
src/math/special/fma.h:383: RZ fma(0x1.1ff85a24aff31p+1022,0x1.39ab374b2680dp+2,-0x1.35e6b07b651b8p+1023) want 0x1.8bc7ce208708p+1023 got 0x1.84b319bafap+1023 ulperr -124568110891008.000 = -0x1.c52d16p+46 + -0x1.003096p-1
src/math/special/fma.h:384: RZ fma(0x1.0449b3965227ep+1022,0x1.4430d4441f9f2p+2,-0x1.a6966c96307ep+1023) want 0x1.d94eda8c81771p+1022 got -0x1.992ed6b71ffffp+1021 ulperr -11925733685329920.000 = -0x1.52f32p+53 + -0x1.ffccdap-2
src/math/special/fma.h:385: RZ fma(0x1.3c91fa00fd0c7p+1022,0x1.1b6661c0b0303p+2,-0x1.f1f2846b64483p+1023) want 0x1.95eae0d2644d3p+1022 got 0x1.9985d8eaap+1019 ulperr -6240425346072576.000 = -0x1.62ba22p+52 + -0x1.ff0cccp-2
src/math/special/fma.h:386: RZ fma(0x1.0979b36d46534p+1022,0x1.12fa205f41f7fp+2,-0x1.a83ecf4544a63p+1023) want 0x1.2420f34e2aa3cp+1022 got -0x1.335a0fe67ffffp+1019 ulperr -5815056080044032.000 = -0x1.4a8c32p+52 + -0x1.007b32p-1
src/math/special/fma.h:387: RZ fma(0x1.4c89df582a599p+1022,0x1.55f3dc473ea8fp+2,-0x1.e35037292ddfp+1023) want 0x1.95109fdbc3771p+1023 got -0x1.afa3b29623fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ffca0cp-2
src/math/special/fma.h:388: RZ fma(0x1.35ee0a669c4fbp+1022,0x1.2263cb63f386ap+2,-0x1.449218ae35ac7p+1023) want 0x1.7a8ed977d817ap+1023 got 0x1.47da9ddfb8p+1022 ulperr -3775828693352448.000 = -0x1.ad4312p+51 + -0x1.00147ep-1
src/math/special/fma.h:389: RZ fma(0x1.117cc860f61bcp+1022,0x1.440985b25d994p+2,-0x1.d7a7d82000449p+1023) want 0x1.b960b7088e74fp+1022 got 0x1.ddfba372cp+1022 ulperr 643964914892800.000 = 0x1.24d762p+49 + -0x1.ff777ep-2
src/math/special/fma.h:390: RZ fma(0x1.1e78a37be320fp+1022,0x1.0db0fce62287bp+2,-0x1.376337da5eb53p+1023) want 0x1.24326b9956dfbp+1023 got -0x1.d2881b3595fffp+1023 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ff8b5ep-2
src/math/special/fma.h:391: RZ fma(0x1.0c79b5c8331c2p+1022,0x1.0aba6ea746b5p+2,-0x1.c86f1fcaf0741p+1023) want 0x1.9c135bb2cff84p+1021 got -0x1.cc298babfffffp+1019 ulperr -9273125376098304.000 = -0x1.078edcp+53 + -0x1.00f19ep-1
src/math/special/fma.h:392: RZ fma(0x1.556c4c072f272p+1022,0x1.347758d7d4eb5p+2,-0x1.c6fe4f24b248dp+1023) want 0x1.6fcc9f756df6dp+1023 got -0x1.f6f4c76597fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ffc122p-2
src/math/special/fma.h:393: RZ fma(-0x1.e8349b891b2fp-1,0x1.4a6dec9b72578p-1,0x1.3b6151ce809ddp-1) want 0x1.3a62fe330b355p-11 got -0x1.d97120fffffffp-11 ulperr -13859626462216192.000 = -0x1.89ea0cp+53 + -0x1.ff89a4p-2
src/math/special/fma.h:394: RZ fma(0x1.2996632ac7d74p-1,-0x1.bb3c58b654d94p-1,0x1.01a6660e64a31p-1) want 0x1.ed045bb956a8ep-15 got -0x1.070d61fffffffp-15 ulperr -13300911346548736.000 = -0x1.7a08dcp+53 + -0x1.eabe3cp-2
src/math/special/fma.h:395: RZ fma(-0x1.c602e894c1df8p-1,0x1.a1c980e7d3f94p-1,0x1.7271244b43386p-1) want -0x1.ba251fe026e5bp-15 got -0x1.af2b6cp-15 ulperr 193081294979072.000 = 0x1.5f367ap+47 + 0x1.fa6bcap-2
src/math/special/fma.h:396: RZ fma(-0x1.c84baf47e85cp-1,0x1.770b5149ef2ep-1,0x1.4d80f139320bap-1) want -0x1.79277433b9e23p-10 got 0x1.d4b6effffffffp-11 ulperr 10757822555881472.000 = 0x1.31c174p+53 + 0x1.ffc56ap-2
src/math/special/fma.h:397: RZ fma(-0x1.36e667dcf9c6p-1,0x1.2591f82556b88p-1,0x1.2452a0f795f95p-1) want 0x1.c83c8e63c159fp-3 got -0x1.221ccbfffffffp-12 ulperr -8036166204915712.000 = -0x1.c8cd9ap+52 + -0x1.ffffdcp-2
src/math/special/fma.h:398: RZ fma(0x1.88b2cede61e4cp-1,-0x1.71dcab5ad9e9p-3,0x1.32b27fea2ae97p-3) want 0x1.70461909b25e2p-7 got -0x1.affe57fffffffp-17 ulperr -6486162973655040.000 = -0x1.70b216p+52 + -0x1.ffffe6p-2
src/math/special/fma.h:399: RZ fma(0x1.8d1e44002c98p-3,-0x1.af9fdfb347834p-1,0x1.e280942fb4146p-4) want -0x1.761ac23896dfdp-5 got 0x1.0bec47fffffffp-14 ulperr 6590522089013248.000 = 0x1.76a0b6p+52 + 0x1.ffffdep-2
src/math/special/fma.h:400: RZ fma(0x1.236e8cb9492c8p-1,-0x1.d37443a57f1c4p-1,0x1.ca10df801aabcp-4) want -0x1.a1a2cdf0138f9p-2 got 0x1.f090cab6fffffp-5 ulperr 8439088361242624.000 = 0x1.dfb4e4p+52 + 0x1.fff07cp-2
src/math/special/fma.h:401: RZ fma(-0x1.6ad943e610fb8p-1,-0x1.cef92a7bb18bcp-1,0x1.f28587d8fb0ep-4) want 0x1.866b5204b9aecp-1 got -0x1.8c9eb9a6fffffp-5 ulperr -7304415446827008.000 = -0x1.9f353ap+52 + -0x1.fff9cep-2
src/math/special/fma.h:402: RZ fma(-0x1.60a8569a5d894p-1,-0x1.ca07e29dd171cp-1,0x1.b6c475ace09ecp-4) want 0x1.72549291e2f7ap-1 got -0x1.b6fd181e7ffffp-5 ulperr -6997593720619008.000 = -0x1.8dc462p+52 + -0x1.fff924p-2
src/math/special/fma.h:403: RZ fma(0x1.d1962720d678cp-1,-0x1.4548ee45c4084p-1,0x1.f416ab193d75cp-4) want -0x1.d2929879dc853p-2 got 0x1.fc38e6f3fffffp-8 ulperr 8347731722502144.000 = 0x1.da837ap+52 + 0x1.fffe04p-2
src/math/special/fma.h:404: RZ fma(-0x1.9ddcb295a7d64p-1,0x1.67fb3a2068a78p-1,0x1.da9cd4597fe0ap-4) want -0x1.cf4f6eb4fc5d8p-2 got 0x1.59da5511fffffp-6 ulperr 8530909930192896.000 = 0x1.e4ed12p+52 + 0x1.fffa98p-2
src/math/special/fma.h:405: RZ fma(0x1.c00d16ed45b88p+0,0x1.c787eddda3664p+0,0x1.1e3e6f0cc1802p-5) want 0x1.931b8f379dcc3p+1 got -0x1.63fb63b7fffffp-6 ulperr -7140470102687744.000 = -0x1.95e382p+52 + -0x1.ffff4ep-2
src/math/special/fma.h:406: RZ fma(0x1.19c2a2372c184p+0,-0x1.cb506961c19fp+0,0x1.db1abf3f7ba3ap-6) want -0x1.f21c0eab0bc18p+0 got 0x1.a29607ffffff8p-13 ulperr 8763735275470848.000 = 0x1.f2292p+52 + 0x1.fffffcp-2
src/math/special/fma.h:407: RZ fma(-0x1.3a263218ccd1cp+0,-0x1.e818d390df27cp+0,0x1.2a81ed71785f5p-5) want 0x1.3025ab0f63925p+1 got -0x1.bfdf0b9bfffffp-6 ulperr -5412167746584576.000 = -0x1.33a566p+52 + -0x1.ffff2p-2
src/math/special/fma.h:408: RZ fma(0x1.b0b041fbaca58p+0,-0x1.9d5f76d178e6p+0,0x1.0215c7bb84cf9p-6) want -0x1.5b52aec7ef4p+1 got 0x1.6be7a77ffffffp-7 ulperr 6135177709355008.000 = 0x1.5cbe94p+52 + 0x1.ffffa6p-2
src/math/special/fma.h:409: RZ fma(-0x1.377549d9a87f4p+0,-0x1.a13d4a03dd6d8p+0,0x1.f190388bc5cc6p-7) want 0x1.ff83bebbd6fe4p+0 got -0x1.e5a6a43ffffffp-9 ulperr -9015346807701504.000 = -0x1.003b46p+53 + -0x1.ffffc4p-2
src/math/special/fma.h:410: RZ fma(0x1.6a726c0762ac8p-1,-0x1.d32f2d30e483cp+0,0x1.f953eb70fbde6p-7) want -0x1.46c61b3070332p+0 got 0x1.e556e47fffffep-11 ulperr 5752835425697792.000 = 0x1.4702c4p+52 + 0x1.fffffp-2
src/math/special/fma.h:411: RZ fma(0x1.94cf2509d40cp-1,0x1.721976af6dfbp+0,0x1.f51a456921c3ep-7) want 0x1.28880842acc6p+0 got -0x1.effe1dfffffffp-8 ulperr -5250719389057024.000 = -0x1.2a7804p+52 + -0x1.ffff84p-2
src/math/special/fma.h:412: RZ fma(0x1.b128eb0ad8728p-1,0x1.7682566a54268p+0,0x1.bd4122a074cafp-8) want 0x1.3e9469530e762p+0 got -0x1.6fe0c7bffffffp-9 ulperr -5617153650720768.000 = -0x1.3f4c56p+52 + -0x1.ffffd2p-2
src/math/special/fma.h:413: RZ fma(0x1.c4ae75976e35cp+0,-0x1.11c329dd1160cp+0,0x1.9993f5e13c9bdp-8) want -0x1.e27d925b07cf1p+0 got 0x1.198edf5ffffffp-9 ulperr 8497736676540416.000 = 0x1.e30a56p+52 + 0x1.ffffdcp-2
src/math/special/fma.h:414: RZ fma(-0x1.85f81f88fa3c4p+0,-0x1.17648a494fa18p-1,0x1.37d305113b48p-10) want 0x1.aa367b7490e57p-1 got -0x1.7a59ecffffffep-12 ulperr -7501265072291840.000 = -0x1.aa65c4p+52 + -0x1.fffff4p-2
src/math/special/fma.h:415: RZ fma(-0x1.311f2b4319efcp+0,0x1.abbb5272e3d18p-1,0x1.35841b7bdbcfep-10) want -0x1.fd337f24b39ep-1 got 0x1.4cbc317ffffffp-11 ulperr 8963677814259712.000 = 0x1.fd86acp+52 + 0x1.ffffecp-2
src/math/special/fma.h:416: RZ fma(0x1.ab94369a9a0dp-1,0x1.9d1e0e0aa3bacp+0,0x1.0a63ca87cfa78p-11) want 0x1.592173ee296b6p+0 got -0x1.fd8043ffffff8p-13 ulperr -6072696672616448.000 = -0x1.59315cp+52 + -0x1.fffffcp-2
src/math/special/fma.h:458: RD fma(0x1p+0,0x1p+0,-0x1p-1074) want 0x1.fffffffffffffp-1 got -0x1.fffffp-43 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p+0
src/math/special/fma.h:459: bad fp exception: RD fma(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022)=0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:459: RD fma(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.fffffffffffffp-1022 got 0x0p+0 ulperr -9007199254740992.000 = -0x1p+53 + 0x0p+0
src/math/special/fma.h:460: bad fp exception: RD fma(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022)=0x1.ffffffffffffep-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:460: RD fma(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.ffffffffffffep-1022 got -0x1p-1074 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p+0
src/math/special/fma.h:461: bad fp exception: RD fma(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:461: RD fma(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1p-1021 got -0x1p-1074 ulperr 4503599358935040.000 = 0x1.fffffep+51 + -0x1p-1
src/math/special/fma.h:462: bad fp exception: RD fma(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:462: RD fma(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.fffffffffffffp-1022 got 0x0p+0 ulperr 9007198717870080.000 = 0x1.fffffep+52 + 0x0p+0
src/math/special/fma.h:463: RD fma(0x1p-1074,-0x1p-1074,0x1p-1074) want 0x0p+0 got -0x1p-1074 ulperr -2.000 = -0x1p+0 + -0x1p+0
src/math/special/fma.h:464: RD fma(0x1p-1074,-0x1p-1074,-0x1p-1074) want -0x1p-1073 got -0x1p-1074 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/special/fma.h:465: RD fma(0x1.0000000000001p+0,0x1p+0,0x1p+53) want 0x1p+53 got 0x1.000008p+12 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:466: RD fma(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p+53) want 0x1p+53 got 0x1.ffc02p+10 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:467: RD fma(0x1p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp+53) want 0x1.fffffffffffffp+53 got -0x1.ffffep+10 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:468: RD fma(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep+53) want 0x1.ffffffffffffep+53 got 0x1.ffc02p+10 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:469: RD fma(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p-52) want 0x1.0000000000001p+0 got -0x1.fffffp-42 ulperr -4503600164241408.000 = -0x1.000002p+52 + -0x1p-1
src/math/special/fma.h:470: RD fma(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp-53) want 0x1.0000000000001p+0 got -0x1.fffff8p-41 ulperr -4503600164241408.000 = -0x1.000002p+52 + -0x1p-1
src/math/special/fma.h:471: RD fma(0x1.0000000000005p+0,0x1.ffffffffffffbp-1,0x1p-52) want 0x1.0000000000003p+0 got -0x1.8fffff8p-37 ulperr -4503600164241408.000 = -0x1.000002p+52 + -0x1p-1
src/math/special/fma.h:472: RD fma(0x1.0000000000006p+0,0x1.ffffffffffffdp-1,0x1p-52) want 0x1.0000000000005p+0 got -0x1.1fffff8p-37 ulperr -4503600164241408.000 = -0x1.000002p+52 + -0x1p-1
src/math/special/fma.h:491: RD fma(0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff4p+0 got 0x1.6800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:492: RD fma(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1p+0) want 0x1.ffffffffffff8p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:493: RD fma(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffff6p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:494: RD fma(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffff4p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:495: RD fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffff6p+0 got 0x1.f800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:496: RD fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffff4p+0 got 0x1.f800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:497: RD fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffff6p+0 got 0x1.2000004p-36 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:498: RD fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffff4p+0 got 0x1.2000004p-36 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:499: RD fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.fffffffffffffp-1) want 0x1.ffffffffffff6p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:500: RD fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffff4p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:501: RD fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff2p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:502: RD fma(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep-1) want 0x1.fffffffffffffp+0 got -0x1.fffffp-42 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:503: RD fma(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffp-42 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:504: RD fma(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.fffffffffffffp-1) want 0x1.fffffffffffffp+0 got -0x1.fffff8p-41 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:505: RD fma(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffff8p-41 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:506: RD fma(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffff8p-41 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:507: RD fma(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1p+0) want 0x1.fffffffffffffp+0 got -0x1.7ffffcp-40 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:508: RD fma(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp+0 got -0x1.7ffffcp-40 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:509: RD fma(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp+0 got -0x1.7ffffcp-40 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:510: RD fma(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffcp-40 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:511: RD fma(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffffcp-40 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:512: RD fma(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffffdp+0 got -0x1.3ffffep-39 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:513: RD fma(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffbp+0 got -0x1.3ffffep-39 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:514: RD fma(0x1.5872449b765b9p+0,0x1.c9acf91f8de2bp+0,0x1.9265607e4d168p+0) want 0x1.fd190c77c2a67p+1 got -0x1.b3fc37bedp-4 ulperr -9195829923414016.000 = -0x1.055c78p+53 + -0x1.fffc98p-2
src/math/special/fma.h:515: RD fma(0x1.81d010b146d0ep+0,0x1.2d3c680dc9071p+0,0x1.a80b69538754cp+0) want 0x1.b7040b44973a6p+1 got 0x1.4d0cb20197p+1 ulperr -1864177270390784.000 = -0x1.a7dd66p+50 + -0x1.0029a2p-1
src/math/special/fma.h:516: RD fma(0x1.6a44f2252b6a2p+0,0x1.da452a378b832p+0,0x1.1fe2ce329104p+0) want 0x1.df842b6f48b12p+1 got 0x1.12e95c1ba4p+0 ulperr -6017592242208768.000 = -0x1.560f7ep+52 + -0x1.00112ep-1
src/math/special/fma.h:517: RD fma(0x1.096b1d26463eep+0,0x1.d846d3e34333p+0,0x1.721e3480922b8p+0) want 0x1.ade2909c0269fp+1 got -0x1.a139d9b2cp-1 ulperr -9397596749561856.000 = -0x1.0b1884p+53 + -0x1.ffe5ecp-2
src/math/special/fma.h:518: RD fma(0x1.99bd3434c454bp+0,0x1.03cb8e4115bdep+0,0x1.109f107188b08p+0) want 0x1.5837a47d37faep+1 got 0x1.cfdec0c00ap+0 ulperr -1975291027128320.000 = -0x1.c12112p+50 + -0x1.001cfep-1
src/math/special/fma.h:519: RD fma(0x1.ba930a0a78ed2p+0,0x1.8c24e8d67f636p+0,0x1.ac49dbfbf8affp+0) want 0x1.164947ae6a5d9p+2 got -0x1.33e3b04edp-2 ulperr -5234191818031104.000 = -0x1.298784p+52 + -0x1.fffb3p-2
src/math/special/fma.h:520: RD fma(0x1.be224ad773191p+0,0x1.d96b77169731fp+0,0x1.662cfb75d8edep+0) want 0x1.27cd67e720f78p+2 got 0x1.e4711611c78p+1 ulperr -942615667146752.000 = -0x1.aca6e8p+49 + -0x1.001e48p-1
src/math/special/fma.h:521: RD fma(0x1.59e7a1b0bdb3cp+0,0x1.2decba4d46421p+0,0x1.88f4062e96df5p+0) want 0x1.90749e4794f79p+1 got -0x1.b3c84a9a88p-1 ulperr -8961479864745984.000 = -0x1.fd66b2p+52 + -0x1.ffe4c4p-2
src/math/special/fma.h:522: RD fma(0x1.22edf4b4da9a7p+0,0x1.dfa8d65f506cdp+0,0x1.2799208da2fbap+0) want 0x1.a45a1e99ed7a8p+1 got 0x1.a0bdfb8976p-1 ulperr -5562059957731328.000 = -0x1.3c2aap+52 + -0x1.000d06p-1
src/math/special/fma.h:523: RD fma(0x1.ad5b991a2a279p+0,0x1.f02fd26706024p+0,0x1.831cdd5c8797cp+0) want 0x1.30d3a2ac90a6p+2 got 0x1.c7c15e1c82p+1 ulperr -1353701750996992.000 = -0x1.33cbdp+50 + -0x1.001c7cp-1
src/math/special/fma.h:524: RD fma(0x1.531f9620e764ap+0,0x1.cad61b54d4425p+0,0x1.df817cae8a9afp+0) want 0x1.0fd4e7f8671dcp+2 got 0x1.8e74e26059p+1 ulperr -1277252138434560.000 = -0x1.2269dcp+50 + -0x1.0018e8p-1
src/math/special/fma.h:525: RD fma(0x1.629a5ad79494fp+0,0x1.049e58693f4c4p+0,0x1.45b0109e4d00cp+0) want 0x1.5758154e14965p+1 got -0x1.01173c9c2p-3 ulperr -6322847379095552.000 = -0x1.67698ap+52 + -0x1.fffbfcp-2
src/math/special/fma.h:526: RD fma(0x1.2f52b53f9240ap+0,0x1.1d5c686dbb0dap+0,0x1.6da3e392a4fd4p+0) want 0x1.5fe03a6795912p+1 got 0x1.5bdb7d9084p+0 ulperr -3130480329228288.000 = -0x1.63e4f8p+51 + -0x1.0015bep-1
src/math/special/fma.h:527: RD fma(0x1.058667552b49ep+0,0x1.23307bacc1c42p+0,0x1.5b059b47cd8f5p+0) want 0x1.423f752486d13p+1 got -0x1.4bfb042744p+0 ulperr -8589176530272256.000 = -0x1.e83cf8p+52 + -0x1.ffd68p-2
src/math/special/fma.h:528: RD fma(0x1.a717d95337ed8p+0,0x1.2b1c37846aaadp+0,0x1.be65672f885b1p+0) want 0x1.d65e72303c075p+1 got -0x1.7e0573ec04p+1 ulperr -14995408015065088.000 = -0x1.aa31f4p+53 + -0x1.ffa07ep-2
src/math/special/fma.h:529: RD fma(0x1.deb79287b3d32p+0,0x1.62776b829babap+0,0x1.67daf18bd2eb1p+0) want 0x1.ff5a0d45c69d6p+1 got 0x1.ad881652ap-3 ulperr -8523520438960128.000 = -0x1.e4818cp+52 + -0x1.00035cp-1
src/math/special/fma.h:530: RD fma(0x1.fbf12d3a6de91p+0,0x1.879fe6124f11p+0,0x1.9f3f1247a8641p+0) want 0x1.2a126c6980018p+2 got 0x1.45e3d61a84p+2 ulperr 489379747332096.000 = 0x1.bd169ap+48 + -0x1.0028bcp-1
src/math/special/fma.h:531: RD fma(0x1.c589628460e01p+0,0x1.e1bec1c797533p+0,0x1.349f30cdb84bbp+0) want 0x1.2286118b6f6e5p+2 got -0x1.8e9d95e0668p+1 ulperr -8617207097458688.000 = -0x1.e9d4dep+52 + -0x1.ffce2cp-2
src/math/special/fma.h:532: RD fma(0x1.46fd6c2c924ebp+0,0x1.65e2f02e730a1p+0,0x1.37739d2751098p+0) want 0x1.804a71c1f1272p+1 got 0x1.855d7947cbp+0 ulperr -3335623536541696.000 = -0x1.7b376cp+51 + -0x1.001856p-1
src/math/special/fma.h:533: RD fma(0x1.f99e595ae11fdp+0,0x1.bd33d9a1d81bp+0,0x1.932a2a2e244c1p+0) want 0x1.409e34f8f2f89p+2 got -0x1.7a49668944p+2 ulperr -12295261934059520.000 = -0x1.5d73cep+53 + -0x1.ffa16ep-2
src/math/special/fma.h:534: RD fma(0x1.59ea1e56bfe55p+0,0x1.6f46b7d412a44p+0,0x1.80f2bc9a32cc3p+0) want 0x1.b89c7640e32ffp+1 got -0x1.ca180bfb6p-3 ulperr -8254993714905088.000 = -0x1.d53df8p+52 + -0x1.fff8d8p-2
src/math/special/fma.h:535: RD fma(0x1.61490fcb44129p+0,0x1.0038ec4fc35c2p+0,0x1.df7436ed7a7b7p+0) want 0x1.a085ea68d05cfp+1 got -0x1.5ed2c690f7p+1 ulperr -13499302328401920.000 = -0x1.7fac5ap+53 + -0x1.ffa84cp-2
src/math/special/fma.h:536: RD fma(0x1.d41b98788502bp+0,0x1.1a7b77843aca6p+0,0x1.05be891837d36p+0) want 0x1.8523596ceced9p+1 got -0x1.48c8fc403cp-1 ulperr -8291802121502720.000 = -0x1.d7559ap+52 + -0x1.ffeb74p-2
src/math/special/fma.h:537: RD fma(0x1.3153cf6f69af9p+0,0x1.aaa947e38e57ap+0,0x1.8519f9b590645p+0) want 0x1.c0fcab7b46368p+1 got 0x1.25f4f4bd5p-3 ulperr -7575454189879296.000 = -0x1.ae9d5ep+52 + -0x1.00024cp-1
src/math/special/fma.h:538: RD fma(0x1.c25a1f73581aap+0,0x1.0a51ffca372ap+0,0x1.0c77e3ebac5f3p+0) want 0x1.707ce48c7d72dp+1 got -0x1.3261c9a0ep+1 ulperr -11872436362412032.000 = -0x1.516f58p+53 + -0x1.ffb368p-2
src/math/special/fma.h:539: RD fma(0x1.829c2cde44b7p+0,0x1.f692e86d8cb36p+0,0x1.455e72d264bfp+0) want 0x1.0f16a3b8b3f97p+2 got -0x1.684386466p+0 ulperr -6353495191977984.000 = -0x1.692786p+52 + -0x1.ffe97cp-2
src/math/special/fma.h:540: RD fma(0x1.94729588dcc69p+0,0x1.c3bb794c6edf8p+0,0x1.9da4e94d262d2p+0) want 0x1.19d4bd84d9fd2p+2 got 0x1.e1b9a2757p-1 ulperr -3898699117756416.000 = -0x1.bb3b14p+51 + -0x1.000786p-1
src/math/special/fma.h:541: RD fma(0x1.e6a5e7e39c3d5p+0,0x1.1b69af2bdd978p+0,0x1.e7ef1eafa119cp+0) want 0x1.00ac5b44c9f31p+2 got -0x1.6777d5d394p+1 ulperr -7677359268298752.000 = -0x1.b46848p+52 + -0x1.ffd312p-2
src/math/special/fma.h:542: RD fma(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022) want 0x1.b594d0e4368efp-1022 got -0x1.9dedc9561p-1023 ulperr -11338969211994112.000 = -0x1.4245dcp+53 + -0x1.ffcc42p-2
src/math/special/fma.h:543: RD fma(0x1.022db53c98d14p-1022,0x1.21157eef74848p-2,0x1.2f880432b1bc1p-1022) want 0x1.786ad60a02b3dp-1022 got -0x1.150255ac98p-1022 ulperr -11495199721127936.000 = -0x1.46b696p+53 + -0x1.ffbacp-2
src/math/special/fma.h:544: RD fma(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022) want 0x1.cbb085199a3f5p-1022 got -0x1.6ed115da2f8p-1023 ulperr -11313498982187008.000 = -0x1.418c8ap+53 + -0x1.ffd226p-2
src/math/special/fma.h:545: RD fma(0x1.adbc3a9d816dep-1022,0x1.e039d4431e3cdp-2,0x1.93ceef6fe18a2p-1022) want 0x1.2eabb7dc0e2fp-1021 got 0x1.ef7b6794e3p-1023 ulperr -3145487481831424.000 = -0x1.6599bcp+51 + -0x1.000f7cp-1
src/math/special/fma.h:546: RD fma(0x1.645aa5c2df3afp-1022,0x1.649edfcad854fp-2,0x1.8b43e0bbaeb01p-1022) want 0x1.03af571d2b504p-1021 got 0x1.0ce86163c02p-1021 ulperr 162249436037120.000 = 0x1.272148p+47 + -0x1.00219ep-1
src/math/special/fma.h:547: RD fma(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022) want 0x1.ad9ce7fcefa3fp-1022 got -0x1.12bc4931e6p-1025 ulperr -8161980292530176.000 = -0x1.cff472p+52 + -0x1.fff76ap-2
src/math/special/fma.h:548: RD fma(0x1.8ee3feb00c3e7p-1022,0x1.53bd9353313bcp-2,0x1.5501b57dc3b6fp-1022) want 0x1.d9598906f0bb3p-1022 got -0x1.4660b83f57p-1022 ulperr -14068956725772288.000 = -0x1.8fdd22p+53 + -0x1.ffae68p-2
src/math/special/fma.h:549: RD fma(0x1.161225cfa61e2p-1022,0x1.b6dd69a0af5bp-2,0x1.924ffc3ead5c3p-1022) want 0x1.04be6fc25367bp-1021 got -0x1.f3ab56daa8p-1022 ulperr -8982192881401856.000 = -0x1.fe941cp+52 + -0x1.ffc18ap-2
src/math/special/fma.h:550: RD fma(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022) want 0x1.70b6c3169f043p-1022 got -0x1.a779baefbe8p-1023 ulperr -10211414669000704.000 = -0x1.2239d2p+53 + -0x1.ffcb1p-2
src/math/special/fma.h:551: RD fma(0x1.ce0e2ea55040ep-1022,0x1.ce5a55fa3828dp-2,0x1.f2f444d50ce59p-1022) want 0x1.61ca36f5a8a79p-1021 got -0x1.173f0cea128p-1022 ulperr -8680214267691008.000 = -0x1.ed69bep+52 + -0x1.ffdd18p-2
src/math/special/fma.h:552: RD fma(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022) want 0x1.1440cf1c105ebp-1021 got -0x1.f88fda6p-1030 ulperr -4877233864835072.000 = -0x1.153d18p+52 + -0x1.ffffcp-2
src/math/special/fma.h:553: RD fma(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022) want 0x1.1186e1f77012dp-1021 got -0x1.2ffba526fcp-1025 ulperr -5146169147654144.000 = -0x1.24869ep+52 + -0x1.fffb4p-2
src/math/special/fma.h:554: RD fma(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022) want 0x1.8d86310bad175p-1022 got -0x1.1b755c367f8p-1023 ulperr -9486646453993472.000 = -0x1.0da07p+53 + -0x1.ffdc92p-2
src/math/special/fma.h:555: RD fma(0x1.fb3391a4b1d23p-1022,0x1.4d8705b057caep-2,0x1.d026cb6dae73bp-1022) want 0x1.3aad18b424c67p-1021 got -0x1.0a1784c7c6cp-1021 ulperr -10216979872874496.000 = -0x1.22625p+53 + -0x1.ffbd7ap-2
src/math/special/fma.h:556: RD fma(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022) want 0x1.c0048fd33a417p-1022 got -0x1.d026e457f1p-1024 ulperr -9922975402819584.000 = -0x1.1a0726p+53 + -0x1.ffe2fep-2
src/math/special/fma.h:557: RD fma(0x1.aa9eff070281cp-1022,0x1.fab05661b48ebp-2,0x1.cbe2af6c69c6ep-1022) want 0x1.4f7ddbe122764p-1021 got 0x1.9e529858dap-1023 ulperr -4079821109854208.000 = -0x1.cfd26cp+51 + -0x1.000cf2p-1
src/math/special/fma.h:558: RD fma(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022) want 0x1.e0e762ee2e7c5p-1022 got -0x1.e2fe0f96ecp-1023 ulperr -12708596701724672.000 = -0x1.693336p+53 + -0x1.ffc3ap-2
src/math/special/fma.h:559: RD fma(0x1.4dab43918a9a8p-1022,0x1.ed667442b4751p-2,0x1.3f25f82e02e3ep-1022) want 0x1.dfec0ee732dcap-1022 got 0x1.6a41c4d18ap-1022 ulperr -2069988076683264.000 = -0x1.d6a92ap+50 + -0x1.002d48p-1
src/math/special/fma.h:560: RD fma(0x1.7943735951931p-1022,0x1.fa6a357c5c9ddp-2,0x1.0bed44b0b71b4p-1022) want 0x1.c6803a6059abep-1022 got 0x1.0e970cce134p-1022 ulperr -3235394032238592.000 = -0x1.6fd25cp+51 + -0x1.0021d2p-1
src/math/special/fma.h:561: RD fma(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022) want 0x1.8640492c45959p-1022 got -0x1.3271a1b38p-1027 ulperr -7033840023371776.000 = -0x1.8fd3d8p+52 + -0x1.fffd9cp-2
src/math/special/fma.h:562: RD fma(0x1.f52172c56bdf5p-1022,0x1.672b2de422734p-2,0x1.7bc5d708e5a34p-1022) want 0x1.15c5b95145cc6p-1021 got 0x1.3cf4f71d188p-1021 ulperr 689341647028224.000 = 0x1.3979eep+49 + -0x1.00279ep-1
src/math/special/fma.h:563: RD fma(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022) want 0x1.e7fa0dd76fbefp-1022 got -0x1.60a5d541bp-1024 ulperr -10135539776749568.000 = -0x1.2011c2p+53 + -0x1.ffe9f6p-2
src/math/special/fma.h:564: RD fma(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022) want 0x1.b63a7f56fce1fp-1022 got -0x1.497a9bc52p-1024 ulperr -9158461560455168.000 = -0x1.044c94p+53 + -0x1.ffeb68p-2
src/math/special/fma.h:565: RD fma(0x1.f73d5f4e81fd8p-1022,0x1.7ccff2642124ap-2,0x1.e7d836a0c8308p-1022) want 0x1.517f1763126d3p-1021 got -0x1.06939f3372p-1021 ulperr -10556597969354752.000 = -0x1.2c095cp+53 + -0x1.ffbe5cp-2
src/math/special/fma.h:566: RD fma(0x1.b4328925969fbp-1022,0x1.8fa02832a22d5p-2,0x1.2084598e2f8c6p-1022) want 0x1.cabf43838dc51p-1022 got -0x1.7c61d65f0a4p-1022 ulperr -14762119350190080.000 = -0x1.a3908ep+53 + -0x1.ffa0e8p-2
src/math/special/fma.h:567: RD fma(0x1.66ee60a92676fp-1022,0x1.eddd2e7681ce4p-2,0x1.b81d57daeb3a7p-1022) want 0x1.329c918ffb682p-1021 got 0x1.cd379885b8p-1025 ulperr -4886855128449024.000 = -0x1.15c91ap+52 + -0x1.00039ap-1
src/math/special/fma.h:568: RD fma(0x1.ff2737585895dp-1022,0x1.fb4bf3828ae4ap-2,0x1.4a866847740fp-1022) want 0x1.23e07e4dbbeaap-1021 got 0x1.46c53f7571p-1023 ulperr -3697601501200384.000 = -0x1.a45e5ep+51 + -0x1.000a36p-1
src/math/special/fma.h:569: RD fma(0x1.5e2008d269a86p-1022,0x1.507bbbe4d78eep-2,0x1.6220c6f83f636p-1022) want 0x1.d52d9874f1c74p-1022 got 0x1.eda0503c4ap-1023 ulperr -3911886546403328.000 = -0x1.bcbae2p+51 + -0x1.001edap-1
src/math/special/fma.h:570: RD fma(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022) want 0x1.9864925e2fb0fp-1022 got -0x1.53ae580e8cp-1025 ulperr -7931489798848512.000 = -0x1.c2da5ep+52 + -0x1.fff562p-2
src/math/special/fma.h:571: RD fma(0x1.7b353b81e793dp-1022,0x1.82b426f874c6dp-2,0x1.d92b19d21fd5cp-1022) want 0x1.342fb0c544a78p-1021 got 0x1.2af4c8aebe4p-1022 ulperr -2792024289837056.000 = -0x1.3d6a9ap+51 + -0x1.0012bp-1
src/math/special/fma.h:572: RD fma(0x1.5be667823370ap-1022,0x1.a8a99b163869bp-2,0x1.95456b68dc3bcp-1022) want 0x1.12c638de03c7p-1021 got 0x1.49af7fc787p-1023 ulperr -3383908364189696.000 = -0x1.80b4b2p+51 + -0x1.000a4ep-1
src/math/special/fma.h:573: RD fma(0x1.17b0fc6c850e5p-1022,0x1.d1d0a4853c315p-2,0x1.36b79f7c0c24p-1022) want 0x1.b5f2baff5635cp-1022 got 0x1.6a19304724p-1026 ulperr -7306334223466496.000 = -0x1.9f5128p+52 + -0x1.0002d4p-1
src/math/special/fma.h:574: RD fma(0x1.bd97819bacfd8p-1022,0x1.2c25f267ba4eep-2,0x1.804b5204a3f3ap-1022) want 0x1.01739c190fd96p-1021 got 0x1.b9e166e6b4p-1022 ulperr -642314707927040.000 = -0x1.241746p+49 + -0x1.001b9ep-1
src/math/special/fma.h:575: RD fma(0x1.596577053873dp-1022,0x1.3562ab2d29949p-2,0x1.b3f1ee75db6e7p-1022) want 0x1.0e268a498009ap-1021 got 0x1.e8136bc1594p-1022 ulperr -459378025037824.000 = -0x1.a1cd48p+48 + -0x1.001e82p-1
src/math/special/fma.h:576: RD fma(0x1.3c7a68cf0f7b3p-1022,0x1.9a55c15b167bdp-2,0x1.7635b7b163c07p-1022) want 0x1.f5073b93b7b8p-1022 got 0x1.75f9a972138p-1023 ulperr -5524661530001408.000 = -0x1.3a0a68p+52 + -0x1.00176p-1
src/math/special/fma.h:577: RD fma(0x1.5825164bc4068p-1022,0x1.dcbb6e5ff3245p-2,0x1.52fc3be0e84dap-1022) want 0x1.f334771c2dcfap-1022 got 0x1.2b86ba6b02p-1022 ulperr -3512784226615296.000 = -0x1.8f5b7ap+51 + -0x1.00257p-1
src/math/special/fma.h:578: RD fma(0x1.139ea77b760ecp+1022,0x1.9b25f2fd017eap+2,-0x1.bc16788922b6fp+1023) want 0x1.b93aac527380ep+1023 got 0x1.c3ec4f2eep+1022 ulperr -3787028625883136.000 = -0x1.ae890ap+51 + -0x1.001c3ep-1
src/math/special/fma.h:579: RD fma(0x1.0e6f9c1657d7cp+1022,0x1.4d5c6b55ab5f1p+2,-0x1.e027dd5742e2cp+1023) want 0x1.c0538372b4bbep+1022 got 0x1.54dede6dep+1021 ulperr -4888709480579072.000 = -0x1.15e416p+52 + -0x1.00154ep-1
src/math/special/fma.h:580: RD fma(0x1.1182524fa411cp+1022,0x1.a3dba56842d19p+2,-0x1.c1ad59474d71fp+1023) want 0x1.bf78969300a76p+1023 got 0x1.8651491efp+1022 ulperr -4438724951670784.000 = -0x1.f89fe6p+51 + -0x1.001866p-1
src/math/special/fma.h:581: RD fma(0x1.1cbf4fb8ec82p+1022,0x1.5e32019a84fbbp+2,-0x1.985af08f32edep+1023) want 0x1.72af6bbad4a28p+1023 got 0x1.a68c1c1ecp+1023 ulperr 912367084896256.000 = 0x1.9ee582p+49 + -0x1.0034d2p-1
src/math/special/fma.h:582: RD fma(0x1.311e25c6db346p+1022,0x1.4e30db6c4b51dp+2,-0x1.7681f7a9786a7p+1023) want 0x1.a61d29434fc13p+1023 got -0x1.791d1989p+1017 ulperr -7529566759288832.000 = -0x1.ac019ep+52 + -0x1.fffe86p-2
src/math/special/fma.h:583: RD fma(0x1.1201cf577052fp+1022,0x1.59730b2db7a16p+2,-0x1.56f1a64a078d5p+1023) want 0x1.8c8d801df34d9p+1023 got -0x1.3048609fd8p+1022 ulperr -inf = -inf + -0x1.ffd9f6p-2
src/math/special/fma.h:584: RD fma(0x1.3e52335b76e81p+1022,0x1.4dbd56f857479p+2,-0x1.509340c11bd2ep+1023) want 0x1.ed6576837f653p+1023 got -0x1.e498d5441cp+1022 ulperr -inf = -inf + -0x1.ffc36cp-2
src/math/special/fma.h:585: RD fma(0x1.18566b4f843cbp+1022,0x1.444fba10eaf29p+2,-0x1.f927beae57f0ap+1023) want 0x1.9a433b9796559p+1022 got 0x1.a048d2820cp+1022 ulperr 105937222238208.000 = 0x1.8165bap+46 + -0x1.ff6812p-2
src/math/special/fma.h:586: RD fma(0x1.3fbe544fe1be8p+1022,0x1.2d2a5fda03639p+2,-0x1.007407dbfd03cp+1023) want 0x1.efdb644b613e5p+1023 got -0x1.e14223656p+1022 ulperr -inf = -inf + -0x1.ffc3d8p-2
src/math/special/fma.h:587: RD fma(0x1.263a0d3bc2e4p+1022,0x1.4cc198adbc651p+2,-0x1.734b1c1f7fdb8p+1023) want 0x1.899878afc0fa2p+1023 got 0x1.a13620448p+1023 ulperr 415454199808000.000 = 0x1.79da78p+48 + -0x1.003426p-1
src/math/special/fma.h:588: RD fma(0x1.5bf4aec8efc8ep+1022,0x1.555f0341516c9p+2,-0x1.c706408acd14cp+1023) want 0x1.d8f5e18b868bcp+1023 got 0x1.3e5679fdf8p+1022 ulperr -5520280126488576.000 = -0x1.39caa6p+52 + -0x1.0013e6p-1
src/math/special/fma.h:589: RD fma(0x1.1e57f1af78279p+1022,0x1.34bc0c7f082b3p+2,-0x1.497b92c1365edp+1023) want 0x1.692cb7ec68a93p+1023 got -0x1.c0a1f29b28p+1021 ulperr -8326959650045952.000 = -0x1.d95536p+52 + -0x1.ffe3f6p-2
src/math/special/fma.h:590: RD fma(0x1.1d9824cd73511p+1022,0x1.1d557ddfe47ffp+2,-0x1.556cdb1d20a72p+1023) want 0x1.2736a6b6e35f2p+1023 got 0x1.bc6f9c9778p+1021 ulperr -3238800478175232.000 = -0x1.70358p+51 + -0x1.000de4p-1
src/math/special/fma.h:591: RD fma(0x1.1ff85a24aff31p+1022,0x1.39ab374b2680dp+2,-0x1.35e6b07b651b8p+1023) want 0x1.8bc7ce208708p+1023 got 0x1.84b319bafap+1023 ulperr -124568119279616.000 = -0x1.c52d1ap+46 + -0x1.003096p-1
src/math/special/fma.h:592: RD fma(0x1.0449b3965227ep+1022,0x1.4430d4441f9f2p+2,-0x1.a6966c96307ep+1023) want 0x1.d94eda8c81771p+1022 got -0x1.992ed6b72p+1021 ulperr -11925734759071744.000 = -0x1.52f324p+53 + -0x1.ffccdap-2
src/math/special/fma.h:593: RD fma(0x1.3c91fa00fd0c7p+1022,0x1.1b6661c0b0303p+2,-0x1.f1f2846b64483p+1023) want 0x1.95eae0d2644d3p+1022 got 0x1.9985d8eaap+1019 ulperr -6240425882943488.000 = -0x1.62ba26p+52 + -0x1.ff0cccp-2
src/math/special/fma.h:594: RD fma(0x1.0979b36d46534p+1022,0x1.12fa205f41f7fp+2,-0x1.a83ecf4544a63p+1023) want 0x1.2420f34e2aa3cp+1022 got -0x1.335a0fe68p+1019 ulperr -5815056616914944.000 = -0x1.4a8c36p+52 + -0x1.007b32p-1
src/math/special/fma.h:595: RD fma(0x1.4c89df582a599p+1022,0x1.55f3dc473ea8fp+2,-0x1.e35037292ddfp+1023) want 0x1.95109fdbc3771p+1023 got -0x1.afa3b29624p+1022 ulperr -inf = -inf + -0x1.ffca0cp-2
src/math/special/fma.h:596: RD fma(0x1.35ee0a669c4fbp+1022,0x1.2263cb63f386ap+2,-0x1.449218ae35ac7p+1023) want 0x1.7a8ed977d817ap+1023 got 0x1.47da9ddfb8p+1022 ulperr -3775828961787904.000 = -0x1.ad4316p+51 + -0x1.00147ep-1
src/math/special/fma.h:597: RD fma(0x1.117cc860f61bcp+1022,0x1.440985b25d994p+2,-0x1.d7a7d82000449p+1023) want 0x1.b960b7088e74fp+1022 got 0x1.ddfba372cp+1022 ulperr 643964914892800.000 = 0x1.24d762p+49 + -0x1.ff777ep-2
src/math/special/fma.h:598: RD fma(0x1.1e78a37be320fp+1022,0x1.0db0fce62287bp+2,-0x1.376337da5eb53p+1023) want 0x1.24326b9956dfbp+1023 got -0x1.d2881b3596p+1023 ulperr -inf = -inf + -0x1.ff8b5ep-2
src/math/special/fma.h:599: RD fma(0x1.0c79b5c8331c2p+1022,0x1.0aba6ea746b5p+2,-0x1.c86f1fcaf0741p+1023) want 0x1.9c135bb2cff84p+1021 got -0x1.cc298bacp+1019 ulperr -9273126449840128.000 = -0x1.078eep+53 + -0x1.00f19ep-1
src/math/special/fma.h:600: RD fma(0x1.556c4c072f272p+1022,0x1.347758d7d4eb5p+2,-0x1.c6fe4f24b248dp+1023) want 0x1.6fcc9f756df6dp+1023 got -0x1.f6f4c76598p+1022 ulperr -inf = -inf + -0x1.ffc122p-2
src/math/special/fma.h:601: RD fma(-0x1.e8349b891b2fp-1,0x1.4a6dec9b72578p-1,0x1.3b6151ce809ddp-1) want 0x1.3a62fe330b355p-11 got -0x1.d97121p-11 ulperr -13859627535958016.000 = -0x1.89ea1p+53 + -0x1.ff89a4p-2
src/math/special/fma.h:602: RD fma(0x1.2996632ac7d74p-1,-0x1.bb3c58b654d94p-1,0x1.01a6660e64a31p-1) want 0x1.ed045bb956a8ep-15 got -0x1.070d62p-15 ulperr -13300912420290560.000 = -0x1.7a08ep+53 + -0x1.eabe3cp-2
src/math/special/fma.h:603: RD fma(-0x1.c602e894c1df8p-1,0x1.a1c980e7d3f94p-1,0x1.7271244b43386p-1) want -0x1.ba251fe026e5cp-15 got -0x1.af2b6c0000001p-15 ulperr 193081294979072.000 = 0x1.5f367cp+47 + -0x1.02ca1ap-1
src/math/special/fma.h:604: RD fma(-0x1.c84baf47e85cp-1,0x1.770b5149ef2ep-1,0x1.4d80f139320bap-1) want -0x1.79277433b9e24p-10 got 0x1.d4b6effffffffp-11 ulperr 10757822555881472.000 = 0x1.31c176p+53 + -0x1.001d4cp-1
src/math/special/fma.h:605: RD fma(-0x1.36e667dcf9c6p-1,0x1.2591f82556b88p-1,0x1.2452a0f795f95p-1) want 0x1.c83c8e63c159fp-3 got -0x1.221cccp-12 ulperr -8036166741786624.000 = -0x1.c8cd9ep+52 + -0x1.ffffdcp-2
src/math/special/fma.h:606: RD fma(0x1.88b2cede61e4cp-1,-0x1.71dcab5ad9e9p-3,0x1.32b27fea2ae97p-3) want 0x1.70461909b25e2p-7 got -0x1.affe57fffffffp-17 ulperr -6486163510525952.000 = -0x1.70b21ap+52 + -0x1.ffffe6p-2
src/math/special/fma.h:607: RD fma(0x1.8d1e44002c98p-3,-0x1.af9fdfb347834p-1,0x1.e280942fb4146p-4) want -0x1.761ac23896dfep-5 got 0x1.0bec47fffffffp-14 ulperr 6590522089013248.000 = 0x1.76a0b8p+52 + -0x1.00001p-1
src/math/special/fma.h:608: RD fma(0x1.236e8cb9492c8p-1,-0x1.d37443a57f1c4p-1,0x1.ca10df801aabcp-4) want -0x1.a1a2cdf0138fap-2 got 0x1.f090cab6fffffp-5 ulperr 8439088361242624.000 = 0x1.dfb4e6p+52 + -0x1.0007c2p-1
src/math/special/fma.h:609: RD fma(-0x1.6ad943e610fb8p-1,-0x1.cef92a7bb18bcp-1,0x1.f28587d8fb0ep-4) want 0x1.866b5204b9aecp-1 got -0x1.8c9eb9a7p-5 ulperr -7304415983697920.000 = -0x1.9f353ep+52 + -0x1.fff9cep-2
src/math/special/fma.h:610: RD fma(-0x1.60a8569a5d894p-1,-0x1.ca07e29dd171cp-1,0x1.b6c475ace09ecp-4) want 0x1.72549291e2f7ap-1 got -0x1.b6fd181e8p-5 ulperr -6997594257489920.000 = -0x1.8dc466p+52 + -0x1.fff924p-2
src/math/special/fma.h:611: RD fma(0x1.d1962720d678cp-1,-0x1.4548ee45c4084p-1,0x1.f416ab193d75cp-4) want -0x1.d2929879dc854p-2 got 0x1.fc38e6f3fffffp-8 ulperr 8347731722502144.000 = 0x1.da837cp+52 + -0x1.0000fep-1
src/math/special/fma.h:612: RD fma(-0x1.9ddcb295a7d64p-1,0x1.67fb3a2068a78p-1,0x1.da9cd4597fe0ap-4) want -0x1.cf4f6eb4fc5d9p-2 got 0x1.59da5511fffffp-6 ulperr 8530909930192896.000 = 0x1.e4ed14p+52 + -0x1.0002b4p-1
src/math/special/fma.h:613: RD fma(0x1.c00d16ed45b88p+0,0x1.c787eddda3664p+0,0x1.1e3e6f0cc1802p-5) want 0x1.931b8f379dcc3p+1 got -0x1.63fb63b8p-6 ulperr -7140470639558656.000 = -0x1.95e386p+52 + -0x1.ffff4ep-2
src/math/special/fma.h:614: RD fma(0x1.19c2a2372c184p+0,-0x1.cb506961c19fp+0,0x1.db1abf3f7ba3ap-6) want -0x1.f21c0eab0bc19p+0 got 0x1.a29607ffffff8p-13 ulperr 8763735275470848.000 = 0x1.f22922p+52 + -0x1.000002p-1
src/math/special/fma.h:615: RD fma(-0x1.3a263218ccd1cp+0,-0x1.e818d390df27cp+0,0x1.2a81ed71785f5p-5) want 0x1.3025ab0f63925p+1 got -0x1.bfdf0b9cp-6 ulperr -5412168283455488.000 = -0x1.33a56ap+52 + -0x1.ffff2p-2
src/math/special/fma.h:616: RD fma(0x1.b0b041fbaca58p+0,-0x1.9d5f76d178e6p+0,0x1.0215c7bb84cf9p-6) want -0x1.5b52aec7ef401p+1 got 0x1.6be7a77ffffffp-7 ulperr 6135177709355008.000 = 0x1.5cbe96p+52 + -0x1.00002ep-1
src/math/special/fma.h:617: RD fma(-0x1.377549d9a87f4p+0,-0x1.a13d4a03dd6d8p+0,0x1.f190388bc5cc6p-7) want 0x1.ff83bebbd6fe4p+0 got -0x1.e5a6a44p-9 ulperr -9015347881443328.000 = -0x1.003b4ap+53 + -0x1.ffffc4p-2
src/math/special/fma.h:618: RD fma(0x1.6a726c0762ac8p-1,-0x1.d32f2d30e483cp+0,0x1.f953eb70fbde6p-7) want -0x1.46c61b3070333p+0 got 0x1.e556e47fffffep-11 ulperr 5752835425697792.000 = 0x1.4702c6p+52 + -0x1.000008p-1
src/math/special/fma.h:619: RD fma(0x1.94cf2509d40cp-1,0x1.721976af6dfbp+0,0x1.f51a456921c3ep-7) want 0x1.28880842acc6p+0 got -0x1.effe1ep-8 ulperr -5250719925927936.000 = -0x1.2a7808p+52 + -0x1.ffff84p-2
src/math/special/fma.h:620: RD fma(0x1.b128eb0ad8728p-1,0x1.7682566a54268p+0,0x1.bd4122a074cafp-8) want 0x1.3e9469530e762p+0 got -0x1.6fe0c7cp-9 ulperr -5617154187591680.000 = -0x1.3f4c5ap+52 + -0x1.ffffd2p-2
src/math/special/fma.h:621: RD fma(0x1.c4ae75976e35cp+0,-0x1.11c329dd1160cp+0,0x1.9993f5e13c9bdp-8) want -0x1.e27d925b07cf2p+0 got 0x1.198edf5ffffffp-9 ulperr 8497736676540416.000 = 0x1.e30a58p+52 + -0x1.000012p-1
src/math/special/fma.h:622: RD fma(-0x1.85f81f88fa3c4p+0,-0x1.17648a494fa18p-1,0x1.37d305113b48p-10) want 0x1.aa367b7490e57p-1 got -0x1.7a59ecffffffep-12 ulperr -7501265609162752.000 = -0x1.aa65c8p+52 + -0x1.fffff4p-2
src/math/special/fma.h:623: RD fma(-0x1.311f2b4319efcp+0,0x1.abbb5272e3d18p-1,0x1.35841b7bdbcfep-10) want -0x1.fd337f24b39e1p-1 got 0x1.4cbc317ffffffp-11 ulperr 8963677814259712.000 = 0x1.fd86aep+52 + -0x1.00000ap-1
src/math/special/fma.h:624: RD fma(0x1.ab94369a9a0dp-1,0x1.9d1e0e0aa3bacp+0,0x1.0a63ca87cfa78p-11) want 0x1.592173ee296b6p+0 got -0x1.fd8043ffffff8p-13 ulperr -6072697209487360.000 = -0x1.59316p+52 + -0x1.fffffcp-2
src/math/special/fma.h:666: RU fma(0x1p+0,0x1p+0,-0x1p-1074) want 0x1p+0 got -0x1.fffffp-43 ulperr -4503599627370496.000 = -0x1p+52 + 0x0p+0
src/math/special/fma.h:667: bad fp exception: RU fma(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022)=0x1p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:667: RU fma(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022) want 0x1p-1021 got 0x1p-1074 ulperr -4503599358935040.000 = -0x1.fffffep+51 + 0x1p-1
src/math/special/fma.h:668: bad fp exception: RU fma(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022)=0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:668: RU fma(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.fffffffffffffp-1022 got -0x0p+0 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x0p+0
src/math/special/fma.h:669: bad fp exception: RU fma(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:669: RU fma(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.fffffffffffffp-1022 got -0x0p+0 ulperr 9007199254740992.000 = 0x1p+53 + 0x0p+0
src/math/special/fma.h:670: bad fp exception: RU fma(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.ffffffffffffep-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:670: RU fma(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.ffffffffffffep-1022 got 0x1p-1074 ulperr 9007199254740992.000 = 0x1p+53 + 0x1p+0
src/math/special/fma.h:671: RU fma(0x1p-1074,-0x1p-1074,0x1p-1074) want 0x1p-1074 got -0x0p+0 ulperr -1.000 = -0x1p+0 + 0x0p+0
src/math/special/fma.h:672: RU fma(0x1p-1074,-0x1p-1074,-0x1p-1074) want -0x1p-1074 got -0x0p+0 ulperr 1.000 = 0x1p+0 + 0x0p+0
src/math/special/fma.h:673: RU fma(0x1.0000000000001p+0,0x1p+0,0x1p+53) want 0x1.0000000000001p+53 got 0x1.000008p+12 ulperr -4503599358935040.000 = -0x1.fffffep+51 + 0x1p-1
src/math/special/fma.h:674: RU fma(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p+53) want 0x1.0000000000001p+53 got 0x1.ffc02p+10 ulperr -4503599358935040.000 = -0x1.fffffep+51 + 0x1p-1
src/math/special/fma.h:675: RU fma(0x1p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp+53) want 0x1p+54 got -0x1.ffffep+10 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-2
src/math/special/fma.h:676: RU fma(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep+53) want 0x1.fffffffffffffp+53 got 0x1.ffc02p+10 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:677: RU fma(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p-52) want 0x1.0000000000002p+0 got -0x1.fffffp-42 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:678: RU fma(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp-53) want 0x1.0000000000002p+0 got -0x1.fffff8p-41 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:679: RU fma(0x1.0000000000005p+0,0x1.ffffffffffffbp-1,0x1p-52) want 0x1.0000000000004p+0 got -0x1.8fffff8p-37 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:680: RU fma(0x1.0000000000006p+0,0x1.ffffffffffffdp-1,0x1p-52) want 0x1.0000000000006p+0 got -0x1.1fffff8p-37 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:699: RU fma(0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff5p+0 got 0x1.6800008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:700: RU fma(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1p+0) want 0x1.ffffffffffff9p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:701: RU fma(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffff7p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:702: RU fma(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffff5p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:703: RU fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffff7p+0 got 0x1.f800008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:704: RU fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffff5p+0 got 0x1.f800008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:705: RU fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffff7p+0 got 0x1.2000004p-36 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:706: RU fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffff5p+0 got 0x1.2000004p-36 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:707: RU fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.fffffffffffffp-1) want 0x1.ffffffffffff7p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:708: RU fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffff5p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:709: RU fma(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff3p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:710: RU fma(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep-1) want 0x1p+1 got -0x1.fffffp-42 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-2
src/math/special/fma.h:711: RU fma(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffep+0 got -0x1.fffffp-42 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:712: RU fma(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.fffffffffffffp-1) want 0x1p+1 got -0x1.fffff8p-41 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-2
src/math/special/fma.h:713: RU fma(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffffep+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:714: RU fma(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffffcp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:715: RU fma(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1p+0) want 0x1p+1 got -0x1.7ffffcp-40 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-2
src/math/special/fma.h:716: RU fma(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffffep+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:717: RU fma(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffffcp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:718: RU fma(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffffep+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:719: RU fma(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffffcp+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:720: RU fma(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffffep+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:721: RU fma(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffcp+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:722: RU fma(0x1.5872449b765b9p+0,0x1.c9acf91f8de2bp+0,0x1.9265607e4d168p+0) want 0x1.fd190c77c2a68p+1 got -0x1.b3fc37becffffp-4 ulperr -9195828849672192.000 = -0x1.055c76p+53 + 0x1.0001b4p-1
src/math/special/fma.h:723: RU fma(0x1.81d010b146d0ep+0,0x1.2d3c680dc9071p+0,0x1.a80b69538754cp+0) want 0x1.b7040b44973a7p+1 got 0x1.4d0cb20197001p+1 ulperr -1864177136173056.000 = -0x1.a7dd64p+50 + 0x1.ffacbcp-2
src/math/special/fma.h:724: RU fma(0x1.6a44f2252b6a2p+0,0x1.da452a378b832p+0,0x1.1fe2ce329104p+0) want 0x1.df842b6f48b13p+1 got 0x1.12e95c1ba4001p+0 ulperr -6017591705337856.000 = -0x1.560f7cp+52 + 0x1.ffdda2p-2
src/math/special/fma.h:725: RU fma(0x1.096b1d26463eep+0,0x1.d846d3e34333p+0,0x1.721e3480922b8p+0) want 0x1.ade2909c026ap+1 got -0x1.a139d9b2bffffp-1 ulperr -9397595675820032.000 = -0x1.0b1882p+53 + 0x1.000d0ap-1
src/math/special/fma.h:726: RU fma(0x1.99bd3434c454bp+0,0x1.03cb8e4115bdep+0,0x1.109f107188b08p+0) want 0x1.5837a47d37fafp+1 got 0x1.cfdec0c00a001p+0 ulperr -1975290892910592.000 = -0x1.c1211p+50 + 0x1.ffc604p-2
src/math/special/fma.h:727: RU fma(0x1.ba930a0a78ed2p+0,0x1.8c24e8d67f636p+0,0x1.ac49dbfbf8affp+0) want 0x1.164947ae6a5dap+2 got -0x1.33e3b04ecffffp-2 ulperr -5234191281160192.000 = -0x1.298782p+52 + 0x1.000268p-1
src/math/special/fma.h:728: RU fma(0x1.be224ad773191p+0,0x1.d96b77169731fp+0,0x1.662cfb75d8edep+0) want 0x1.27cd67e720f79p+2 got 0x1.e4711611c7801p+1 ulperr -942615600037888.000 = -0x1.aca6e6p+49 + 0x1.ffc372p-2
src/math/special/fma.h:729: RU fma(0x1.59e7a1b0bdb3cp+0,0x1.2decba4d46421p+0,0x1.88f4062e96df5p+0) want 0x1.90749e4794f7ap+1 got -0x1.b3c84a9a87fffp-1 ulperr -8961479327875072.000 = -0x1.fd66bp+52 + 0x1.000d9ep-1
src/math/special/fma.h:730: RU fma(0x1.22edf4b4da9a7p+0,0x1.dfa8d65f506cdp+0,0x1.2799208da2fbap+0) want 0x1.a45a1e99ed7a9p+1 got 0x1.a0bdfb8976001p-1 ulperr -5562059420860416.000 = -0x1.3c2a9ep+52 + 0x1.ffe5f4p-2
src/math/special/fma.h:731: RU fma(0x1.ad5b991a2a279p+0,0x1.f02fd26706024p+0,0x1.831cdd5c8797cp+0) want 0x1.30d3a2ac90a61p+2 got 0x1.c7c15e1c82001p+1 ulperr -1353701616779264.000 = -0x1.33cbcep+50 + 0x1.ffc708p-2
src/math/special/fma.h:732: RU fma(0x1.531f9620e764ap+0,0x1.cad61b54d4425p+0,0x1.df817cae8a9afp+0) want 0x1.0fd4e7f8671ddp+2 got 0x1.8e74e26059001p+1 ulperr -1277252004216832.000 = -0x1.2269dap+50 + 0x1.ffce32p-2
src/math/special/fma.h:733: RU fma(0x1.629a5ad79494fp+0,0x1.049e58693f4c4p+0,0x1.45b0109e4d00cp+0) want 0x1.5758154e14966p+1 got -0x1.01173c9c1ffffp-3 ulperr -6322846842224640.000 = -0x1.676988p+52 + 0x1.000202p-1
src/math/special/fma.h:734: RU fma(0x1.2f52b53f9240ap+0,0x1.1d5c686dbb0dap+0,0x1.6da3e392a4fd4p+0) want 0x1.5fe03a6795913p+1 got 0x1.5bdb7d9084001p+0 ulperr -3130480060792832.000 = -0x1.63e4f6p+51 + 0x1.ffd484p-2
src/math/special/fma.h:735: RU fma(0x1.058667552b49ep+0,0x1.23307bacc1c42p+0,0x1.5b059b47cd8f5p+0) want 0x1.423f752486d14p+1 got -0x1.4bfb042743fffp+0 ulperr -8589175993401344.000 = -0x1.e83cf6p+52 + 0x1.0014cp-1
src/math/special/fma.h:736: RU fma(0x1.a717d95337ed8p+0,0x1.2b1c37846aaadp+0,0x1.be65672f885b1p+0) want 0x1.d65e72303c076p+1 got -0x1.7e0573ec03fffp+1 ulperr -14995406941323264.000 = -0x1.aa31f2p+53 + 0x1.002fcp-1
src/math/special/fma.h:737: RU fma(0x1.deb79287b3d32p+0,0x1.62776b829babap+0,0x1.67daf18bd2eb1p+0) want 0x1.ff5a0d45c69d7p+1 got 0x1.ad881652a0001p-3 ulperr -8523519902089216.000 = -0x1.e4818ap+52 + 0x1.fff94ap-2
src/math/special/fma.h:738: RU fma(0x1.fbf12d3a6de91p+0,0x1.879fe6124f11p+0,0x1.9f3f1247a8641p+0) want 0x1.2a126c6980019p+2 got 0x1.45e3d61a84001p+2 ulperr 489379780886528.000 = 0x1.bd169cp+48 + 0x1.ffae88p-2
src/math/special/fma.h:739: RU fma(0x1.c589628460e01p+0,0x1.e1bec1c797533p+0,0x1.349f30cdb84bbp+0) want 0x1.2286118b6f6e6p+2 got -0x1.8e9d95e0667ffp+1 ulperr -8617206560587776.000 = -0x1.e9d4dcp+52 + 0x1.0018eap-1
src/math/special/fma.h:740: RU fma(0x1.46fd6c2c924ebp+0,0x1.65e2f02e730a1p+0,0x1.37739d2751098p+0) want 0x1.804a71c1f1273p+1 got 0x1.855d7947cb001p+0 ulperr -3335623268106240.000 = -0x1.7b376ap+51 + 0x1.ffcf54p-2
src/math/special/fma.h:741: RU fma(0x1.f99e595ae11fdp+0,0x1.bd33d9a1d81bp+0,0x1.932a2a2e244c1p+0) want 0x1.409e34f8f2f8ap+2 got -0x1.7a49668943fffp+2 ulperr -12295260860317696.000 = -0x1.5d73ccp+53 + 0x1.002f4ap-1
src/math/special/fma.h:742: RU fma(0x1.59ea1e56bfe55p+0,0x1.6f46b7d412a44p+0,0x1.80f2bc9a32cc3p+0) want 0x1.b89c7640e33p+1 got -0x1.ca180bfb5ffffp-3 ulperr -8254993178034176.000 = -0x1.d53df6p+52 + 0x1.000394p-1
src/math/special/fma.h:743: RU fma(0x1.61490fcb44129p+0,0x1.0038ec4fc35c2p+0,0x1.df7436ed7a7b7p+0) want 0x1.a085ea68d05dp+1 got -0x1.5ed2c690f6fffp+1 ulperr -13499301254660096.000 = -0x1.7fac58p+53 + 0x1.002bdap-1
src/math/special/fma.h:744: RU fma(0x1.d41b98788502bp+0,0x1.1a7b77843aca6p+0,0x1.05be891837d36p+0) want 0x1.8523596cecedap+1 got -0x1.48c8fc403bfffp-1 ulperr -8291801584631808.000 = -0x1.d75598p+52 + 0x1.000a46p-1
src/math/special/fma.h:745: RU fma(0x1.3153cf6f69af9p+0,0x1.aaa947e38e57ap+0,0x1.8519f9b590645p+0) want 0x1.c0fcab7b46369p+1 got 0x1.25f4f4bd50001p-3 ulperr -7575453653008384.000 = -0x1.ae9d5cp+52 + 0x1.fffb68p-2
src/math/special/fma.h:746: RU fma(0x1.c25a1f73581aap+0,0x1.0a51ffca372ap+0,0x1.0c77e3ebac5f3p+0) want 0x1.707ce48c7d72ep+1 got -0x1.3261c9a0dffffp+1 ulperr -11872435288670208.000 = -0x1.516f56p+53 + 0x1.00264cp-1
src/math/special/fma.h:747: RU fma(0x1.829c2cde44b7p+0,0x1.f692e86d8cb36p+0,0x1.455e72d264bfp+0) want 0x1.0f16a3b8b3f98p+2 got -0x1.684386465ffffp+0 ulperr -6353494655107072.000 = -0x1.692784p+52 + 0x1.000b42p-1
src/math/special/fma.h:748: RU fma(0x1.94729588dcc69p+0,0x1.c3bb794c6edf8p+0,0x1.9da4e94d262d2p+0) want 0x1.19d4bd84d9fd3p+2 got 0x1.e1b9a27570001p-1 ulperr -3898698849320960.000 = -0x1.bb3b12p+51 + 0x1.fff0f2p-2
src/math/special/fma.h:749: RU fma(0x1.e6a5e7e39c3d5p+0,0x1.1b69af2bdd978p+0,0x1.e7ef1eafa119cp+0) want 0x1.00ac5b44c9f32p+2 got -0x1.6777d5d393fffp+1 ulperr -7677358731427840.000 = -0x1.b46846p+52 + 0x1.001678p-1
src/math/special/fma.h:750: bad fp exception: RU fma(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022)=0x1.b594d0e4368fp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:750: RU fma(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022) want 0x1.b594d0e4368fp-1022 got -0x1.9dedc9560fffep-1023 ulperr -11338968138252288.000 = -0x1.4245dap+53 + 0x1.0019dep-1
src/math/special/fma.h:751: RU fma(0x1.022db53c98d14p-1022,0x1.21157eef74848p-2,0x1.2f880432b1bc1p-1022) want 0x1.786ad60a02b3ep-1022 got -0x1.150255ac97fffp-1022 ulperr -11495198647386112.000 = -0x1.46b694p+53 + 0x1.0022ap-1
src/math/special/fma.h:752: bad fp exception: RU fma(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022)=0x1.cbb085199a3f6p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:752: RU fma(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022) want 0x1.cbb085199a3f6p-1022 got -0x1.6ed115da2f7fep-1023 ulperr -11313497908445184.000 = -0x1.418c88p+53 + 0x1.0016eep-1
src/math/special/fma.h:753: bad fp exception: RU fma(0x1.adbc3a9d816dep-1022,0x1.e039d4431e3cdp-2,0x1.93ceef6fe18a2p-1022)=0x1.2eabb7dc0e2f1p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:753: RU fma(0x1.adbc3a9d816dep-1022,0x1.e039d4431e3cdp-2,0x1.93ceef6fe18a2p-1022) want 0x1.2eabb7dc0e2f1p-1021 got 0x1.ef7b6794e3002p-1023 ulperr -3145487213395968.000 = -0x1.6599bap+51 + 0x1.ffe108p-2
src/math/special/fma.h:754: RU fma(0x1.645aa5c2df3afp-1022,0x1.649edfcad854fp-2,0x1.8b43e0bbaeb01p-1022) want 0x1.03af571d2b505p-1021 got 0x1.0ce86163c0201p-1021 ulperr 162249452814336.000 = 0x1.27214ap+47 + 0x1.ffbcc6p-2
src/math/special/fma.h:755: bad fp exception: RU fma(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022)=0x1.ad9ce7fcefa4p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:755: RU fma(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022) want 0x1.ad9ce7fcefa4p-1022 got -0x1.12bc4931e5ff8p-1025 ulperr -8161979755659264.000 = -0x1.cff47p+52 + 0x1.00044ap-1
src/math/special/fma.h:756: RU fma(0x1.8ee3feb00c3e7p-1022,0x1.53bd9353313bcp-2,0x1.5501b57dc3b6fp-1022) want 0x1.d9598906f0bb4p-1022 got -0x1.4660b83f56fffp-1022 ulperr -14068955652030464.000 = -0x1.8fdd2p+53 + 0x1.0028ccp-1
src/math/special/fma.h:757: RU fma(0x1.161225cfa61e2p-1022,0x1.b6dd69a0af5bp-2,0x1.924ffc3ead5c3p-1022) want 0x1.04be6fc25367cp-1021 got -0x1.f3ab56daa7fffp-1022 ulperr -8982192344530944.000 = -0x1.fe941ap+52 + 0x1.001f3ap-1
src/math/special/fma.h:758: bad fp exception: RU fma(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022)=0x1.70b6c3169f044p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:758: RU fma(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022) want 0x1.70b6c3169f044p-1022 got -0x1.a779baefbe7fep-1023 ulperr -10211413595258880.000 = -0x1.2239dp+53 + 0x1.001a78p-1
src/math/special/fma.h:759: RU fma(0x1.ce0e2ea55040ep-1022,0x1.ce5a55fa3828dp-2,0x1.f2f444d50ce59p-1022) want 0x1.61ca36f5a8a7ap-1021 got -0x1.173f0cea127ffp-1022 ulperr -8680213730820096.000 = -0x1.ed69bcp+52 + 0x1.001174p-1
src/math/special/fma.h:760: bad fp exception: RU fma(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022)=0x1.1440cf1c105ecp-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:760: RU fma(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022) want 0x1.1440cf1c105ecp-1021 got -0x1.f88fda5ffffp-1030 ulperr -4877233327964160.000 = -0x1.153d16p+52 + 0x1.00002p-1
src/math/special/fma.h:761: bad fp exception: RU fma(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022)=0x1.1186e1f77012ep-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:761: RU fma(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022) want 0x1.1186e1f77012ep-1021 got -0x1.2ffba526fbff8p-1025 ulperr -5146168610783232.000 = -0x1.24869cp+52 + 0x1.00026p-1
src/math/special/fma.h:762: bad fp exception: RU fma(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022)=0x1.8d86310bad176p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:762: RU fma(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022) want 0x1.8d86310bad176p-1022 got -0x1.1b755c367f7fep-1023 ulperr -9486645380251648.000 = -0x1.0da06ep+53 + 0x1.0011b8p-1
src/math/special/fma.h:763: RU fma(0x1.fb3391a4b1d23p-1022,0x1.4d8705b057caep-2,0x1.d026cb6dae73bp-1022) want 0x1.3aad18b424c68p-1021 got -0x1.0a1784c7c6bffp-1021 ulperr -10216978799132672.000 = -0x1.22624ep+53 + 0x1.002142p-1
src/math/special/fma.h:764: bad fp exception: RU fma(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022)=0x1.c0048fd33a418p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:764: RU fma(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022) want 0x1.c0048fd33a418p-1022 got -0x1.d026e457f0ffcp-1024 ulperr -9922974329077760.000 = -0x1.1a0724p+53 + 0x1.000e82p-1
src/math/special/fma.h:765: bad fp exception: RU fma(0x1.aa9eff070281cp-1022,0x1.fab05661b48ebp-2,0x1.cbe2af6c69c6ep-1022)=0x1.4f7ddbe122765p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:765: RU fma(0x1.aa9eff070281cp-1022,0x1.fab05661b48ebp-2,0x1.cbe2af6c69c6ep-1022) want 0x1.4f7ddbe122765p-1021 got 0x1.9e529858da002p-1023 ulperr -4079820841418752.000 = -0x1.cfd26ap+51 + 0x1.ffe61ap-2
src/math/special/fma.h:766: bad fp exception: RU fma(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022)=0x1.e0e762ee2e7c6p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:766: RU fma(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022) want 0x1.e0e762ee2e7c6p-1022 got -0x1.e2fe0f96ebffep-1023 ulperr -12708595627982848.000 = -0x1.693334p+53 + 0x1.001e3p-1
src/math/special/fma.h:767: RU fma(0x1.4dab43918a9a8p-1022,0x1.ed667442b4751p-2,0x1.3f25f82e02e3ep-1022) want 0x1.dfec0ee732dcbp-1022 got 0x1.6a41c4d18a001p-1022 ulperr -2069987942465536.000 = -0x1.d6a928p+50 + 0x1.ffa57p-2
src/math/special/fma.h:768: RU fma(0x1.7943735951931p-1022,0x1.fa6a357c5c9ddp-2,0x1.0bed44b0b71b4p-1022) want 0x1.c6803a6059abfp-1022 got 0x1.0e970cce13401p-1022 ulperr -3235393763803136.000 = -0x1.6fd25ap+51 + 0x1.ffbc5ap-2
src/math/special/fma.h:769: bad fp exception: RU fma(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022)=0x1.8640492c4595ap-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:769: RU fma(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022) want 0x1.8640492c4595ap-1022 got -0x1.3271a1b37ffep-1027 ulperr -7033839486500864.000 = -0x1.8fd3d6p+52 + 0x1.000132p-1
src/math/special/fma.h:770: RU fma(0x1.f52172c56bdf5p-1022,0x1.672b2de422734p-2,0x1.7bc5d708e5a34p-1022) want 0x1.15c5b95145cc7p-1021 got 0x1.3cf4f71d18801p-1021 ulperr 689341714137088.000 = 0x1.3979fp+49 + 0x1.ffb0c2p-2
src/math/special/fma.h:771: bad fp exception: RU fma(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022)=0x1.e7fa0dd76fbfp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:771: RU fma(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022) want 0x1.e7fa0dd76fbfp-1022 got -0x1.60a5d541afffcp-1024 ulperr -10135538703007744.000 = -0x1.2011cp+53 + 0x1.000b06p-1
src/math/special/fma.h:772: bad fp exception: RU fma(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022)=0x1.b63a7f56fce2p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:772: RU fma(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022) want 0x1.b63a7f56fce2p-1022 got -0x1.497a9bc51fffcp-1024 ulperr -9158460486713344.000 = -0x1.044c92p+53 + 0x1.000a4cp-1
src/math/special/fma.h:773: RU fma(0x1.f73d5f4e81fd8p-1022,0x1.7ccff2642124ap-2,0x1.e7d836a0c8308p-1022) want 0x1.517f1763126d4p-1021 got -0x1.06939f3371fffp-1021 ulperr -10556596895612928.000 = -0x1.2c095ap+53 + 0x1.0020d2p-1
src/math/special/fma.h:774: RU fma(0x1.b4328925969fbp-1022,0x1.8fa02832a22d5p-2,0x1.2084598e2f8c6p-1022) want 0x1.cabf43838dc52p-1022 got -0x1.7c61d65f0a3ffp-1022 ulperr -14762118276448256.000 = -0x1.a3908cp+53 + 0x1.002f8cp-1
src/math/special/fma.h:775: bad fp exception: RU fma(0x1.66ee60a92676fp-1022,0x1.eddd2e7681ce4p-2,0x1.b81d57daeb3a7p-1022)=0x1.329c918ffb683p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:775: RU fma(0x1.66ee60a92676fp-1022,0x1.eddd2e7681ce4p-2,0x1.b81d57daeb3a7p-1022) want 0x1.329c918ffb683p-1021 got 0x1.cd379885b8008p-1025 ulperr -4886854591578112.000 = -0x1.15c918p+52 + 0x1.fff8ccp-2
src/math/special/fma.h:776: bad fp exception: RU fma(0x1.ff2737585895dp-1022,0x1.fb4bf3828ae4ap-2,0x1.4a866847740fp-1022)=0x1.23e07e4dbbeabp-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:776: RU fma(0x1.ff2737585895dp-1022,0x1.fb4bf3828ae4ap-2,0x1.4a866847740fp-1022) want 0x1.23e07e4dbbeabp-1021 got 0x1.46c53f7571002p-1023 ulperr -3697601232764928.000 = -0x1.a45e5cp+51 + 0x1.ffeb94p-2
src/math/special/fma.h:777: bad fp exception: RU fma(0x1.5e2008d269a86p-1022,0x1.507bbbe4d78eep-2,0x1.6220c6f83f636p-1022)=0x1.d52d9874f1c75p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:777: RU fma(0x1.5e2008d269a86p-1022,0x1.507bbbe4d78eep-2,0x1.6220c6f83f636p-1022) want 0x1.d52d9874f1c75p-1022 got 0x1.eda0503c4a002p-1023 ulperr -3911886277967872.000 = -0x1.bcbaep+51 + 0x1.ffc24cp-2
src/math/special/fma.h:778: bad fp exception: RU fma(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022)=0x1.9864925e2fb1p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:778: RU fma(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022) want 0x1.9864925e2fb1p-1022 got -0x1.53ae580e8bff8p-1025 ulperr -7931489261977600.000 = -0x1.c2da5cp+52 + 0x1.00054ep-1
src/math/special/fma.h:779: RU fma(0x1.7b353b81e793dp-1022,0x1.82b426f874c6dp-2,0x1.d92b19d21fd5cp-1022) want 0x1.342fb0c544a79p-1021 got 0x1.2af4c8aebe401p-1022 ulperr -2792024021401600.000 = -0x1.3d6a98p+51 + 0x1.ffdaa2p-2
src/math/special/fma.h:780: bad fp exception: RU fma(0x1.5be667823370ap-1022,0x1.a8a99b163869bp-2,0x1.95456b68dc3bcp-1022)=0x1.12c638de03c71p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:780: RU fma(0x1.5be667823370ap-1022,0x1.a8a99b163869bp-2,0x1.95456b68dc3bcp-1022) want 0x1.12c638de03c71p-1021 got 0x1.49af7fc787002p-1023 ulperr -3383908095754240.000 = -0x1.80b4bp+51 + 0x1.ffeb66p-2
src/math/special/fma.h:781: bad fp exception: RU fma(0x1.17b0fc6c850e5p-1022,0x1.d1d0a4853c315p-2,0x1.36b79f7c0c24p-1022)=0x1.b5f2baff5635dp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:781: RU fma(0x1.17b0fc6c850e5p-1022,0x1.d1d0a4853c315p-2,0x1.36b79f7c0c24p-1022) want 0x1.b5f2baff5635dp-1022 got 0x1.6a1930472401p-1026 ulperr -7306333686595584.000 = -0x1.9f5126p+52 + 0x1.fffa58p-2
src/math/special/fma.h:782: RU fma(0x1.bd97819bacfd8p-1022,0x1.2c25f267ba4eep-2,0x1.804b5204a3f3ap-1022) want 0x1.01739c190fd97p-1021 got 0x1.b9e166e6b4001p-1022 ulperr -642314640818176.000 = -0x1.241744p+49 + 0x1.ffc8c4p-2
src/math/special/fma.h:783: RU fma(0x1.596577053873dp-1022,0x1.3562ab2d29949p-2,0x1.b3f1ee75db6e7p-1022) want 0x1.0e268a498009bp-1021 got 0x1.e8136bc159401p-1022 ulperr -459377991483392.000 = -0x1.a1cd46p+48 + 0x1.ffc2fep-2
src/math/special/fma.h:784: bad fp exception: RU fma(0x1.3c7a68cf0f7b3p-1022,0x1.9a55c15b167bdp-2,0x1.7635b7b163c07p-1022)=0x1.f5073b93b7b81p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:784: RU fma(0x1.3c7a68cf0f7b3p-1022,0x1.9a55c15b167bdp-2,0x1.7635b7b163c07p-1022) want 0x1.f5073b93b7b81p-1022 got 0x1.75f9a97213802p-1023 ulperr -5524660993130496.000 = -0x1.3a0a66p+52 + 0x1.ffd14p-2
src/math/special/fma.h:785: RU fma(0x1.5825164bc4068p-1022,0x1.dcbb6e5ff3245p-2,0x1.52fc3be0e84dap-1022) want 0x1.f334771c2dcfbp-1022 got 0x1.2b86ba6b02001p-1022 ulperr -3512783958179840.000 = -0x1.8f5b78p+51 + 0x1.ffb51ep-2
src/math/special/fma.h:786: RU fma(0x1.139ea77b760ecp+1022,0x1.9b25f2fd017eap+2,-0x1.bc16788922b6fp+1023) want 0x1.b93aac527380fp+1023 got 0x1.c3ec4f2ee0001p+1022 ulperr -3787028357447680.000 = -0x1.ae8908p+51 + 0x1.ffc782p-2
src/math/special/fma.h:787: RU fma(0x1.0e6f9c1657d7cp+1022,0x1.4d5c6b55ab5f1p+2,-0x1.e027dd5742e2cp+1023) want 0x1.c0538372b4bbfp+1022 got 0x1.54dede6de0001p+1021 ulperr -4888708943708160.000 = -0x1.15e414p+52 + 0x1.ffd564p-2
src/math/special/fma.h:788: RU fma(0x1.1182524fa411cp+1022,0x1.a3dba56842d19p+2,-0x1.c1ad59474d71fp+1023) want 0x1.bf78969300a77p+1023 got 0x1.8651491ef0001p+1022 ulperr -4438724683235328.000 = -0x1.f89fe4p+51 + 0x1.ffcf36p-2
src/math/special/fma.h:789: RU fma(0x1.1cbf4fb8ec82p+1022,0x1.5e32019a84fbbp+2,-0x1.985af08f32edep+1023) want 0x1.72af6bbad4a29p+1023 got 0x1.a68c1c1ec0001p+1023 ulperr 912367152005120.000 = 0x1.9ee584p+49 + 0x1.ff965cp-2
src/math/special/fma.h:790: RU fma(0x1.311e25c6db346p+1022,0x1.4e30db6c4b51dp+2,-0x1.7681f7a9786a7p+1023) want 0x1.a61d29434fc14p+1023 got -0x1.791d1988fffffp+1017 ulperr -7529566222417920.000 = -0x1.ac019cp+52 + 0x1.0000bcp-1
src/math/special/fma.h:791: RU fma(0x1.1201cf577052fp+1022,0x1.59730b2db7a16p+2,-0x1.56f1a64a078d5p+1023) want 0x1.8c8d801df34dap+1023 got -0x1.3048609fd7fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.001304p-1
src/math/special/fma.h:792: RU fma(0x1.3e52335b76e81p+1022,0x1.4dbd56f857479p+2,-0x1.509340c11bd2ep+1023) want 0x1.ed6576837f654p+1023 got -0x1.e498d5441bfffp+1022 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.001e4ap-1
src/math/special/fma.h:793: RU fma(0x1.18566b4f843cbp+1022,0x1.444fba10eaf29p+2,-0x1.f927beae57f0ap+1023) want 0x1.9a433b979655ap+1022 got 0x1.a048d2820c001p+1022 ulperr 105937230626816.000 = 0x1.8165bcp+46 + 0x1.004bf6p-1
src/math/special/fma.h:794: RU fma(0x1.3fbe544fe1be8p+1022,0x1.2d2a5fda03639p+2,-0x1.007407dbfd03cp+1023) want 0x1.efdb644b613e6p+1023 got -0x1.e14223655ffffp+1022 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.001e14p-1
src/math/special/fma.h:795: RU fma(0x1.263a0d3bc2e4p+1022,0x1.4cc198adbc651p+2,-0x1.734b1c1f7fdb8p+1023) want 0x1.899878afc0fa3p+1023 got 0x1.a136204480001p+1023 ulperr 415454233362432.000 = 0x1.79da7ap+48 + 0x1.ff97b2p-2
src/math/special/fma.h:796: RU fma(0x1.5bf4aec8efc8ep+1022,0x1.555f0341516c9p+2,-0x1.c706408acd14cp+1023) want 0x1.d8f5e18b868bdp+1023 got 0x1.3e5679fdf8001p+1022 ulperr -5520279589617664.000 = -0x1.39caa4p+52 + 0x1.ffd836p-2
src/math/special/fma.h:797: RU fma(0x1.1e57f1af78279p+1022,0x1.34bc0c7f082b3p+2,-0x1.497b92c1365edp+1023) want 0x1.692cb7ec68a94p+1023 got -0x1.c0a1f29b27fffp+1021 ulperr -8326959113175040.000 = -0x1.d95534p+52 + 0x1.000e06p-1
src/math/special/fma.h:798: RU fma(0x1.1d9824cd73511p+1022,0x1.1d557ddfe47ffp+2,-0x1.556cdb1d20a72p+1023) want 0x1.2736a6b6e35f3p+1023 got 0x1.bc6f9c9778001p+1021 ulperr -3238800209739776.000 = -0x1.70357ep+51 + 0x1.ffe43ap-2
src/math/special/fma.h:799: RU fma(0x1.1ff85a24aff31p+1022,0x1.39ab374b2680dp+2,-0x1.35e6b07b651b8p+1023) want 0x1.8bc7ce2087081p+1023 got 0x1.84b319bafa001p+1023 ulperr -124568110891008.000 = -0x1.c52d18p+46 + 0x1.ff9ed4p-2
src/math/special/fma.h:800: RU fma(0x1.0449b3965227ep+1022,0x1.4430d4441f9f2p+2,-0x1.a6966c96307ep+1023) want 0x1.d94eda8c81772p+1022 got -0x1.992ed6b71ffffp+1021 ulperr -11925733685329920.000 = -0x1.52f322p+53 + 0x1.001992p-1
src/math/special/fma.h:801: RU fma(0x1.3c91fa00fd0c7p+1022,0x1.1b6661c0b0303p+2,-0x1.f1f2846b64483p+1023) want 0x1.95eae0d2644d4p+1022 got 0x1.9985d8eaa0001p+1019 ulperr -6240425346072576.000 = -0x1.62ba24p+52 + 0x1.00799ap-1
src/math/special/fma.h:802: RU fma(0x1.0979b36d46534p+1022,0x1.12fa205f41f7fp+2,-0x1.a83ecf4544a63p+1023) want 0x1.2420f34e2aa3dp+1022 got -0x1.335a0fe67ffffp+1019 ulperr -5815056080044032.000 = -0x1.4a8c34p+52 + 0x1.ff099ap-2
src/math/special/fma.h:803: RU fma(0x1.4c89df582a599p+1022,0x1.55f3dc473ea8fp+2,-0x1.e35037292ddfp+1023) want 0x1.95109fdbc3772p+1023 got -0x1.afa3b29623fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.001afap-1
src/math/special/fma.h:804: RU fma(0x1.35ee0a669c4fbp+1022,0x1.2263cb63f386ap+2,-0x1.449218ae35ac7p+1023) want 0x1.7a8ed977d817bp+1023 got 0x1.47da9ddfb8001p+1022 ulperr -3775828693352448.000 = -0x1.ad4314p+51 + 0x1.ffd704p-2
src/math/special/fma.h:805: RU fma(0x1.117cc860f61bcp+1022,0x1.440985b25d994p+2,-0x1.d7a7d82000449p+1023) want 0x1.b960b7088e75p+1022 got 0x1.ddfba372c0001p+1022 ulperr 643964982001664.000 = 0x1.24d764p+49 + 0x1.00444p-1
src/math/special/fma.h:806: RU fma(0x1.1e78a37be320fp+1022,0x1.0db0fce62287bp+2,-0x1.376337da5eb53p+1023) want 0x1.24326b9956dfcp+1023 got -0x1.d2881b3595fffp+1023 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.003a52p-1
src/math/special/fma.h:807: RU fma(0x1.0c79b5c8331c2p+1022,0x1.0aba6ea746b5p+2,-0x1.c86f1fcaf0741p+1023) want 0x1.9c135bb2cff85p+1021 got -0x1.cc298babfffffp+1019 ulperr -9273125376098304.000 = -0x1.078edep+53 + 0x1.fe1cc2p-2
src/math/special/fma.h:808: RU fma(0x1.556c4c072f272p+1022,0x1.347758d7d4eb5p+2,-0x1.c6fe4f24b248dp+1023) want 0x1.6fcc9f756df6ep+1023 got -0x1.f6f4c76597fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.001f7p-1
src/math/special/fma.h:809: RU fma(-0x1.e8349b891b2fp-1,0x1.4a6dec9b72578p-1,0x1.3b6151ce809ddp-1) want 0x1.3a62fe330b356p-11 got -0x1.d97120fffffffp-11 ulperr -13859626462216192.000 = -0x1.89ea0ep+53 + 0x1.003b2ep-1
src/math/special/fma.h:810: RU fma(0x1.2996632ac7d74p-1,-0x1.bb3c58b654d94p-1,0x1.01a6660e64a31p-1) want 0x1.ed045bb956a8fp-15 got -0x1.070d61fffffffp-15 ulperr -13300911346548736.000 = -0x1.7a08dep+53 + 0x1.0aa0e2p-1
src/math/special/fma.h:811: RU fma(-0x1.c602e894c1df8p-1,0x1.a1c980e7d3f94p-1,0x1.7271244b43386p-1) want -0x1.ba251fe026e5bp-15 got -0x1.af2b6cp-15 ulperr 193081311756288.000 = 0x1.5f367ep+47 + 0x1.fa6bcap-2
src/math/special/fma.h:812: RU fma(-0x1.c84baf47e85cp-1,0x1.770b5149ef2ep-1,0x1.4d80f139320bap-1) want -0x1.79277433b9e23p-10 got 0x1.d4b6fp-11 ulperr 10757823629623296.000 = 0x1.31c178p+53 + 0x1.ffc56ap-2
src/math/special/fma.h:813: RU fma(-0x1.36e667dcf9c6p-1,0x1.2591f82556b88p-1,0x1.2452a0f795f95p-1) want 0x1.c83c8e63c15ap-3 got -0x1.221ccbfffffffp-12 ulperr -8036166204915712.000 = -0x1.c8cd9cp+52 + 0x1.000012p-1
src/math/special/fma.h:814: RU fma(0x1.88b2cede61e4cp-1,-0x1.71dcab5ad9e9p-3,0x1.32b27fea2ae97p-3) want 0x1.70461909b25e3p-7 got -0x1.affe57fffffffp-17 ulperr -6486162973655040.000 = -0x1.70b218p+52 + 0x1.00000ep-1
src/math/special/fma.h:815: RU fma(0x1.8d1e44002c98p-3,-0x1.af9fdfb347834p-1,0x1.e280942fb4146p-4) want -0x1.761ac23896dfdp-5 got 0x1.0bec48p-14 ulperr 6590522625884160.000 = 0x1.76a0bap+52 + 0x1.ffffdep-2
src/math/special/fma.h:816: RU fma(0x1.236e8cb9492c8p-1,-0x1.d37443a57f1c4p-1,0x1.ca10df801aabcp-4) want -0x1.a1a2cdf0138f9p-2 got 0x1.f090cab7p-5 ulperr 8439088898113536.000 = 0x1.dfb4e8p+52 + 0x1.fff07cp-2
src/math/special/fma.h:817: RU fma(-0x1.6ad943e610fb8p-1,-0x1.cef92a7bb18bcp-1,0x1.f28587d8fb0ep-4) want 0x1.866b5204b9aedp-1 got -0x1.8c9eb9a6fffffp-5 ulperr -7304415446827008.000 = -0x1.9f353cp+52 + 0x1.00031ap-1
src/math/special/fma.h:818: RU fma(-0x1.60a8569a5d894p-1,-0x1.ca07e29dd171cp-1,0x1.b6c475ace09ecp-4) want 0x1.72549291e2f7bp-1 got -0x1.b6fd181e7ffffp-5 ulperr -6997593720619008.000 = -0x1.8dc464p+52 + 0x1.00036ep-1
src/math/special/fma.h:819: RU fma(0x1.d1962720d678cp-1,-0x1.4548ee45c4084p-1,0x1.f416ab193d75cp-4) want -0x1.d2929879dc853p-2 got 0x1.fc38e6f4p-8 ulperr 8347732259373056.000 = 0x1.da837ep+52 + 0x1.fffe04p-2
src/math/special/fma.h:820: RU fma(-0x1.9ddcb295a7d64p-1,0x1.67fb3a2068a78p-1,0x1.da9cd4597fe0ap-4) want -0x1.cf4f6eb4fc5d8p-2 got 0x1.59da5512p-6 ulperr 8530910467063808.000 = 0x1.e4ed16p+52 + 0x1.fffa98p-2
src/math/special/fma.h:821: RU fma(0x1.c00d16ed45b88p+0,0x1.c787eddda3664p+0,0x1.1e3e6f0cc1802p-5) want 0x1.931b8f379dcc4p+1 got -0x1.63fb63b7fffffp-6 ulperr -7140470102687744.000 = -0x1.95e384p+52 + 0x1.000058p-1
src/math/special/fma.h:822: RU fma(0x1.19c2a2372c184p+0,-0x1.cb506961c19fp+0,0x1.db1abf3f7ba3ap-6) want -0x1.f21c0eab0bc18p+0 got 0x1.a29607ffffff8p-13 ulperr 8763735812341760.000 = 0x1.f22924p+52 + 0x1.fffffcp-2
src/math/special/fma.h:823: RU fma(-0x1.3a263218ccd1cp+0,-0x1.e818d390df27cp+0,0x1.2a81ed71785f5p-5) want 0x1.3025ab0f63926p+1 got -0x1.bfdf0b9bfffffp-6 ulperr -5412167746584576.000 = -0x1.33a568p+52 + 0x1.00007p-1
src/math/special/fma.h:824: RU fma(0x1.b0b041fbaca58p+0,-0x1.9d5f76d178e6p+0,0x1.0215c7bb84cf9p-6) want -0x1.5b52aec7ef4p+1 got 0x1.6be7a78p-7 ulperr 6135178246225920.000 = 0x1.5cbe98p+52 + 0x1.ffffa6p-2
src/math/special/fma.h:825: RU fma(-0x1.377549d9a87f4p+0,-0x1.a13d4a03dd6d8p+0,0x1.f190388bc5cc6p-7) want 0x1.ff83bebbd6fe5p+0 got -0x1.e5a6a43ffffffp-9 ulperr -9015346807701504.000 = -0x1.003b48p+53 + 0x1.00001ep-1
src/math/special/fma.h:826: RU fma(0x1.6a726c0762ac8p-1,-0x1.d32f2d30e483cp+0,0x1.f953eb70fbde6p-7) want -0x1.46c61b3070332p+0 got 0x1.e556e47fffffep-11 ulperr 5752835962568704.000 = 0x1.4702c8p+52 + 0x1.fffffp-2
src/math/special/fma.h:827: RU fma(0x1.94cf2509d40cp-1,0x1.721976af6dfbp+0,0x1.f51a456921c3ep-7) want 0x1.28880842acc61p+0 got -0x1.effe1dfffffffp-8 ulperr -5250719389057024.000 = -0x1.2a7806p+52 + 0x1.00003ep-1
src/math/special/fma.h:828: RU fma(0x1.b128eb0ad8728p-1,0x1.7682566a54268p+0,0x1.bd4122a074cafp-8) want 0x1.3e9469530e763p+0 got -0x1.6fe0c7bffffffp-9 ulperr -5617153650720768.000 = -0x1.3f4c58p+52 + 0x1.000016p-1
src/math/special/fma.h:829: RU fma(0x1.c4ae75976e35cp+0,-0x1.11c329dd1160cp+0,0x1.9993f5e13c9bdp-8) want -0x1.e27d925b07cf1p+0 got 0x1.198edf6p-9 ulperr 8497737213411328.000 = 0x1.e30a5ap+52 + 0x1.ffffdcp-2
src/math/special/fma.h:830: RU fma(-0x1.85f81f88fa3c4p+0,-0x1.17648a494fa18p-1,0x1.37d305113b48p-10) want 0x1.aa367b7490e58p-1 got -0x1.7a59ecffffffep-12 ulperr -7501265072291840.000 = -0x1.aa65c6p+52 + 0x1.000006p-1
src/math/special/fma.h:831: RU fma(-0x1.311f2b4319efcp+0,0x1.abbb5272e3d18p-1,0x1.35841b7bdbcfep-10) want -0x1.fd337f24b39ep-1 got 0x1.4cbc317ffffffp-11 ulperr 8963678351130624.000 = 0x1.fd86bp+52 + 0x1.ffffecp-2
src/math/special/fma.h:832: RU fma(0x1.ab94369a9a0dp-1,0x1.9d1e0e0aa3bacp+0,0x1.0a63ca87cfa78p-11) want 0x1.592173ee296b7p+0 got -0x1.fd8043ffffff8p-13 ulperr -6072696672616448.000 = -0x1.59315ep+52 + 0x1.000002p-1
src/math/special/fma.h:833: RN fma(0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want 0x1.000000001p-1030 got 0x1p-1038 ulperr -17523466567680.000 = -0x1.fep+43 + -0x1p-28
src/math/special/fma.h:834: RN fma(-0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want -0x1.000000003p-1030 got -0x1p-1038 ulperr 17523466567680.000 = 0x1.fep+43 + 0x1p-28
src/math/special/fma.h:835: RD fma(0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want 0x1.000000001p-1030 got 0x1p-1038 ulperr -17523467616256.000 = -0x1.fe0002p+43 + -0x1p-28
src/math/special/fma.h:836: RD fma(-0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want -0x1.00000000301p-1030 got -0x1.000000001p-1038 ulperr 17523466567680.000 = 0x1.fep+43 + -0x1p+0
src/math/special/fma.h:837: RU fma(0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want 0x1.00000000101p-1030 got 0x1.000000001p-1038 ulperr -17523466567680.000 = -0x1.fep+43 + 0x1p+0
src/math/special/fma.h:838: RU fma(-0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want -0x1.000000003p-1030 got -0x1p-1038 ulperr 17523467616256.000 = 0x1.fe0002p+43 + 0x1p-28
src/math/special/fma.h:839: RZ fma(0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want 0x1.000000001p-1030 got 0x1p-1038 ulperr -17523466567680.000 = -0x1.fdfffep+43 + -0x1p-28
src/math/special/fma.h:840: RZ fma(-0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want -0x1.000000003p-1030 got -0x1p-1038 ulperr 17523466567680.000 = 0x1.fdfffep+43 + 0x1p-28
src/math/special/fma.h:841: RN fma(-0x1p-1000,0x1.000001p-74,0x1p-1022) want 0x1.ffffffffffffep-1023 got 0x1.ffep-1023 ulperr -1099511627776.000 = -0x1p+40 + 0x1p-24
src/math/special/fma.h:842: RU fma(-0x1p-1000,0x1.000001p-74,0x1p-1022) want 0x1.ffffffffffffep-1023 got 0x1.ffe0000000002p-1023 ulperr -1099511562240.000 = -0x1.fffffep+39 + 0x1p-24
src/math/special/fma.h:843: RD fma(-0x1p-1000,0x1.000001p-74,0x1p-1022) want 0x1.ffffffffffffcp-1023 got 0x1.ffep-1023 ulperr -1099511627776.000 = -0x1p+40 + -0x1.fffffep-1
src/math/special/fma.h:844: RZ fma(-0x1p-1000,0x1.000001p-74,0x1p-1022) want 0x1.ffffffffffffcp-1023 got 0x1.ffep-1023 ulperr -1099511562240.000 = -0x1.fffffcp+39 + -0x1.fffffep-1
FAIL src/math/fma.exe [status 1]
src/math/sanity/fma.h:1: RN fmal(-0x1.02239f3c6a8f1p+3,0x1.22484b9ef31fp+2,0x1.52fb12ef638a1p-1) want -0x1.1f69545c32effp+5 got -0x1.9ee52705ep+4 ulperr 1406739496828928.000 = 0x1.3fdb04p+50 + -0x1.759846p-3
src/math/sanity/fma.h:2: RN fmal(0x1.161868e18bc67p+2,-0x1.1c6a6cdce75e8p+3,0x1.ab3ff8575b21dp-5) want -0x1.348be0b9d32d3p+5 got -0x1.c8a99f416p+3 ulperr 3419582362550272.000 = 0x1.84c2f2p+51 + 0x1.b43916p-3
src/math/sanity/fma.h:3: RN fmal(-0x1.0c34b3e01e6e7p+3,-0x1.61bde29e83f6dp+1,0x1.eb4a2e7ce0693p+2) want 0x1.ed6e27fca81b7p+4 got 0x1.487be8a56cp+2 ulperr -7235829650948096.000 = -0x1.9b4f2ep+52 + -0x1.f11488p-2
src/math/sanity/fma.h:4: RN fmal(-0x1.a206f0a19dcc4p+2,0x1.24527f7b576acp+2,-0x1.95882b433fad3p-1) want -0x1.ea02e2365f336p+4 got 0x1.2e3092a8ap+3 ulperr 11278458491502592.000 = 0x1.408d96p+53 + 0x1.41da3ap-2
src/math/sanity/fma.h:5: RN fmal(0x1.288bbb0d6a1e6p+3,0x1.33edd910a3c01p+2,-0x1.1e159e36313eep-1) want 0x1.603abfa620e23p+5 got -0x1.7341dbb0dp+2 ulperr -7012890246643712.000 = -0x1.8ea2fcp+52 + -0x1.7be8ccp-3
src/math/special/fma.h:42: RN fmal(0x1p+0,0x1p+0,-0x1p-1074) want 0x1p+0 got -0x1.fffffp-43 ulperr -4503599627370496.000 = -0x1p+52 + 0x0p+0
src/math/special/fma.h:43: bad fp exception: RN fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022)=0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:43: RN fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.fffffffffffffp-1022 got 0x1p-1074 ulperr -9007199254740992.000 = -0x1p+53 + 0x0p+0
src/math/special/fma.h:44: bad fp exception: RN fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022)=0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:44: RN fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.fffffffffffffp-1022 got -0x0p+0 ulperr -9007199254740992.000 = -0x1p+53 + 0x0p+0
src/math/special/fma.h:45: bad fp exception: RN fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:45: RN fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.fffffffffffffp-1022 got -0x1p-1074 ulperr 9007199254740992.000 = 0x1p+53 + 0x0p+0
src/math/special/fma.h:46: bad fp exception: RN fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:46: RN fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.fffffffffffffp-1022 got 0x0p+0 ulperr 9007199254740992.000 = 0x1p+53 + 0x0p+0
src/math/special/fma.h:47: RN fmal(0x1p-1074,-0x1p-1074,0x1p-1074) want 0x1p-1074 got -0x0p+0 ulperr -1.000 = -0x1p+0 + 0x0p+0
src/math/special/fma.h:48: RN fmal(0x1p-1074,-0x1p-1074,-0x1p-1074) want -0x1p-1074 got -0x0p+0 ulperr 1.000 = 0x1p+0 + 0x0p+0
src/math/special/fma.h:49: RN fmal(0x1.0000000000001p+0,0x1p+0,0x1p+53) want 0x1.0000000000001p+53 got 0x1.000008p+12 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:50: RN fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p+53) want 0x1.0000000000001p+53 got 0x1.ffc02p+10 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:51: RN fmal(0x1p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp+53) want 0x1.fffffffffffffp+53 got -0x1.ffffep+10 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:52: RN fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep+53) want 0x1.fffffffffffffp+53 got 0x1.ffc02p+10 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:53: RN fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p-52) want 0x1.0000000000001p+0 got -0x1.fffffp-42 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:54: RN fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp-53) want 0x1.0000000000001p+0 got -0x1.fffff8p-41 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:55: RN fmal(0x1.0000000000005p+0,0x1.ffffffffffffbp-1,0x1p-52) want 0x1.0000000000003p+0 got -0x1.8fffff8p-37 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:56: RN fmal(0x1.0000000000006p+0,0x1.ffffffffffffdp-1,0x1p-52) want 0x1.0000000000005p+0 got -0x1.1fffff8p-37 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:75: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff5p+0 got 0x1.6800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:76: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1p+0) want 0x1.ffffffffffff9p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:77: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffff7p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:78: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffff5p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:79: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffff7p+0 got 0x1.f800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:80: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffff5p+0 got 0x1.f800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:81: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffff7p+0 got 0x1.2000004p-36 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:82: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffff5p+0 got 0x1.2000004p-36 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:83: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.fffffffffffffp-1) want 0x1.ffffffffffff7p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:84: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffff5p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:85: RN fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff3p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:86: RN fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep-1) want 0x1.fffffffffffffp+0 got -0x1.fffffp-42 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:87: RN fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffp-42 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:88: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.fffffffffffffp-1) want 0x1.fffffffffffffp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:89: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:90: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:91: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1p+0) want 0x1.fffffffffffffp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:92: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:93: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:94: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:95: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:96: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffffdp+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:97: RN fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffbp+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:98: RN fmal(0x1.5872449b765b9p+0,0x1.c9acf91f8de2bp+0,0x1.9265607e4d168p+0) want 0x1.fd190c77c2a67p+1 got -0x1.b3fc37bedp-4 ulperr -9195829923414016.000 = -0x1.055c78p+53 + -0x1.fffc98p-2
src/math/special/fma.h:99: RN fmal(0x1.81d010b146d0ep+0,0x1.2d3c680dc9071p+0,0x1.a80b69538754cp+0) want 0x1.b7040b44973a7p+1 got 0x1.4d0cb20197p+1 ulperr -1864177270390784.000 = -0x1.a7dd66p+50 + 0x1.ffacbcp-2
src/math/special/fma.h:100: RN fmal(0x1.6a44f2252b6a2p+0,0x1.da452a378b832p+0,0x1.1fe2ce329104p+0) want 0x1.df842b6f48b13p+1 got 0x1.12e95c1ba4p+0 ulperr -6017592242208768.000 = -0x1.560f7ep+52 + 0x1.ffdda2p-2
src/math/special/fma.h:101: RN fmal(0x1.096b1d26463eep+0,0x1.d846d3e34333p+0,0x1.721e3480922b8p+0) want 0x1.ade2909c0269fp+1 got -0x1.a139d9b2cp-1 ulperr -9397596749561856.000 = -0x1.0b1884p+53 + -0x1.ffe5ecp-2
src/math/special/fma.h:102: RN fmal(0x1.99bd3434c454bp+0,0x1.03cb8e4115bdep+0,0x1.109f107188b08p+0) want 0x1.5837a47d37fafp+1 got 0x1.cfdec0c00ap+0 ulperr -1975290892910592.000 = -0x1.c1211p+50 + 0x1.ffc604p-2
src/math/special/fma.h:103: RN fmal(0x1.ba930a0a78ed2p+0,0x1.8c24e8d67f636p+0,0x1.ac49dbfbf8affp+0) want 0x1.164947ae6a5d9p+2 got -0x1.33e3b04edp-2 ulperr -5234191281160192.000 = -0x1.298782p+52 + -0x1.fffb3p-2
src/math/special/fma.h:104: RN fmal(0x1.be224ad773191p+0,0x1.d96b77169731fp+0,0x1.662cfb75d8edep+0) want 0x1.27cd67e720f79p+2 got 0x1.e4711611c78p+1 ulperr -942615600037888.000 = -0x1.aca6e6p+49 + 0x1.ffc372p-2
src/math/special/fma.h:105: RN fmal(0x1.59e7a1b0bdb3cp+0,0x1.2decba4d46421p+0,0x1.88f4062e96df5p+0) want 0x1.90749e4794f79p+1 got -0x1.b3c84a9a88p-1 ulperr -8961479327875072.000 = -0x1.fd66bp+52 + -0x1.ffe4c4p-2
src/math/special/fma.h:106: RN fmal(0x1.22edf4b4da9a7p+0,0x1.dfa8d65f506cdp+0,0x1.2799208da2fbap+0) want 0x1.a45a1e99ed7a9p+1 got 0x1.a0bdfb8976p-1 ulperr -5562059957731328.000 = -0x1.3c2aap+52 + 0x1.ffe5f4p-2
src/math/special/fma.h:107: RN fmal(0x1.ad5b991a2a279p+0,0x1.f02fd26706024p+0,0x1.831cdd5c8797cp+0) want 0x1.30d3a2ac90a61p+2 got 0x1.c7c15e1c82p+1 ulperr -1353701616779264.000 = -0x1.33cbcep+50 + 0x1.ffc708p-2
src/math/special/fma.h:108: RN fmal(0x1.531f9620e764ap+0,0x1.cad61b54d4425p+0,0x1.df817cae8a9afp+0) want 0x1.0fd4e7f8671ddp+2 got 0x1.8e74e26059p+1 ulperr -1277252138434560.000 = -0x1.2269dcp+50 + 0x1.ffce32p-2
src/math/special/fma.h:109: RN fmal(0x1.629a5ad79494fp+0,0x1.049e58693f4c4p+0,0x1.45b0109e4d00cp+0) want 0x1.5758154e14965p+1 got -0x1.01173c9c2p-3 ulperr -6322847379095552.000 = -0x1.67698ap+52 + -0x1.fffbfcp-2
src/math/special/fma.h:110: RN fmal(0x1.2f52b53f9240ap+0,0x1.1d5c686dbb0dap+0,0x1.6da3e392a4fd4p+0) want 0x1.5fe03a6795913p+1 got 0x1.5bdb7d9084p+0 ulperr -3130480329228288.000 = -0x1.63e4f8p+51 + 0x1.ffd484p-2
src/math/special/fma.h:111: RN fmal(0x1.058667552b49ep+0,0x1.23307bacc1c42p+0,0x1.5b059b47cd8f5p+0) want 0x1.423f752486d13p+1 got -0x1.4bfb042744p+0 ulperr -8589176530272256.000 = -0x1.e83cf8p+52 + -0x1.ffd68p-2
src/math/special/fma.h:112: RN fmal(0x1.a717d95337ed8p+0,0x1.2b1c37846aaadp+0,0x1.be65672f885b1p+0) want 0x1.d65e72303c075p+1 got -0x1.7e0573ec04p+1 ulperr -14995408015065088.000 = -0x1.aa31f4p+53 + -0x1.ffa07ep-2
src/math/special/fma.h:113: RN fmal(0x1.deb79287b3d32p+0,0x1.62776b829babap+0,0x1.67daf18bd2eb1p+0) want 0x1.ff5a0d45c69d7p+1 got 0x1.ad881652ap-3 ulperr -8523520438960128.000 = -0x1.e4818cp+52 + 0x1.fff94ap-2
src/math/special/fma.h:114: RN fmal(0x1.fbf12d3a6de91p+0,0x1.879fe6124f11p+0,0x1.9f3f1247a8641p+0) want 0x1.2a126c6980019p+2 got 0x1.45e3d61a84p+2 ulperr 489379780886528.000 = 0x1.bd169cp+48 + 0x1.ffae88p-2
src/math/special/fma.h:115: RN fmal(0x1.c589628460e01p+0,0x1.e1bec1c797533p+0,0x1.349f30cdb84bbp+0) want 0x1.2286118b6f6e5p+2 got -0x1.8e9d95e0668p+1 ulperr -8617206560587776.000 = -0x1.e9d4dcp+52 + -0x1.ffce2cp-2
src/math/special/fma.h:116: RN fmal(0x1.46fd6c2c924ebp+0,0x1.65e2f02e730a1p+0,0x1.37739d2751098p+0) want 0x1.804a71c1f1273p+1 got 0x1.855d7947cbp+0 ulperr -3335623268106240.000 = -0x1.7b376ap+51 + 0x1.ffcf54p-2
src/math/special/fma.h:117: RN fmal(0x1.f99e595ae11fdp+0,0x1.bd33d9a1d81bp+0,0x1.932a2a2e244c1p+0) want 0x1.409e34f8f2f89p+2 got -0x1.7a49668944p+2 ulperr -12295261934059520.000 = -0x1.5d73cep+53 + -0x1.ffa16ep-2
src/math/special/fma.h:118: RN fmal(0x1.59ea1e56bfe55p+0,0x1.6f46b7d412a44p+0,0x1.80f2bc9a32cc3p+0) want 0x1.b89c7640e32ffp+1 got -0x1.ca180bfb6p-3 ulperr -8254993714905088.000 = -0x1.d53df8p+52 + -0x1.fff8d8p-2
src/math/special/fma.h:119: RN fmal(0x1.61490fcb44129p+0,0x1.0038ec4fc35c2p+0,0x1.df7436ed7a7b7p+0) want 0x1.a085ea68d05cfp+1 got -0x1.5ed2c690f7p+1 ulperr -13499301254660096.000 = -0x1.7fac58p+53 + -0x1.ffa84cp-2
src/math/special/fma.h:120: RN fmal(0x1.d41b98788502bp+0,0x1.1a7b77843aca6p+0,0x1.05be891837d36p+0) want 0x1.8523596ceced9p+1 got -0x1.48c8fc403cp-1 ulperr -8291801584631808.000 = -0x1.d75598p+52 + -0x1.ffeb74p-2
src/math/special/fma.h:121: RN fmal(0x1.3153cf6f69af9p+0,0x1.aaa947e38e57ap+0,0x1.8519f9b590645p+0) want 0x1.c0fcab7b46369p+1 got 0x1.25f4f4bd5p-3 ulperr -7575453653008384.000 = -0x1.ae9d5cp+52 + 0x1.fffb68p-2
src/math/special/fma.h:122: RN fmal(0x1.c25a1f73581aap+0,0x1.0a51ffca372ap+0,0x1.0c77e3ebac5f3p+0) want 0x1.707ce48c7d72dp+1 got -0x1.3261c9a0ep+1 ulperr -11872436362412032.000 = -0x1.516f58p+53 + -0x1.ffb368p-2
src/math/special/fma.h:123: RN fmal(0x1.829c2cde44b7p+0,0x1.f692e86d8cb36p+0,0x1.455e72d264bfp+0) want 0x1.0f16a3b8b3f97p+2 got -0x1.684386466p+0 ulperr -6353495191977984.000 = -0x1.692786p+52 + -0x1.ffe97cp-2
src/math/special/fma.h:124: RN fmal(0x1.94729588dcc69p+0,0x1.c3bb794c6edf8p+0,0x1.9da4e94d262d2p+0) want 0x1.19d4bd84d9fd3p+2 got 0x1.e1b9a2757p-1 ulperr -3898698849320960.000 = -0x1.bb3b12p+51 + 0x1.fff0f2p-2
src/math/special/fma.h:125: RN fmal(0x1.e6a5e7e39c3d5p+0,0x1.1b69af2bdd978p+0,0x1.e7ef1eafa119cp+0) want 0x1.00ac5b44c9f31p+2 got -0x1.6777d5d394p+1 ulperr -7677358731427840.000 = -0x1.b46846p+52 + -0x1.ffd312p-2
src/math/special/fma.h:126: RN fmal(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022) want 0x1.b594d0e4368efp-1022 got -0x1.9dedc9561p-1023 ulperr -11338968138252288.000 = -0x1.4245dap+53 + -0x1.ffcc42p-2
src/math/special/fma.h:127: RN fmal(0x1.022db53c98d14p-1022,0x1.21157eef74848p-2,0x1.2f880432b1bc1p-1022) want 0x1.786ad60a02b3dp-1022 got -0x1.150255ac98p-1022 ulperr -11495199721127936.000 = -0x1.46b696p+53 + -0x1.ffbacp-2
src/math/special/fma.h:128: RN fmal(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022) want 0x1.cbb085199a3f5p-1022 got -0x1.6ed115da2f8p-1023 ulperr -11313497908445184.000 = -0x1.418c88p+53 + -0x1.ffd226p-2
src/math/special/fma.h:129: RN fmal(0x1.adbc3a9d816dep-1022,0x1.e039d4431e3cdp-2,0x1.93ceef6fe18a2p-1022) want 0x1.2eabb7dc0e2f1p-1021 got 0x1.ef7b6794e3p-1023 ulperr -3145487481831424.000 = -0x1.6599bcp+51 + 0x1.ffe108p-2
src/math/special/fma.h:130: RN fmal(0x1.645aa5c2df3afp-1022,0x1.649edfcad854fp-2,0x1.8b43e0bbaeb01p-1022) want 0x1.03af571d2b505p-1021 got 0x1.0ce86163c02p-1021 ulperr 162249436037120.000 = 0x1.272148p+47 + 0x1.ffbcc6p-2
src/math/special/fma.h:131: RN fmal(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022) want 0x1.ad9ce7fcefa3fp-1022 got -0x1.12bc4931e6p-1025 ulperr -8161980292530176.000 = -0x1.cff472p+52 + -0x1.fff76ap-2
src/math/special/fma.h:132: RN fmal(0x1.8ee3feb00c3e7p-1022,0x1.53bd9353313bcp-2,0x1.5501b57dc3b6fp-1022) want 0x1.d9598906f0bb3p-1022 got -0x1.4660b83f57p-1022 ulperr -14068955652030464.000 = -0x1.8fdd2p+53 + -0x1.ffae68p-2
src/math/special/fma.h:133: RN fmal(0x1.161225cfa61e2p-1022,0x1.b6dd69a0af5bp-2,0x1.924ffc3ead5c3p-1022) want 0x1.04be6fc25367bp-1021 got -0x1.f3ab56daa8p-1022 ulperr -8982192881401856.000 = -0x1.fe941cp+52 + -0x1.ffc18ap-2
src/math/special/fma.h:134: RN fmal(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022) want 0x1.70b6c3169f043p-1022 got -0x1.a779baefbe8p-1023 ulperr -10211413595258880.000 = -0x1.2239dp+53 + -0x1.ffcb1p-2
src/math/special/fma.h:135: RN fmal(0x1.ce0e2ea55040ep-1022,0x1.ce5a55fa3828dp-2,0x1.f2f444d50ce59p-1022) want 0x1.61ca36f5a8a79p-1021 got -0x1.173f0cea128p-1022 ulperr -8680214267691008.000 = -0x1.ed69bep+52 + -0x1.ffdd18p-2
src/math/special/fma.h:136: RN fmal(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022) want 0x1.1440cf1c105ebp-1021 got -0x1.f88fda6p-1030 ulperr -4877233864835072.000 = -0x1.153d18p+52 + -0x1.ffffcp-2
src/math/special/fma.h:137: RN fmal(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022) want 0x1.1186e1f77012dp-1021 got -0x1.2ffba526fcp-1025 ulperr -5146168610783232.000 = -0x1.24869cp+52 + -0x1.fffb4p-2
src/math/special/fma.h:138: RN fmal(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022) want 0x1.8d86310bad175p-1022 got -0x1.1b755c367f8p-1023 ulperr -9486646453993472.000 = -0x1.0da07p+53 + -0x1.ffdc92p-2
src/math/special/fma.h:139: RN fmal(0x1.fb3391a4b1d23p-1022,0x1.4d8705b057caep-2,0x1.d026cb6dae73bp-1022) want 0x1.3aad18b424c67p-1021 got -0x1.0a1784c7c6cp-1021 ulperr -10216978799132672.000 = -0x1.22624ep+53 + -0x1.ffbd7ap-2
src/math/special/fma.h:140: RN fmal(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022) want 0x1.c0048fd33a417p-1022 got -0x1.d026e457f1p-1024 ulperr -9922974329077760.000 = -0x1.1a0724p+53 + -0x1.ffe2fep-2
src/math/special/fma.h:141: RN fmal(0x1.aa9eff070281cp-1022,0x1.fab05661b48ebp-2,0x1.cbe2af6c69c6ep-1022) want 0x1.4f7ddbe122765p-1021 got 0x1.9e529858dap-1023 ulperr -4079821109854208.000 = -0x1.cfd26cp+51 + 0x1.ffe61ap-2
src/math/special/fma.h:142: RN fmal(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022) want 0x1.e0e762ee2e7c5p-1022 got -0x1.e2fe0f96ecp-1023 ulperr -12708596701724672.000 = -0x1.693336p+53 + -0x1.ffc3ap-2
src/math/special/fma.h:143: RN fmal(0x1.4dab43918a9a8p-1022,0x1.ed667442b4751p-2,0x1.3f25f82e02e3ep-1022) want 0x1.dfec0ee732dcbp-1022 got 0x1.6a41c4d18ap-1022 ulperr -2069987942465536.000 = -0x1.d6a928p+50 + 0x1.ffa57p-2
src/math/special/fma.h:144: RN fmal(0x1.7943735951931p-1022,0x1.fa6a357c5c9ddp-2,0x1.0bed44b0b71b4p-1022) want 0x1.c6803a6059abfp-1022 got 0x1.0e970cce134p-1022 ulperr -3235394032238592.000 = -0x1.6fd25cp+51 + 0x1.ffbc5ap-2
src/math/special/fma.h:145: RN fmal(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022) want 0x1.8640492c45959p-1022 got -0x1.3271a1b38p-1027 ulperr -7033839486500864.000 = -0x1.8fd3d6p+52 + -0x1.fffd9cp-2
src/math/special/fma.h:146: RN fmal(0x1.f52172c56bdf5p-1022,0x1.672b2de422734p-2,0x1.7bc5d708e5a34p-1022) want 0x1.15c5b95145cc7p-1021 got 0x1.3cf4f71d188p-1021 ulperr 689341647028224.000 = 0x1.3979eep+49 + 0x1.ffb0c2p-2
src/math/special/fma.h:147: RN fmal(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022) want 0x1.e7fa0dd76fbefp-1022 got -0x1.60a5d541bp-1024 ulperr -10135539776749568.000 = -0x1.2011c2p+53 + -0x1.ffe9f6p-2
src/math/special/fma.h:148: RN fmal(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022) want 0x1.b63a7f56fce1fp-1022 got -0x1.497a9bc52p-1024 ulperr -9158461560455168.000 = -0x1.044c94p+53 + -0x1.ffeb68p-2
src/math/special/fma.h:149: RN fmal(0x1.f73d5f4e81fd8p-1022,0x1.7ccff2642124ap-2,0x1.e7d836a0c8308p-1022) want 0x1.517f1763126d3p-1021 got -0x1.06939f3372p-1021 ulperr -10556597969354752.000 = -0x1.2c095cp+53 + -0x1.ffbe5cp-2
src/math/special/fma.h:150: RN fmal(0x1.b4328925969fbp-1022,0x1.8fa02832a22d5p-2,0x1.2084598e2f8c6p-1022) want 0x1.cabf43838dc51p-1022 got -0x1.7c61d65f0a4p-1022 ulperr -14762118276448256.000 = -0x1.a3908cp+53 + -0x1.ffa0e8p-2
src/math/special/fma.h:151: RN fmal(0x1.66ee60a92676fp-1022,0x1.eddd2e7681ce4p-2,0x1.b81d57daeb3a7p-1022) want 0x1.329c918ffb683p-1021 got 0x1.cd379885b8p-1025 ulperr -4886854591578112.000 = -0x1.15c918p+52 + 0x1.fff8ccp-2
src/math/special/fma.h:152: RN fmal(0x1.ff2737585895dp-1022,0x1.fb4bf3828ae4ap-2,0x1.4a866847740fp-1022) want 0x1.23e07e4dbbeabp-1021 got 0x1.46c53f7571p-1023 ulperr -3697601232764928.000 = -0x1.a45e5cp+51 + 0x1.ffeb94p-2
src/math/special/fma.h:153: RN fmal(0x1.5e2008d269a86p-1022,0x1.507bbbe4d78eep-2,0x1.6220c6f83f636p-1022) want 0x1.d52d9874f1c75p-1022 got 0x1.eda0503c4ap-1023 ulperr -3911886277967872.000 = -0x1.bcbaep+51 + 0x1.ffc24cp-2
src/math/special/fma.h:154: RN fmal(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022) want 0x1.9864925e2fb0fp-1022 got -0x1.53ae580e8cp-1025 ulperr -7931489798848512.000 = -0x1.c2da5ep+52 + -0x1.fff562p-2
src/math/special/fma.h:155: RN fmal(0x1.7b353b81e793dp-1022,0x1.82b426f874c6dp-2,0x1.d92b19d21fd5cp-1022) want 0x1.342fb0c544a79p-1021 got 0x1.2af4c8aebe4p-1022 ulperr -2792024021401600.000 = -0x1.3d6a98p+51 + 0x1.ffdaa2p-2
src/math/special/fma.h:156: RN fmal(0x1.5be667823370ap-1022,0x1.a8a99b163869bp-2,0x1.95456b68dc3bcp-1022) want 0x1.12c638de03c71p-1021 got 0x1.49af7fc787p-1023 ulperr -3383908364189696.000 = -0x1.80b4b2p+51 + 0x1.ffeb66p-2
src/math/special/fma.h:157: RN fmal(0x1.17b0fc6c850e5p-1022,0x1.d1d0a4853c315p-2,0x1.36b79f7c0c24p-1022) want 0x1.b5f2baff5635dp-1022 got 0x1.6a19304724p-1026 ulperr -7306334223466496.000 = -0x1.9f5128p+52 + 0x1.fffa58p-2
src/math/special/fma.h:158: RN fmal(0x1.bd97819bacfd8p-1022,0x1.2c25f267ba4eep-2,0x1.804b5204a3f3ap-1022) want 0x1.01739c190fd97p-1021 got 0x1.b9e166e6b4p-1022 ulperr -642314707927040.000 = -0x1.241746p+49 + 0x1.ffc8c4p-2
src/math/special/fma.h:159: RN fmal(0x1.596577053873dp-1022,0x1.3562ab2d29949p-2,0x1.b3f1ee75db6e7p-1022) want 0x1.0e268a498009bp-1021 got 0x1.e8136bc1594p-1022 ulperr -459377991483392.000 = -0x1.a1cd46p+48 + 0x1.ffc2fep-2
src/math/special/fma.h:160: RN fmal(0x1.3c7a68cf0f7b3p-1022,0x1.9a55c15b167bdp-2,0x1.7635b7b163c07p-1022) want 0x1.f5073b93b7b81p-1022 got 0x1.75f9a972138p-1023 ulperr -5524660993130496.000 = -0x1.3a0a66p+52 + 0x1.ffd14p-2
src/math/special/fma.h:161: RN fmal(0x1.5825164bc4068p-1022,0x1.dcbb6e5ff3245p-2,0x1.52fc3be0e84dap-1022) want 0x1.f334771c2dcfbp-1022 got 0x1.2b86ba6b02p-1022 ulperr -3512784226615296.000 = -0x1.8f5b7ap+51 + 0x1.ffb51ep-2
src/math/special/fma.h:162: RN fmal(0x1.139ea77b760ecp+1022,0x1.9b25f2fd017eap+2,-0x1.bc16788922b6fp+1023) want 0x1.b93aac527380fp+1023 got 0x1.c3ec4f2eep+1022 ulperr -3787028625883136.000 = -0x1.ae890ap+51 + 0x1.ffc782p-2
src/math/special/fma.h:163: RN fmal(0x1.0e6f9c1657d7cp+1022,0x1.4d5c6b55ab5f1p+2,-0x1.e027dd5742e2cp+1023) want 0x1.c0538372b4bbfp+1022 got 0x1.54dede6dep+1021 ulperr -4888708943708160.000 = -0x1.15e414p+52 + 0x1.ffd564p-2
src/math/special/fma.h:164: RN fmal(0x1.1182524fa411cp+1022,0x1.a3dba56842d19p+2,-0x1.c1ad59474d71fp+1023) want 0x1.bf78969300a77p+1023 got 0x1.8651491efp+1022 ulperr -4438724683235328.000 = -0x1.f89fe4p+51 + 0x1.ffcf36p-2
src/math/special/fma.h:165: RN fmal(0x1.1cbf4fb8ec82p+1022,0x1.5e32019a84fbbp+2,-0x1.985af08f32edep+1023) want 0x1.72af6bbad4a29p+1023 got 0x1.a68c1c1ecp+1023 ulperr 912367152005120.000 = 0x1.9ee584p+49 + 0x1.ff965cp-2
src/math/special/fma.h:166: RN fmal(0x1.311e25c6db346p+1022,0x1.4e30db6c4b51dp+2,-0x1.7681f7a9786a7p+1023) want 0x1.a61d29434fc13p+1023 got -0x1.791d1989p+1017 ulperr -7529566759288832.000 = -0x1.ac019ep+52 + -0x1.fffe86p-2
src/math/special/fma.h:167: RN fmal(0x1.1201cf577052fp+1022,0x1.59730b2db7a16p+2,-0x1.56f1a64a078d5p+1023) want 0x1.8c8d801df34d9p+1023 got -0x1.3048609fd8p+1022 ulperr -inf = -inf + -0x1.ffd9f6p-2
src/math/special/fma.h:168: RN fmal(0x1.3e52335b76e81p+1022,0x1.4dbd56f857479p+2,-0x1.509340c11bd2ep+1023) want 0x1.ed6576837f653p+1023 got -0x1.e498d5441cp+1022 ulperr -inf = -inf + -0x1.ffc36cp-2
src/math/special/fma.h:169: RN fmal(0x1.18566b4f843cbp+1022,0x1.444fba10eaf29p+2,-0x1.f927beae57f0ap+1023) want 0x1.9a433b9796559p+1022 got 0x1.a048d2820cp+1022 ulperr 105937222238208.000 = 0x1.8165bap+46 + -0x1.ff6812p-2
src/math/special/fma.h:170: RN fmal(0x1.3fbe544fe1be8p+1022,0x1.2d2a5fda03639p+2,-0x1.007407dbfd03cp+1023) want 0x1.efdb644b613e5p+1023 got -0x1.e14223656p+1022 ulperr -inf = -inf + -0x1.ffc3d8p-2
src/math/special/fma.h:171: RN fmal(0x1.263a0d3bc2e4p+1022,0x1.4cc198adbc651p+2,-0x1.734b1c1f7fdb8p+1023) want 0x1.899878afc0fa3p+1023 got 0x1.a13620448p+1023 ulperr 415454233362432.000 = 0x1.79da7ap+48 + 0x1.ff97b2p-2
src/math/special/fma.h:172: RN fmal(0x1.5bf4aec8efc8ep+1022,0x1.555f0341516c9p+2,-0x1.c706408acd14cp+1023) want 0x1.d8f5e18b868bdp+1023 got 0x1.3e5679fdf8p+1022 ulperr -5520279589617664.000 = -0x1.39caa4p+52 + 0x1.ffd836p-2
src/math/special/fma.h:173: RN fmal(0x1.1e57f1af78279p+1022,0x1.34bc0c7f082b3p+2,-0x1.497b92c1365edp+1023) want 0x1.692cb7ec68a93p+1023 got -0x1.c0a1f29b28p+1021 ulperr -8326959113175040.000 = -0x1.d95534p+52 + -0x1.ffe3f6p-2
src/math/special/fma.h:174: RN fmal(0x1.1d9824cd73511p+1022,0x1.1d557ddfe47ffp+2,-0x1.556cdb1d20a72p+1023) want 0x1.2736a6b6e35f3p+1023 got 0x1.bc6f9c9778p+1021 ulperr -3238800478175232.000 = -0x1.70358p+51 + 0x1.ffe43ap-2
src/math/special/fma.h:175: RN fmal(0x1.1ff85a24aff31p+1022,0x1.39ab374b2680dp+2,-0x1.35e6b07b651b8p+1023) want 0x1.8bc7ce2087081p+1023 got 0x1.84b319bafap+1023 ulperr -124568119279616.000 = -0x1.c52d1ap+46 + 0x1.ff9ed4p-2
src/math/special/fma.h:176: RN fmal(0x1.0449b3965227ep+1022,0x1.4430d4441f9f2p+2,-0x1.a6966c96307ep+1023) want 0x1.d94eda8c81771p+1022 got -0x1.992ed6b72p+1021 ulperr -11925733685329920.000 = -0x1.52f322p+53 + -0x1.ffccdap-2
src/math/special/fma.h:177: RN fmal(0x1.3c91fa00fd0c7p+1022,0x1.1b6661c0b0303p+2,-0x1.f1f2846b64483p+1023) want 0x1.95eae0d2644d3p+1022 got 0x1.9985d8eaap+1019 ulperr -6240425882943488.000 = -0x1.62ba26p+52 + -0x1.ff0cccp-2
src/math/special/fma.h:178: RN fmal(0x1.0979b36d46534p+1022,0x1.12fa205f41f7fp+2,-0x1.a83ecf4544a63p+1023) want 0x1.2420f34e2aa3dp+1022 got -0x1.335a0fe68p+1019 ulperr -5815056616914944.000 = -0x1.4a8c36p+52 + 0x1.ff099ap-2
src/math/special/fma.h:179: RN fmal(0x1.4c89df582a599p+1022,0x1.55f3dc473ea8fp+2,-0x1.e35037292ddfp+1023) want 0x1.95109fdbc3771p+1023 got -0x1.afa3b29624p+1022 ulperr -inf = -inf + -0x1.ffca0cp-2
src/math/special/fma.h:180: RN fmal(0x1.35ee0a669c4fbp+1022,0x1.2263cb63f386ap+2,-0x1.449218ae35ac7p+1023) want 0x1.7a8ed977d817bp+1023 got 0x1.47da9ddfb8p+1022 ulperr -3775828961787904.000 = -0x1.ad4316p+51 + 0x1.ffd704p-2
src/math/special/fma.h:181: RN fmal(0x1.117cc860f61bcp+1022,0x1.440985b25d994p+2,-0x1.d7a7d82000449p+1023) want 0x1.b960b7088e74fp+1022 got 0x1.ddfba372cp+1022 ulperr 643964982001664.000 = 0x1.24d764p+49 + -0x1.ff777ep-2
src/math/special/fma.h:182: RN fmal(0x1.1e78a37be320fp+1022,0x1.0db0fce62287bp+2,-0x1.376337da5eb53p+1023) want 0x1.24326b9956dfbp+1023 got -0x1.d2881b3596p+1023 ulperr -inf = -inf + -0x1.ff8b5ep-2
src/math/special/fma.h:183: RN fmal(0x1.0c79b5c8331c2p+1022,0x1.0aba6ea746b5p+2,-0x1.c86f1fcaf0741p+1023) want 0x1.9c135bb2cff85p+1021 got -0x1.cc298bacp+1019 ulperr -9273126449840128.000 = -0x1.078eep+53 + 0x1.fe1cc2p-2
src/math/special/fma.h:184: RN fmal(0x1.556c4c072f272p+1022,0x1.347758d7d4eb5p+2,-0x1.c6fe4f24b248dp+1023) want 0x1.6fcc9f756df6dp+1023 got -0x1.f6f4c76598p+1022 ulperr -inf = -inf + -0x1.ffc122p-2
src/math/special/fma.h:185: RN fmal(-0x1.e8349b891b2fp-1,0x1.4a6dec9b72578p-1,0x1.3b6151ce809ddp-1) want 0x1.3a62fe330b355p-11 got -0x1.d97121p-11 ulperr -13859627535958016.000 = -0x1.89ea1p+53 + -0x1.ff89a4p-2
src/math/special/fma.h:186: RN fmal(0x1.2996632ac7d74p-1,-0x1.bb3c58b654d94p-1,0x1.01a6660e64a31p-1) want 0x1.ed045bb956a8ep-15 got -0x1.070d62p-15 ulperr -13300911346548736.000 = -0x1.7a08dep+53 + -0x1.eabe3cp-2
src/math/special/fma.h:187: RN fmal(-0x1.c602e894c1df8p-1,0x1.a1c980e7d3f94p-1,0x1.7271244b43386p-1) want -0x1.ba251fe026e5bp-15 got -0x1.af2b6cp-15 ulperr 193081294979072.000 = 0x1.5f367cp+47 + 0x1.fa6bcap-2
src/math/special/fma.h:188: RN fmal(-0x1.c84baf47e85cp-1,0x1.770b5149ef2ep-1,0x1.4d80f139320bap-1) want -0x1.79277433b9e23p-10 got 0x1.d4b6fp-11 ulperr 10757822555881472.000 = 0x1.31c176p+53 + 0x1.ffc56ap-2
src/math/special/fma.h:189: RN fmal(-0x1.36e667dcf9c6p-1,0x1.2591f82556b88p-1,0x1.2452a0f795f95p-1) want 0x1.c83c8e63c159fp-3 got -0x1.221cccp-12 ulperr -8036166204915712.000 = -0x1.c8cd9cp+52 + -0x1.ffffdcp-2
src/math/special/fma.h:190: RN fmal(0x1.88b2cede61e4cp-1,-0x1.71dcab5ad9e9p-3,0x1.32b27fea2ae97p-3) want 0x1.70461909b25e2p-7 got -0x1.affe57fffffffp-17 ulperr -6486162973655040.000 = -0x1.70b218p+52 + -0x1.ffffe6p-2
src/math/special/fma.h:191: RN fmal(0x1.8d1e44002c98p-3,-0x1.af9fdfb347834p-1,0x1.e280942fb4146p-4) want -0x1.761ac23896dfdp-5 got 0x1.0bec48p-14 ulperr 6590522089013248.000 = 0x1.76a0b8p+52 + 0x1.ffffdep-2
src/math/special/fma.h:192: RN fmal(0x1.236e8cb9492c8p-1,-0x1.d37443a57f1c4p-1,0x1.ca10df801aabcp-4) want -0x1.a1a2cdf0138f9p-2 got 0x1.f090cab7p-5 ulperr 8439088898113536.000 = 0x1.dfb4e8p+52 + 0x1.fff07cp-2
src/math/special/fma.h:193: RN fmal(-0x1.6ad943e610fb8p-1,-0x1.cef92a7bb18bcp-1,0x1.f28587d8fb0ep-4) want 0x1.866b5204b9aecp-1 got -0x1.8c9eb9a7p-5 ulperr -7304415983697920.000 = -0x1.9f353ep+52 + -0x1.fff9cep-2
src/math/special/fma.h:194: RN fmal(-0x1.60a8569a5d894p-1,-0x1.ca07e29dd171cp-1,0x1.b6c475ace09ecp-4) want 0x1.72549291e2f7ap-1 got -0x1.b6fd181e8p-5 ulperr -6997593720619008.000 = -0x1.8dc464p+52 + -0x1.fff924p-2
src/math/special/fma.h:195: RN fmal(0x1.d1962720d678cp-1,-0x1.4548ee45c4084p-1,0x1.f416ab193d75cp-4) want -0x1.d2929879dc853p-2 got 0x1.fc38e6f4p-8 ulperr 8347731722502144.000 = 0x1.da837cp+52 + 0x1.fffe04p-2
src/math/special/fma.h:196: RN fmal(-0x1.9ddcb295a7d64p-1,0x1.67fb3a2068a78p-1,0x1.da9cd4597fe0ap-4) want -0x1.cf4f6eb4fc5d8p-2 got 0x1.59da5512p-6 ulperr 8530909930192896.000 = 0x1.e4ed14p+52 + 0x1.fffa98p-2
src/math/special/fma.h:197: RN fmal(0x1.c00d16ed45b88p+0,0x1.c787eddda3664p+0,0x1.1e3e6f0cc1802p-5) want 0x1.931b8f379dcc3p+1 got -0x1.63fb63b8p-6 ulperr -7140470639558656.000 = -0x1.95e386p+52 + -0x1.ffff4ep-2
src/math/special/fma.h:198: RN fmal(0x1.19c2a2372c184p+0,-0x1.cb506961c19fp+0,0x1.db1abf3f7ba3ap-6) want -0x1.f21c0eab0bc18p+0 got 0x1.a29607ffffff8p-13 ulperr 8763735812341760.000 = 0x1.f22924p+52 + 0x1.fffffcp-2
src/math/special/fma.h:199: RN fmal(-0x1.3a263218ccd1cp+0,-0x1.e818d390df27cp+0,0x1.2a81ed71785f5p-5) want 0x1.3025ab0f63925p+1 got -0x1.bfdf0b9cp-6 ulperr -5412168283455488.000 = -0x1.33a56ap+52 + -0x1.ffff2p-2
src/math/special/fma.h:200: RN fmal(0x1.b0b041fbaca58p+0,-0x1.9d5f76d178e6p+0,0x1.0215c7bb84cf9p-6) want -0x1.5b52aec7ef4p+1 got 0x1.6be7a78p-7 ulperr 6135177709355008.000 = 0x1.5cbe96p+52 + 0x1.ffffa6p-2
src/math/special/fma.h:201: RN fmal(-0x1.377549d9a87f4p+0,-0x1.a13d4a03dd6d8p+0,0x1.f190388bc5cc6p-7) want 0x1.ff83bebbd6fe4p+0 got -0x1.e5a6a44p-9 ulperr -9015347881443328.000 = -0x1.003b4ap+53 + -0x1.ffffc4p-2
src/math/special/fma.h:202: RN fmal(0x1.6a726c0762ac8p-1,-0x1.d32f2d30e483cp+0,0x1.f953eb70fbde6p-7) want -0x1.46c61b3070332p+0 got 0x1.e556e47fffffep-11 ulperr 5752835425697792.000 = 0x1.4702c6p+52 + 0x1.fffffp-2
src/math/special/fma.h:203: RN fmal(0x1.94cf2509d40cp-1,0x1.721976af6dfbp+0,0x1.f51a456921c3ep-7) want 0x1.28880842acc6p+0 got -0x1.effe1ep-8 ulperr -5250719389057024.000 = -0x1.2a7806p+52 + -0x1.ffff84p-2
src/math/special/fma.h:204: RN fmal(0x1.b128eb0ad8728p-1,0x1.7682566a54268p+0,0x1.bd4122a074cafp-8) want 0x1.3e9469530e762p+0 got -0x1.6fe0c7cp-9 ulperr -5617154187591680.000 = -0x1.3f4c5ap+52 + -0x1.ffffd2p-2
src/math/special/fma.h:205: RN fmal(0x1.c4ae75976e35cp+0,-0x1.11c329dd1160cp+0,0x1.9993f5e13c9bdp-8) want -0x1.e27d925b07cf1p+0 got 0x1.198edf6p-9 ulperr 8497737213411328.000 = 0x1.e30a5ap+52 + 0x1.ffffdcp-2
src/math/special/fma.h:206: RN fmal(-0x1.85f81f88fa3c4p+0,-0x1.17648a494fa18p-1,0x1.37d305113b48p-10) want 0x1.aa367b7490e57p-1 got -0x1.7a59ecffffffep-12 ulperr -7501265072291840.000 = -0x1.aa65c6p+52 + -0x1.fffff4p-2
src/math/special/fma.h:207: RN fmal(-0x1.311f2b4319efcp+0,0x1.abbb5272e3d18p-1,0x1.35841b7bdbcfep-10) want -0x1.fd337f24b39ep-1 got 0x1.4cbc317ffffffp-11 ulperr 8963677814259712.000 = 0x1.fd86aep+52 + 0x1.ffffecp-2
src/math/special/fma.h:208: RN fmal(0x1.ab94369a9a0dp-1,0x1.9d1e0e0aa3bacp+0,0x1.0a63ca87cfa78p-11) want 0x1.592173ee296b6p+0 got -0x1.fd8043ffffff8p-13 ulperr -6072697209487360.000 = -0x1.59316p+52 + -0x1.fffffcp-2
src/math/special/fma.h:250: RZ fmal(0x1p+0,0x1p+0,-0x1p-1074) want 0x1.fffffffffffffp-1 got -0x1.fffffp-43 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p+0
src/math/special/fma.h:251: bad fp exception: RZ fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022)=0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:251: RZ fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.fffffffffffffp-1022 got 0x0p+0 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x0p+0
src/math/special/fma.h:252: bad fp exception: RZ fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022)=0x1.ffffffffffffep-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:252: RZ fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.ffffffffffffep-1022 got -0x0p+0 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p+0
src/math/special/fma.h:253: bad fp exception: RZ fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:253: RZ fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.fffffffffffffp-1022 got -0x0p+0 ulperr 9007198717870080.000 = 0x1.fffffep+52 + 0x0p+0
src/math/special/fma.h:254: bad fp exception: RZ fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.ffffffffffffep-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:254: RZ fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.ffffffffffffep-1022 got 0x0p+0 ulperr 9007198717870080.000 = 0x1.fffffcp+52 + 0x1p+0
src/math/special/fma.h:255: RZ fmal(0x1p-1074,-0x1p-1074,0x1p-1074) want 0x0p+0 got -0x0p+0 ulperr inf = inf + -0x1p+0
src/math/special/fma.h:256: RZ fmal(0x1p-1074,-0x1p-1074,-0x1p-1074) want -0x1p-1074 got -0x0p+0 ulperr 1.000 = 0x1p+0 + 0x0p+0
src/math/special/fma.h:257: RZ fmal(0x1.0000000000001p+0,0x1p+0,0x1p+53) want 0x1p+53 got 0x1.000008p+12 ulperr -4503599358935040.000 = -0x1.fffffcp+51 + -0x1p-1
src/math/special/fma.h:258: RZ fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p+53) want 0x1p+53 got 0x1.ffc02p+10 ulperr -4503599358935040.000 = -0x1.fffffcp+51 + -0x1p-1
src/math/special/fma.h:259: RZ fmal(0x1p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp+53) want 0x1.fffffffffffffp+53 got -0x1.ffffep+10 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:260: RZ fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep+53) want 0x1.ffffffffffffep+53 got 0x1.ffc02p+10 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:261: RZ fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p-52) want 0x1.0000000000001p+0 got -0x1.fffffp-42 ulperr -4503599627370496.000 = -0x1.fffffep+51 + -0x1p-1
src/math/special/fma.h:262: RZ fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp-53) want 0x1.0000000000001p+0 got -0x1.fffff8p-41 ulperr -4503599627370496.000 = -0x1.fffffep+51 + -0x1p-1
src/math/special/fma.h:263: RZ fmal(0x1.0000000000005p+0,0x1.ffffffffffffbp-1,0x1p-52) want 0x1.0000000000003p+0 got -0x1.8fffff8p-37 ulperr -4503599627370496.000 = -0x1.fffffep+51 + -0x1p-1
src/math/special/fma.h:264: RZ fmal(0x1.0000000000006p+0,0x1.ffffffffffffdp-1,0x1p-52) want 0x1.0000000000005p+0 got -0x1.1fffff8p-37 ulperr -4503599627370496.000 = -0x1.fffffep+51 + -0x1p-1
src/math/special/fma.h:283: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff4p+0 got 0x1.6800008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:284: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1p+0) want 0x1.ffffffffffff8p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:285: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffff6p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:286: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffff4p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:287: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffff6p+0 got 0x1.f800008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:288: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffff4p+0 got 0x1.f800008p-37 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:289: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffff6p+0 got 0x1.2000004p-36 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:290: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffff4p+0 got 0x1.2000004p-36 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:291: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.fffffffffffffp-1) want 0x1.ffffffffffff6p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:292: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffff4p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:293: RZ fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff2p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1p-1
src/math/special/fma.h:294: RZ fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep-1) want 0x1.fffffffffffffp+0 got -0x1.fffffp-42 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:295: RZ fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffp-42 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:296: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.fffffffffffffp-1) want 0x1.fffffffffffffp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:297: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:298: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:299: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1p+0) want 0x1.fffffffffffffp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:300: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:301: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:302: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:303: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:304: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffffdp+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:305: RZ fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffbp+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1.fffffep+52 + -0x1p-1
src/math/special/fma.h:306: RZ fmal(0x1.5872449b765b9p+0,0x1.c9acf91f8de2bp+0,0x1.9265607e4d168p+0) want 0x1.fd190c77c2a67p+1 got -0x1.b3fc37becffffp-4 ulperr -9195828849672192.000 = -0x1.055c74p+53 + -0x1.fffc98p-2
src/math/special/fma.h:307: RZ fmal(0x1.81d010b146d0ep+0,0x1.2d3c680dc9071p+0,0x1.a80b69538754cp+0) want 0x1.b7040b44973a6p+1 got 0x1.4d0cb20197p+1 ulperr -1864177136173056.000 = -0x1.a7dd62p+50 + -0x1.0029a2p-1
src/math/special/fma.h:308: RZ fmal(0x1.6a44f2252b6a2p+0,0x1.da452a378b832p+0,0x1.1fe2ce329104p+0) want 0x1.df842b6f48b12p+1 got 0x1.12e95c1ba4p+0 ulperr -6017591705337856.000 = -0x1.560f7ap+52 + -0x1.00112ep-1
src/math/special/fma.h:309: RZ fmal(0x1.096b1d26463eep+0,0x1.d846d3e34333p+0,0x1.721e3480922b8p+0) want 0x1.ade2909c0269fp+1 got -0x1.a139d9b2bffffp-1 ulperr -9397595675820032.000 = -0x1.0b188p+53 + -0x1.ffe5ecp-2
src/math/special/fma.h:310: RZ fmal(0x1.99bd3434c454bp+0,0x1.03cb8e4115bdep+0,0x1.109f107188b08p+0) want 0x1.5837a47d37faep+1 got 0x1.cfdec0c00ap+0 ulperr -1975290892910592.000 = -0x1.c1210ep+50 + -0x1.001cfep-1
src/math/special/fma.h:311: RZ fmal(0x1.ba930a0a78ed2p+0,0x1.8c24e8d67f636p+0,0x1.ac49dbfbf8affp+0) want 0x1.164947ae6a5d9p+2 got -0x1.33e3b04ecffffp-2 ulperr -5234191281160192.000 = -0x1.29878p+52 + -0x1.fffb3p-2
src/math/special/fma.h:312: RZ fmal(0x1.be224ad773191p+0,0x1.d96b77169731fp+0,0x1.662cfb75d8edep+0) want 0x1.27cd67e720f78p+2 got 0x1.e4711611c78p+1 ulperr -942615600037888.000 = -0x1.aca6e4p+49 + -0x1.001e48p-1
src/math/special/fma.h:313: RZ fmal(0x1.59e7a1b0bdb3cp+0,0x1.2decba4d46421p+0,0x1.88f4062e96df5p+0) want 0x1.90749e4794f79p+1 got -0x1.b3c84a9a87fffp-1 ulperr -8961479327875072.000 = -0x1.fd66aep+52 + -0x1.ffe4c4p-2
src/math/special/fma.h:314: RZ fmal(0x1.22edf4b4da9a7p+0,0x1.dfa8d65f506cdp+0,0x1.2799208da2fbap+0) want 0x1.a45a1e99ed7a8p+1 got 0x1.a0bdfb8976p-1 ulperr -5562059420860416.000 = -0x1.3c2a9cp+52 + -0x1.000d06p-1
src/math/special/fma.h:315: RZ fmal(0x1.ad5b991a2a279p+0,0x1.f02fd26706024p+0,0x1.831cdd5c8797cp+0) want 0x1.30d3a2ac90a6p+2 got 0x1.c7c15e1c82p+1 ulperr -1353701616779264.000 = -0x1.33cbccp+50 + -0x1.001c7cp-1
src/math/special/fma.h:316: RZ fmal(0x1.531f9620e764ap+0,0x1.cad61b54d4425p+0,0x1.df817cae8a9afp+0) want 0x1.0fd4e7f8671dcp+2 got 0x1.8e74e26059p+1 ulperr -1277252004216832.000 = -0x1.2269d8p+50 + -0x1.0018e8p-1
src/math/special/fma.h:317: RZ fmal(0x1.629a5ad79494fp+0,0x1.049e58693f4c4p+0,0x1.45b0109e4d00cp+0) want 0x1.5758154e14965p+1 got -0x1.01173c9c1ffffp-3 ulperr -6322846842224640.000 = -0x1.676986p+52 + -0x1.fffbfcp-2
src/math/special/fma.h:318: RZ fmal(0x1.2f52b53f9240ap+0,0x1.1d5c686dbb0dap+0,0x1.6da3e392a4fd4p+0) want 0x1.5fe03a6795912p+1 got 0x1.5bdb7d9084p+0 ulperr -3130480060792832.000 = -0x1.63e4f4p+51 + -0x1.0015bep-1
src/math/special/fma.h:319: RZ fmal(0x1.058667552b49ep+0,0x1.23307bacc1c42p+0,0x1.5b059b47cd8f5p+0) want 0x1.423f752486d13p+1 got -0x1.4bfb042743fffp+0 ulperr -8589175993401344.000 = -0x1.e83cf4p+52 + -0x1.ffd68p-2
src/math/special/fma.h:320: RZ fmal(0x1.a717d95337ed8p+0,0x1.2b1c37846aaadp+0,0x1.be65672f885b1p+0) want 0x1.d65e72303c075p+1 got -0x1.7e0573ec03fffp+1 ulperr -14995406941323264.000 = -0x1.aa31fp+53 + -0x1.ffa07ep-2
src/math/special/fma.h:321: RZ fmal(0x1.deb79287b3d32p+0,0x1.62776b829babap+0,0x1.67daf18bd2eb1p+0) want 0x1.ff5a0d45c69d6p+1 got 0x1.ad881652ap-3 ulperr -8523519902089216.000 = -0x1.e48188p+52 + -0x1.00035cp-1
src/math/special/fma.h:322: RZ fmal(0x1.fbf12d3a6de91p+0,0x1.879fe6124f11p+0,0x1.9f3f1247a8641p+0) want 0x1.2a126c6980018p+2 got 0x1.45e3d61a84p+2 ulperr 489379747332096.000 = 0x1.bd169ap+48 + -0x1.0028bcp-1
src/math/special/fma.h:323: RZ fmal(0x1.c589628460e01p+0,0x1.e1bec1c797533p+0,0x1.349f30cdb84bbp+0) want 0x1.2286118b6f6e5p+2 got -0x1.8e9d95e0667ffp+1 ulperr -8617206560587776.000 = -0x1.e9d4dap+52 + -0x1.ffce2cp-2
src/math/special/fma.h:324: RZ fmal(0x1.46fd6c2c924ebp+0,0x1.65e2f02e730a1p+0,0x1.37739d2751098p+0) want 0x1.804a71c1f1272p+1 got 0x1.855d7947cbp+0 ulperr -3335623268106240.000 = -0x1.7b3768p+51 + -0x1.001856p-1
src/math/special/fma.h:325: RZ fmal(0x1.f99e595ae11fdp+0,0x1.bd33d9a1d81bp+0,0x1.932a2a2e244c1p+0) want 0x1.409e34f8f2f89p+2 got -0x1.7a49668943fffp+2 ulperr -12295260860317696.000 = -0x1.5d73cap+53 + -0x1.ffa16ep-2
src/math/special/fma.h:326: RZ fmal(0x1.59ea1e56bfe55p+0,0x1.6f46b7d412a44p+0,0x1.80f2bc9a32cc3p+0) want 0x1.b89c7640e32ffp+1 got -0x1.ca180bfb5ffffp-3 ulperr -8254993178034176.000 = -0x1.d53df4p+52 + -0x1.fff8d8p-2
src/math/special/fma.h:327: RZ fmal(0x1.61490fcb44129p+0,0x1.0038ec4fc35c2p+0,0x1.df7436ed7a7b7p+0) want 0x1.a085ea68d05cfp+1 got -0x1.5ed2c690f6fffp+1 ulperr -13499301254660096.000 = -0x1.7fac56p+53 + -0x1.ffa84cp-2
src/math/special/fma.h:328: RZ fmal(0x1.d41b98788502bp+0,0x1.1a7b77843aca6p+0,0x1.05be891837d36p+0) want 0x1.8523596ceced9p+1 got -0x1.48c8fc403bfffp-1 ulperr -8291801584631808.000 = -0x1.d75596p+52 + -0x1.ffeb74p-2
src/math/special/fma.h:329: RZ fmal(0x1.3153cf6f69af9p+0,0x1.aaa947e38e57ap+0,0x1.8519f9b590645p+0) want 0x1.c0fcab7b46368p+1 got 0x1.25f4f4bd5p-3 ulperr -7575453653008384.000 = -0x1.ae9d5ap+52 + -0x1.00024cp-1
src/math/special/fma.h:330: RZ fmal(0x1.c25a1f73581aap+0,0x1.0a51ffca372ap+0,0x1.0c77e3ebac5f3p+0) want 0x1.707ce48c7d72dp+1 got -0x1.3261c9a0dffffp+1 ulperr -11872435288670208.000 = -0x1.516f54p+53 + -0x1.ffb368p-2
src/math/special/fma.h:331: RZ fmal(0x1.829c2cde44b7p+0,0x1.f692e86d8cb36p+0,0x1.455e72d264bfp+0) want 0x1.0f16a3b8b3f97p+2 got -0x1.684386465ffffp+0 ulperr -6353494655107072.000 = -0x1.692782p+52 + -0x1.ffe97cp-2
src/math/special/fma.h:332: RZ fmal(0x1.94729588dcc69p+0,0x1.c3bb794c6edf8p+0,0x1.9da4e94d262d2p+0) want 0x1.19d4bd84d9fd2p+2 got 0x1.e1b9a2757p-1 ulperr -3898698849320960.000 = -0x1.bb3b1p+51 + -0x1.000786p-1
src/math/special/fma.h:333: RZ fmal(0x1.e6a5e7e39c3d5p+0,0x1.1b69af2bdd978p+0,0x1.e7ef1eafa119cp+0) want 0x1.00ac5b44c9f31p+2 got -0x1.6777d5d393fffp+1 ulperr -7677358731427840.000 = -0x1.b46844p+52 + -0x1.ffd312p-2
src/math/special/fma.h:334: bad fp exception: RZ fmal(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022)=0x1.b594d0e4368efp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:334: RZ fmal(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022) want 0x1.b594d0e4368efp-1022 got -0x1.9dedc9560fffep-1023 ulperr -11338968138252288.000 = -0x1.4245d8p+53 + -0x1.ffcc42p-2
src/math/special/fma.h:335: RZ fmal(0x1.022db53c98d14p-1022,0x1.21157eef74848p-2,0x1.2f880432b1bc1p-1022) want 0x1.786ad60a02b3dp-1022 got -0x1.150255ac97fffp-1022 ulperr -11495198647386112.000 = -0x1.46b692p+53 + -0x1.ffbacp-2
src/math/special/fma.h:336: bad fp exception: RZ fmal(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022)=0x1.cbb085199a3f5p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:336: RZ fmal(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022) want 0x1.cbb085199a3f5p-1022 got -0x1.6ed115da2f7fep-1023 ulperr -11313497908445184.000 = -0x1.418c86p+53 + -0x1.ffd226p-2
src/math/special/fma.h:337: RZ fmal(0x1.adbc3a9d816dep-1022,0x1.e039d4431e3cdp-2,0x1.93ceef6fe18a2p-1022) want 0x1.2eabb7dc0e2fp-1021 got 0x1.ef7b6794e3p-1023 ulperr -3145487213395968.000 = -0x1.6599b8p+51 + -0x1.000f7cp-1
src/math/special/fma.h:338: RZ fmal(0x1.645aa5c2df3afp-1022,0x1.649edfcad854fp-2,0x1.8b43e0bbaeb01p-1022) want 0x1.03af571d2b504p-1021 got 0x1.0ce86163c02p-1021 ulperr 162249436037120.000 = 0x1.272148p+47 + -0x1.00219ep-1
src/math/special/fma.h:339: bad fp exception: RZ fmal(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022)=0x1.ad9ce7fcefa3fp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:339: RZ fmal(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022) want 0x1.ad9ce7fcefa3fp-1022 got -0x1.12bc4931e5ff8p-1025 ulperr -8161979755659264.000 = -0x1.cff46ep+52 + -0x1.fff76ap-2
src/math/special/fma.h:340: RZ fmal(0x1.8ee3feb00c3e7p-1022,0x1.53bd9353313bcp-2,0x1.5501b57dc3b6fp-1022) want 0x1.d9598906f0bb3p-1022 got -0x1.4660b83f56fffp-1022 ulperr -14068955652030464.000 = -0x1.8fdd1ep+53 + -0x1.ffae68p-2
src/math/special/fma.h:341: RZ fmal(0x1.161225cfa61e2p-1022,0x1.b6dd69a0af5bp-2,0x1.924ffc3ead5c3p-1022) want 0x1.04be6fc25367bp-1021 got -0x1.f3ab56daa7fffp-1022 ulperr -8982192344530944.000 = -0x1.fe9418p+52 + -0x1.ffc18ap-2
src/math/special/fma.h:342: bad fp exception: RZ fmal(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022)=0x1.70b6c3169f043p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:342: RZ fmal(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022) want 0x1.70b6c3169f043p-1022 got -0x1.a779baefbe7fep-1023 ulperr -10211413595258880.000 = -0x1.2239cep+53 + -0x1.ffcb1p-2
src/math/special/fma.h:343: RZ fmal(0x1.ce0e2ea55040ep-1022,0x1.ce5a55fa3828dp-2,0x1.f2f444d50ce59p-1022) want 0x1.61ca36f5a8a79p-1021 got -0x1.173f0cea127ffp-1022 ulperr -8680213730820096.000 = -0x1.ed69bap+52 + -0x1.ffdd18p-2
src/math/special/fma.h:344: bad fp exception: RZ fmal(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022)=0x1.1440cf1c105ebp-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:344: RZ fmal(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022) want 0x1.1440cf1c105ebp-1021 got -0x1.f88fda5ffffp-1030 ulperr -4877233327964160.000 = -0x1.153d14p+52 + -0x1.ffffcp-2
src/math/special/fma.h:345: bad fp exception: RZ fmal(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022)=0x1.1186e1f77012dp-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:345: RZ fmal(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022) want 0x1.1186e1f77012dp-1021 got -0x1.2ffba526fbff8p-1025 ulperr -5146168610783232.000 = -0x1.24869ap+52 + -0x1.fffb4p-2
src/math/special/fma.h:346: bad fp exception: RZ fmal(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022)=0x1.8d86310bad175p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:346: RZ fmal(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022) want 0x1.8d86310bad175p-1022 got -0x1.1b755c367f7fep-1023 ulperr -9486645380251648.000 = -0x1.0da06cp+53 + -0x1.ffdc92p-2
src/math/special/fma.h:347: RZ fmal(0x1.fb3391a4b1d23p-1022,0x1.4d8705b057caep-2,0x1.d026cb6dae73bp-1022) want 0x1.3aad18b424c67p-1021 got -0x1.0a1784c7c6bffp-1021 ulperr -10216978799132672.000 = -0x1.22624cp+53 + -0x1.ffbd7ap-2
src/math/special/fma.h:348: bad fp exception: RZ fmal(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022)=0x1.c0048fd33a417p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:348: RZ fmal(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022) want 0x1.c0048fd33a417p-1022 got -0x1.d026e457f0ffcp-1024 ulperr -9922974329077760.000 = -0x1.1a0722p+53 + -0x1.ffe2fep-2
src/math/special/fma.h:349: RZ fmal(0x1.aa9eff070281cp-1022,0x1.fab05661b48ebp-2,0x1.cbe2af6c69c6ep-1022) want 0x1.4f7ddbe122764p-1021 got 0x1.9e529858dap-1023 ulperr -4079820841418752.000 = -0x1.cfd268p+51 + -0x1.000cf2p-1
src/math/special/fma.h:350: bad fp exception: RZ fmal(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022)=0x1.e0e762ee2e7c5p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:350: RZ fmal(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022) want 0x1.e0e762ee2e7c5p-1022 got -0x1.e2fe0f96ebffep-1023 ulperr -12708595627982848.000 = -0x1.693332p+53 + -0x1.ffc3ap-2
src/math/special/fma.h:351: RZ fmal(0x1.4dab43918a9a8p-1022,0x1.ed667442b4751p-2,0x1.3f25f82e02e3ep-1022) want 0x1.dfec0ee732dcap-1022 got 0x1.6a41c4d18ap-1022 ulperr -2069987942465536.000 = -0x1.d6a926p+50 + -0x1.002d48p-1
src/math/special/fma.h:352: RZ fmal(0x1.7943735951931p-1022,0x1.fa6a357c5c9ddp-2,0x1.0bed44b0b71b4p-1022) want 0x1.c6803a6059abep-1022 got 0x1.0e970cce134p-1022 ulperr -3235393763803136.000 = -0x1.6fd258p+51 + -0x1.0021d2p-1
src/math/special/fma.h:353: bad fp exception: RZ fmal(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022)=0x1.8640492c45959p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:353: RZ fmal(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022) want 0x1.8640492c45959p-1022 got -0x1.3271a1b37ffep-1027 ulperr -7033839486500864.000 = -0x1.8fd3d4p+52 + -0x1.fffd9cp-2
src/math/special/fma.h:354: RZ fmal(0x1.f52172c56bdf5p-1022,0x1.672b2de422734p-2,0x1.7bc5d708e5a34p-1022) want 0x1.15c5b95145cc6p-1021 got 0x1.3cf4f71d188p-1021 ulperr 689341647028224.000 = 0x1.3979eep+49 + -0x1.00279ep-1
src/math/special/fma.h:355: bad fp exception: RZ fmal(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022)=0x1.e7fa0dd76fbefp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:355: RZ fmal(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022) want 0x1.e7fa0dd76fbefp-1022 got -0x1.60a5d541afffcp-1024 ulperr -10135538703007744.000 = -0x1.2011bep+53 + -0x1.ffe9f6p-2
src/math/special/fma.h:356: bad fp exception: RZ fmal(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022)=0x1.b63a7f56fce1fp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:356: RZ fmal(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022) want 0x1.b63a7f56fce1fp-1022 got -0x1.497a9bc51fffcp-1024 ulperr -9158460486713344.000 = -0x1.044c9p+53 + -0x1.ffeb68p-2
src/math/special/fma.h:357: RZ fmal(0x1.f73d5f4e81fd8p-1022,0x1.7ccff2642124ap-2,0x1.e7d836a0c8308p-1022) want 0x1.517f1763126d3p-1021 got -0x1.06939f3371fffp-1021 ulperr -10556596895612928.000 = -0x1.2c0958p+53 + -0x1.ffbe5cp-2
src/math/special/fma.h:358: RZ fmal(0x1.b4328925969fbp-1022,0x1.8fa02832a22d5p-2,0x1.2084598e2f8c6p-1022) want 0x1.cabf43838dc51p-1022 got -0x1.7c61d65f0a3ffp-1022 ulperr -14762118276448256.000 = -0x1.a3908ap+53 + -0x1.ffa0e8p-2
src/math/special/fma.h:359: RZ fmal(0x1.66ee60a92676fp-1022,0x1.eddd2e7681ce4p-2,0x1.b81d57daeb3a7p-1022) want 0x1.329c918ffb682p-1021 got 0x1.cd379885b8p-1025 ulperr -4886854591578112.000 = -0x1.15c916p+52 + -0x1.00039ap-1
src/math/special/fma.h:360: RZ fmal(0x1.ff2737585895dp-1022,0x1.fb4bf3828ae4ap-2,0x1.4a866847740fp-1022) want 0x1.23e07e4dbbeaap-1021 got 0x1.46c53f7571p-1023 ulperr -3697601232764928.000 = -0x1.a45e5ap+51 + -0x1.000a36p-1
src/math/special/fma.h:361: RZ fmal(0x1.5e2008d269a86p-1022,0x1.507bbbe4d78eep-2,0x1.6220c6f83f636p-1022) want 0x1.d52d9874f1c74p-1022 got 0x1.eda0503c4ap-1023 ulperr -3911886277967872.000 = -0x1.bcbadep+51 + -0x1.001edap-1
src/math/special/fma.h:362: bad fp exception: RZ fmal(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022)=0x1.9864925e2fb0fp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:362: RZ fmal(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022) want 0x1.9864925e2fb0fp-1022 got -0x1.53ae580e8bff8p-1025 ulperr -7931489261977600.000 = -0x1.c2da5ap+52 + -0x1.fff562p-2
src/math/special/fma.h:363: RZ fmal(0x1.7b353b81e793dp-1022,0x1.82b426f874c6dp-2,0x1.d92b19d21fd5cp-1022) want 0x1.342fb0c544a78p-1021 got 0x1.2af4c8aebe4p-1022 ulperr -2792024021401600.000 = -0x1.3d6a96p+51 + -0x1.0012bp-1
src/math/special/fma.h:364: RZ fmal(0x1.5be667823370ap-1022,0x1.a8a99b163869bp-2,0x1.95456b68dc3bcp-1022) want 0x1.12c638de03c7p-1021 got 0x1.49af7fc787p-1023 ulperr -3383908095754240.000 = -0x1.80b4aep+51 + -0x1.000a4ep-1
src/math/special/fma.h:365: RZ fmal(0x1.17b0fc6c850e5p-1022,0x1.d1d0a4853c315p-2,0x1.36b79f7c0c24p-1022) want 0x1.b5f2baff5635cp-1022 got 0x1.6a19304724p-1026 ulperr -7306333686595584.000 = -0x1.9f5124p+52 + -0x1.0002d4p-1
src/math/special/fma.h:366: RZ fmal(0x1.bd97819bacfd8p-1022,0x1.2c25f267ba4eep-2,0x1.804b5204a3f3ap-1022) want 0x1.01739c190fd96p-1021 got 0x1.b9e166e6b4p-1022 ulperr -642314640818176.000 = -0x1.241742p+49 + -0x1.001b9ep-1
src/math/special/fma.h:367: RZ fmal(0x1.596577053873dp-1022,0x1.3562ab2d29949p-2,0x1.b3f1ee75db6e7p-1022) want 0x1.0e268a498009ap-1021 got 0x1.e8136bc1594p-1022 ulperr -459377991483392.000 = -0x1.a1cd44p+48 + -0x1.001e82p-1
src/math/special/fma.h:368: RZ fmal(0x1.3c7a68cf0f7b3p-1022,0x1.9a55c15b167bdp-2,0x1.7635b7b163c07p-1022) want 0x1.f5073b93b7b8p-1022 got 0x1.75f9a972138p-1023 ulperr -5524660993130496.000 = -0x1.3a0a64p+52 + -0x1.00176p-1
src/math/special/fma.h:369: RZ fmal(0x1.5825164bc4068p-1022,0x1.dcbb6e5ff3245p-2,0x1.52fc3be0e84dap-1022) want 0x1.f334771c2dcfap-1022 got 0x1.2b86ba6b02p-1022 ulperr -3512783958179840.000 = -0x1.8f5b76p+51 + -0x1.00257p-1
src/math/special/fma.h:370: RZ fmal(0x1.139ea77b760ecp+1022,0x1.9b25f2fd017eap+2,-0x1.bc16788922b6fp+1023) want 0x1.b93aac527380ep+1023 got 0x1.c3ec4f2eep+1022 ulperr -3787028357447680.000 = -0x1.ae8906p+51 + -0x1.001c3ep-1
src/math/special/fma.h:371: RZ fmal(0x1.0e6f9c1657d7cp+1022,0x1.4d5c6b55ab5f1p+2,-0x1.e027dd5742e2cp+1023) want 0x1.c0538372b4bbep+1022 got 0x1.54dede6dep+1021 ulperr -4888708943708160.000 = -0x1.15e412p+52 + -0x1.00154ep-1
src/math/special/fma.h:372: RZ fmal(0x1.1182524fa411cp+1022,0x1.a3dba56842d19p+2,-0x1.c1ad59474d71fp+1023) want 0x1.bf78969300a76p+1023 got 0x1.8651491efp+1022 ulperr -4438724683235328.000 = -0x1.f89fe2p+51 + -0x1.001866p-1
src/math/special/fma.h:373: RZ fmal(0x1.1cbf4fb8ec82p+1022,0x1.5e32019a84fbbp+2,-0x1.985af08f32edep+1023) want 0x1.72af6bbad4a28p+1023 got 0x1.a68c1c1ecp+1023 ulperr 912367084896256.000 = 0x1.9ee582p+49 + -0x1.0034d2p-1
src/math/special/fma.h:374: RZ fmal(0x1.311e25c6db346p+1022,0x1.4e30db6c4b51dp+2,-0x1.7681f7a9786a7p+1023) want 0x1.a61d29434fc13p+1023 got -0x1.791d1988fffffp+1017 ulperr -7529566222417920.000 = -0x1.ac019ap+52 + -0x1.fffe86p-2
src/math/special/fma.h:375: RZ fmal(0x1.1201cf577052fp+1022,0x1.59730b2db7a16p+2,-0x1.56f1a64a078d5p+1023) want 0x1.8c8d801df34d9p+1023 got -0x1.3048609fd7fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ffd9f6p-2
src/math/special/fma.h:376: RZ fmal(0x1.3e52335b76e81p+1022,0x1.4dbd56f857479p+2,-0x1.509340c11bd2ep+1023) want 0x1.ed6576837f653p+1023 got -0x1.e498d5441bfffp+1022 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ffc36cp-2
src/math/special/fma.h:377: RZ fmal(0x1.18566b4f843cbp+1022,0x1.444fba10eaf29p+2,-0x1.f927beae57f0ap+1023) want 0x1.9a433b9796559p+1022 got 0x1.a048d2820cp+1022 ulperr 105937222238208.000 = 0x1.8165bap+46 + -0x1.ff6812p-2
src/math/special/fma.h:378: RZ fmal(0x1.3fbe544fe1be8p+1022,0x1.2d2a5fda03639p+2,-0x1.007407dbfd03cp+1023) want 0x1.efdb644b613e5p+1023 got -0x1.e14223655ffffp+1022 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ffc3d8p-2
src/math/special/fma.h:379: RZ fmal(0x1.263a0d3bc2e4p+1022,0x1.4cc198adbc651p+2,-0x1.734b1c1f7fdb8p+1023) want 0x1.899878afc0fa2p+1023 got 0x1.a13620448p+1023 ulperr 415454199808000.000 = 0x1.79da78p+48 + -0x1.003426p-1
src/math/special/fma.h:380: RZ fmal(0x1.5bf4aec8efc8ep+1022,0x1.555f0341516c9p+2,-0x1.c706408acd14cp+1023) want 0x1.d8f5e18b868bcp+1023 got 0x1.3e5679fdf8p+1022 ulperr -5520279589617664.000 = -0x1.39caa2p+52 + -0x1.0013e6p-1
src/math/special/fma.h:381: RZ fmal(0x1.1e57f1af78279p+1022,0x1.34bc0c7f082b3p+2,-0x1.497b92c1365edp+1023) want 0x1.692cb7ec68a93p+1023 got -0x1.c0a1f29b27fffp+1021 ulperr -8326959113175040.000 = -0x1.d95532p+52 + -0x1.ffe3f6p-2
src/math/special/fma.h:382: RZ fmal(0x1.1d9824cd73511p+1022,0x1.1d557ddfe47ffp+2,-0x1.556cdb1d20a72p+1023) want 0x1.2736a6b6e35f2p+1023 got 0x1.bc6f9c9778p+1021 ulperr -3238800209739776.000 = -0x1.70357cp+51 + -0x1.000de4p-1
src/math/special/fma.h:383: RZ fmal(0x1.1ff85a24aff31p+1022,0x1.39ab374b2680dp+2,-0x1.35e6b07b651b8p+1023) want 0x1.8bc7ce208708p+1023 got 0x1.84b319bafap+1023 ulperr -124568110891008.000 = -0x1.c52d16p+46 + -0x1.003096p-1
src/math/special/fma.h:384: RZ fmal(0x1.0449b3965227ep+1022,0x1.4430d4441f9f2p+2,-0x1.a6966c96307ep+1023) want 0x1.d94eda8c81771p+1022 got -0x1.992ed6b71ffffp+1021 ulperr -11925733685329920.000 = -0x1.52f32p+53 + -0x1.ffccdap-2
src/math/special/fma.h:385: RZ fmal(0x1.3c91fa00fd0c7p+1022,0x1.1b6661c0b0303p+2,-0x1.f1f2846b64483p+1023) want 0x1.95eae0d2644d3p+1022 got 0x1.9985d8eaap+1019 ulperr -6240425346072576.000 = -0x1.62ba22p+52 + -0x1.ff0cccp-2
src/math/special/fma.h:386: RZ fmal(0x1.0979b36d46534p+1022,0x1.12fa205f41f7fp+2,-0x1.a83ecf4544a63p+1023) want 0x1.2420f34e2aa3cp+1022 got -0x1.335a0fe67ffffp+1019 ulperr -5815056080044032.000 = -0x1.4a8c32p+52 + -0x1.007b32p-1
src/math/special/fma.h:387: RZ fmal(0x1.4c89df582a599p+1022,0x1.55f3dc473ea8fp+2,-0x1.e35037292ddfp+1023) want 0x1.95109fdbc3771p+1023 got -0x1.afa3b29623fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ffca0cp-2
src/math/special/fma.h:388: RZ fmal(0x1.35ee0a669c4fbp+1022,0x1.2263cb63f386ap+2,-0x1.449218ae35ac7p+1023) want 0x1.7a8ed977d817ap+1023 got 0x1.47da9ddfb8p+1022 ulperr -3775828693352448.000 = -0x1.ad4312p+51 + -0x1.00147ep-1
src/math/special/fma.h:389: RZ fmal(0x1.117cc860f61bcp+1022,0x1.440985b25d994p+2,-0x1.d7a7d82000449p+1023) want 0x1.b960b7088e74fp+1022 got 0x1.ddfba372cp+1022 ulperr 643964914892800.000 = 0x1.24d762p+49 + -0x1.ff777ep-2
src/math/special/fma.h:390: RZ fmal(0x1.1e78a37be320fp+1022,0x1.0db0fce62287bp+2,-0x1.376337da5eb53p+1023) want 0x1.24326b9956dfbp+1023 got -0x1.d2881b3595fffp+1023 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ff8b5ep-2
src/math/special/fma.h:391: RZ fmal(0x1.0c79b5c8331c2p+1022,0x1.0aba6ea746b5p+2,-0x1.c86f1fcaf0741p+1023) want 0x1.9c135bb2cff84p+1021 got -0x1.cc298babfffffp+1019 ulperr -9273125376098304.000 = -0x1.078edcp+53 + -0x1.00f19ep-1
src/math/special/fma.h:392: RZ fmal(0x1.556c4c072f272p+1022,0x1.347758d7d4eb5p+2,-0x1.c6fe4f24b248dp+1023) want 0x1.6fcc9f756df6dp+1023 got -0x1.f6f4c76597fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffcp+52 + -0x1.ffc122p-2
src/math/special/fma.h:393: RZ fmal(-0x1.e8349b891b2fp-1,0x1.4a6dec9b72578p-1,0x1.3b6151ce809ddp-1) want 0x1.3a62fe330b355p-11 got -0x1.d97120fffffffp-11 ulperr -13859626462216192.000 = -0x1.89ea0cp+53 + -0x1.ff89a4p-2
src/math/special/fma.h:394: RZ fmal(0x1.2996632ac7d74p-1,-0x1.bb3c58b654d94p-1,0x1.01a6660e64a31p-1) want 0x1.ed045bb956a8ep-15 got -0x1.070d61fffffffp-15 ulperr -13300911346548736.000 = -0x1.7a08dcp+53 + -0x1.eabe3cp-2
src/math/special/fma.h:395: RZ fmal(-0x1.c602e894c1df8p-1,0x1.a1c980e7d3f94p-1,0x1.7271244b43386p-1) want -0x1.ba251fe026e5bp-15 got -0x1.af2b6cp-15 ulperr 193081294979072.000 = 0x1.5f367ap+47 + 0x1.fa6bcap-2
src/math/special/fma.h:396: RZ fmal(-0x1.c84baf47e85cp-1,0x1.770b5149ef2ep-1,0x1.4d80f139320bap-1) want -0x1.79277433b9e23p-10 got 0x1.d4b6effffffffp-11 ulperr 10757822555881472.000 = 0x1.31c174p+53 + 0x1.ffc56ap-2
src/math/special/fma.h:397: RZ fmal(-0x1.36e667dcf9c6p-1,0x1.2591f82556b88p-1,0x1.2452a0f795f95p-1) want 0x1.c83c8e63c159fp-3 got -0x1.221ccbfffffffp-12 ulperr -8036166204915712.000 = -0x1.c8cd9ap+52 + -0x1.ffffdcp-2
src/math/special/fma.h:398: RZ fmal(0x1.88b2cede61e4cp-1,-0x1.71dcab5ad9e9p-3,0x1.32b27fea2ae97p-3) want 0x1.70461909b25e2p-7 got -0x1.affe57fffffffp-17 ulperr -6486162973655040.000 = -0x1.70b216p+52 + -0x1.ffffe6p-2
src/math/special/fma.h:399: RZ fmal(0x1.8d1e44002c98p-3,-0x1.af9fdfb347834p-1,0x1.e280942fb4146p-4) want -0x1.761ac23896dfdp-5 got 0x1.0bec47fffffffp-14 ulperr 6590522089013248.000 = 0x1.76a0b6p+52 + 0x1.ffffdep-2
src/math/special/fma.h:400: RZ fmal(0x1.236e8cb9492c8p-1,-0x1.d37443a57f1c4p-1,0x1.ca10df801aabcp-4) want -0x1.a1a2cdf0138f9p-2 got 0x1.f090cab6fffffp-5 ulperr 8439088361242624.000 = 0x1.dfb4e4p+52 + 0x1.fff07cp-2
src/math/special/fma.h:401: RZ fmal(-0x1.6ad943e610fb8p-1,-0x1.cef92a7bb18bcp-1,0x1.f28587d8fb0ep-4) want 0x1.866b5204b9aecp-1 got -0x1.8c9eb9a6fffffp-5 ulperr -7304415446827008.000 = -0x1.9f353ap+52 + -0x1.fff9cep-2
src/math/special/fma.h:402: RZ fmal(-0x1.60a8569a5d894p-1,-0x1.ca07e29dd171cp-1,0x1.b6c475ace09ecp-4) want 0x1.72549291e2f7ap-1 got -0x1.b6fd181e7ffffp-5 ulperr -6997593720619008.000 = -0x1.8dc462p+52 + -0x1.fff924p-2
src/math/special/fma.h:403: RZ fmal(0x1.d1962720d678cp-1,-0x1.4548ee45c4084p-1,0x1.f416ab193d75cp-4) want -0x1.d2929879dc853p-2 got 0x1.fc38e6f3fffffp-8 ulperr 8347731722502144.000 = 0x1.da837ap+52 + 0x1.fffe04p-2
src/math/special/fma.h:404: RZ fmal(-0x1.9ddcb295a7d64p-1,0x1.67fb3a2068a78p-1,0x1.da9cd4597fe0ap-4) want -0x1.cf4f6eb4fc5d8p-2 got 0x1.59da5511fffffp-6 ulperr 8530909930192896.000 = 0x1.e4ed12p+52 + 0x1.fffa98p-2
src/math/special/fma.h:405: RZ fmal(0x1.c00d16ed45b88p+0,0x1.c787eddda3664p+0,0x1.1e3e6f0cc1802p-5) want 0x1.931b8f379dcc3p+1 got -0x1.63fb63b7fffffp-6 ulperr -7140470102687744.000 = -0x1.95e382p+52 + -0x1.ffff4ep-2
src/math/special/fma.h:406: RZ fmal(0x1.19c2a2372c184p+0,-0x1.cb506961c19fp+0,0x1.db1abf3f7ba3ap-6) want -0x1.f21c0eab0bc18p+0 got 0x1.a29607ffffff8p-13 ulperr 8763735275470848.000 = 0x1.f2292p+52 + 0x1.fffffcp-2
src/math/special/fma.h:407: RZ fmal(-0x1.3a263218ccd1cp+0,-0x1.e818d390df27cp+0,0x1.2a81ed71785f5p-5) want 0x1.3025ab0f63925p+1 got -0x1.bfdf0b9bfffffp-6 ulperr -5412167746584576.000 = -0x1.33a566p+52 + -0x1.ffff2p-2
src/math/special/fma.h:408: RZ fmal(0x1.b0b041fbaca58p+0,-0x1.9d5f76d178e6p+0,0x1.0215c7bb84cf9p-6) want -0x1.5b52aec7ef4p+1 got 0x1.6be7a77ffffffp-7 ulperr 6135177709355008.000 = 0x1.5cbe94p+52 + 0x1.ffffa6p-2
src/math/special/fma.h:409: RZ fmal(-0x1.377549d9a87f4p+0,-0x1.a13d4a03dd6d8p+0,0x1.f190388bc5cc6p-7) want 0x1.ff83bebbd6fe4p+0 got -0x1.e5a6a43ffffffp-9 ulperr -9015346807701504.000 = -0x1.003b46p+53 + -0x1.ffffc4p-2
src/math/special/fma.h:410: RZ fmal(0x1.6a726c0762ac8p-1,-0x1.d32f2d30e483cp+0,0x1.f953eb70fbde6p-7) want -0x1.46c61b3070332p+0 got 0x1.e556e47fffffep-11 ulperr 5752835425697792.000 = 0x1.4702c4p+52 + 0x1.fffffp-2
src/math/special/fma.h:411: RZ fmal(0x1.94cf2509d40cp-1,0x1.721976af6dfbp+0,0x1.f51a456921c3ep-7) want 0x1.28880842acc6p+0 got -0x1.effe1dfffffffp-8 ulperr -5250719389057024.000 = -0x1.2a7804p+52 + -0x1.ffff84p-2
src/math/special/fma.h:412: RZ fmal(0x1.b128eb0ad8728p-1,0x1.7682566a54268p+0,0x1.bd4122a074cafp-8) want 0x1.3e9469530e762p+0 got -0x1.6fe0c7bffffffp-9 ulperr -5617153650720768.000 = -0x1.3f4c56p+52 + -0x1.ffffd2p-2
src/math/special/fma.h:413: RZ fmal(0x1.c4ae75976e35cp+0,-0x1.11c329dd1160cp+0,0x1.9993f5e13c9bdp-8) want -0x1.e27d925b07cf1p+0 got 0x1.198edf5ffffffp-9 ulperr 8497736676540416.000 = 0x1.e30a56p+52 + 0x1.ffffdcp-2
src/math/special/fma.h:414: RZ fmal(-0x1.85f81f88fa3c4p+0,-0x1.17648a494fa18p-1,0x1.37d305113b48p-10) want 0x1.aa367b7490e57p-1 got -0x1.7a59ecffffffep-12 ulperr -7501265072291840.000 = -0x1.aa65c4p+52 + -0x1.fffff4p-2
src/math/special/fma.h:415: RZ fmal(-0x1.311f2b4319efcp+0,0x1.abbb5272e3d18p-1,0x1.35841b7bdbcfep-10) want -0x1.fd337f24b39ep-1 got 0x1.4cbc317ffffffp-11 ulperr 8963677814259712.000 = 0x1.fd86acp+52 + 0x1.ffffecp-2
src/math/special/fma.h:416: RZ fmal(0x1.ab94369a9a0dp-1,0x1.9d1e0e0aa3bacp+0,0x1.0a63ca87cfa78p-11) want 0x1.592173ee296b6p+0 got -0x1.fd8043ffffff8p-13 ulperr -6072696672616448.000 = -0x1.59315cp+52 + -0x1.fffffcp-2
src/math/special/fma.h:458: RD fmal(0x1p+0,0x1p+0,-0x1p-1074) want 0x1.fffffffffffffp-1 got -0x1.fffffp-43 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p+0
src/math/special/fma.h:459: bad fp exception: RD fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022)=0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:459: RD fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.fffffffffffffp-1022 got 0x0p+0 ulperr -9007199254740992.000 = -0x1p+53 + 0x0p+0
src/math/special/fma.h:460: bad fp exception: RD fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022)=0x1.ffffffffffffep-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:460: RD fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.ffffffffffffep-1022 got -0x1p-1074 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p+0
src/math/special/fma.h:461: bad fp exception: RD fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:461: RD fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1p-1021 got -0x1p-1074 ulperr 4503599358935040.000 = 0x1.fffffep+51 + -0x1p-1
src/math/special/fma.h:462: bad fp exception: RD fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:462: RD fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.fffffffffffffp-1022 got 0x0p+0 ulperr 9007198717870080.000 = 0x1.fffffep+52 + 0x0p+0
src/math/special/fma.h:463: RD fmal(0x1p-1074,-0x1p-1074,0x1p-1074) want 0x0p+0 got -0x1p-1074 ulperr -2.000 = -0x1p+0 + -0x1p+0
src/math/special/fma.h:464: RD fmal(0x1p-1074,-0x1p-1074,-0x1p-1074) want -0x1p-1073 got -0x1p-1074 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/special/fma.h:465: RD fmal(0x1.0000000000001p+0,0x1p+0,0x1p+53) want 0x1p+53 got 0x1.000008p+12 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:466: RD fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p+53) want 0x1p+53 got 0x1.ffc02p+10 ulperr -4503599627370496.000 = -0x1p+52 + -0x1p-1
src/math/special/fma.h:467: RD fmal(0x1p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp+53) want 0x1.fffffffffffffp+53 got -0x1.ffffep+10 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:468: RD fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep+53) want 0x1.ffffffffffffep+53 got 0x1.ffc02p+10 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:469: RD fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p-52) want 0x1.0000000000001p+0 got -0x1.fffffp-42 ulperr -4503600164241408.000 = -0x1.000002p+52 + -0x1p-1
src/math/special/fma.h:470: RD fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp-53) want 0x1.0000000000001p+0 got -0x1.fffff8p-41 ulperr -4503600164241408.000 = -0x1.000002p+52 + -0x1p-1
src/math/special/fma.h:471: RD fmal(0x1.0000000000005p+0,0x1.ffffffffffffbp-1,0x1p-52) want 0x1.0000000000003p+0 got -0x1.8fffff8p-37 ulperr -4503600164241408.000 = -0x1.000002p+52 + -0x1p-1
src/math/special/fma.h:472: RD fmal(0x1.0000000000006p+0,0x1.ffffffffffffdp-1,0x1p-52) want 0x1.0000000000005p+0 got -0x1.1fffff8p-37 ulperr -4503600164241408.000 = -0x1.000002p+52 + -0x1p-1
src/math/special/fma.h:491: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff4p+0 got 0x1.6800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:492: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1p+0) want 0x1.ffffffffffff8p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:493: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffff6p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:494: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffff4p+0 got 0x1.b000008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:495: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffff6p+0 got 0x1.f800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:496: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffff4p+0 got 0x1.f800008p-37 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:497: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffff6p+0 got 0x1.2000004p-36 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:498: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffff4p+0 got 0x1.2000004p-36 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:499: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.fffffffffffffp-1) want 0x1.ffffffffffff6p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:500: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffff4p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:501: RD fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff2p+0 got 0x1.4400004p-36 ulperr -9007199254740992.000 = -0x1p+53 + -0x1p-1
src/math/special/fma.h:502: RD fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep-1) want 0x1.fffffffffffffp+0 got -0x1.fffffp-42 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:503: RD fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffp-42 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:504: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.fffffffffffffp-1) want 0x1.fffffffffffffp+0 got -0x1.fffff8p-41 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:505: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffff8p-41 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:506: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffff8p-41 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:507: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1p+0) want 0x1.fffffffffffffp+0 got -0x1.7ffffcp-40 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:508: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp+0 got -0x1.7ffffcp-40 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:509: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp+0 got -0x1.7ffffcp-40 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:510: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffffdp+0 got -0x1.fffffcp-40 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:511: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffffbp+0 got -0x1.fffffcp-40 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:512: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffffdp+0 got -0x1.3ffffep-39 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:513: RD fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffbp+0 got -0x1.3ffffep-39 ulperr -9007200328482816.000 = -0x1.000002p+53 + -0x1p-1
src/math/special/fma.h:514: RD fmal(0x1.5872449b765b9p+0,0x1.c9acf91f8de2bp+0,0x1.9265607e4d168p+0) want 0x1.fd190c77c2a67p+1 got -0x1.b3fc37bedp-4 ulperr -9195829923414016.000 = -0x1.055c78p+53 + -0x1.fffc98p-2
src/math/special/fma.h:515: RD fmal(0x1.81d010b146d0ep+0,0x1.2d3c680dc9071p+0,0x1.a80b69538754cp+0) want 0x1.b7040b44973a6p+1 got 0x1.4d0cb20197p+1 ulperr -1864177270390784.000 = -0x1.a7dd66p+50 + -0x1.0029a2p-1
src/math/special/fma.h:516: RD fmal(0x1.6a44f2252b6a2p+0,0x1.da452a378b832p+0,0x1.1fe2ce329104p+0) want 0x1.df842b6f48b12p+1 got 0x1.12e95c1ba4p+0 ulperr -6017592242208768.000 = -0x1.560f7ep+52 + -0x1.00112ep-1
src/math/special/fma.h:517: RD fmal(0x1.096b1d26463eep+0,0x1.d846d3e34333p+0,0x1.721e3480922b8p+0) want 0x1.ade2909c0269fp+1 got -0x1.a139d9b2cp-1 ulperr -9397596749561856.000 = -0x1.0b1884p+53 + -0x1.ffe5ecp-2
src/math/special/fma.h:518: RD fmal(0x1.99bd3434c454bp+0,0x1.03cb8e4115bdep+0,0x1.109f107188b08p+0) want 0x1.5837a47d37faep+1 got 0x1.cfdec0c00ap+0 ulperr -1975291027128320.000 = -0x1.c12112p+50 + -0x1.001cfep-1
src/math/special/fma.h:519: RD fmal(0x1.ba930a0a78ed2p+0,0x1.8c24e8d67f636p+0,0x1.ac49dbfbf8affp+0) want 0x1.164947ae6a5d9p+2 got -0x1.33e3b04edp-2 ulperr -5234191818031104.000 = -0x1.298784p+52 + -0x1.fffb3p-2
src/math/special/fma.h:520: RD fmal(0x1.be224ad773191p+0,0x1.d96b77169731fp+0,0x1.662cfb75d8edep+0) want 0x1.27cd67e720f78p+2 got 0x1.e4711611c78p+1 ulperr -942615667146752.000 = -0x1.aca6e8p+49 + -0x1.001e48p-1
src/math/special/fma.h:521: RD fmal(0x1.59e7a1b0bdb3cp+0,0x1.2decba4d46421p+0,0x1.88f4062e96df5p+0) want 0x1.90749e4794f79p+1 got -0x1.b3c84a9a88p-1 ulperr -8961479864745984.000 = -0x1.fd66b2p+52 + -0x1.ffe4c4p-2
src/math/special/fma.h:522: RD fmal(0x1.22edf4b4da9a7p+0,0x1.dfa8d65f506cdp+0,0x1.2799208da2fbap+0) want 0x1.a45a1e99ed7a8p+1 got 0x1.a0bdfb8976p-1 ulperr -5562059957731328.000 = -0x1.3c2aap+52 + -0x1.000d06p-1
src/math/special/fma.h:523: RD fmal(0x1.ad5b991a2a279p+0,0x1.f02fd26706024p+0,0x1.831cdd5c8797cp+0) want 0x1.30d3a2ac90a6p+2 got 0x1.c7c15e1c82p+1 ulperr -1353701750996992.000 = -0x1.33cbdp+50 + -0x1.001c7cp-1
src/math/special/fma.h:524: RD fmal(0x1.531f9620e764ap+0,0x1.cad61b54d4425p+0,0x1.df817cae8a9afp+0) want 0x1.0fd4e7f8671dcp+2 got 0x1.8e74e26059p+1 ulperr -1277252138434560.000 = -0x1.2269dcp+50 + -0x1.0018e8p-1
src/math/special/fma.h:525: RD fmal(0x1.629a5ad79494fp+0,0x1.049e58693f4c4p+0,0x1.45b0109e4d00cp+0) want 0x1.5758154e14965p+1 got -0x1.01173c9c2p-3 ulperr -6322847379095552.000 = -0x1.67698ap+52 + -0x1.fffbfcp-2
src/math/special/fma.h:526: RD fmal(0x1.2f52b53f9240ap+0,0x1.1d5c686dbb0dap+0,0x1.6da3e392a4fd4p+0) want 0x1.5fe03a6795912p+1 got 0x1.5bdb7d9084p+0 ulperr -3130480329228288.000 = -0x1.63e4f8p+51 + -0x1.0015bep-1
src/math/special/fma.h:527: RD fmal(0x1.058667552b49ep+0,0x1.23307bacc1c42p+0,0x1.5b059b47cd8f5p+0) want 0x1.423f752486d13p+1 got -0x1.4bfb042744p+0 ulperr -8589176530272256.000 = -0x1.e83cf8p+52 + -0x1.ffd68p-2
src/math/special/fma.h:528: RD fmal(0x1.a717d95337ed8p+0,0x1.2b1c37846aaadp+0,0x1.be65672f885b1p+0) want 0x1.d65e72303c075p+1 got -0x1.7e0573ec04p+1 ulperr -14995408015065088.000 = -0x1.aa31f4p+53 + -0x1.ffa07ep-2
src/math/special/fma.h:529: RD fmal(0x1.deb79287b3d32p+0,0x1.62776b829babap+0,0x1.67daf18bd2eb1p+0) want 0x1.ff5a0d45c69d6p+1 got 0x1.ad881652ap-3 ulperr -8523520438960128.000 = -0x1.e4818cp+52 + -0x1.00035cp-1
src/math/special/fma.h:530: RD fmal(0x1.fbf12d3a6de91p+0,0x1.879fe6124f11p+0,0x1.9f3f1247a8641p+0) want 0x1.2a126c6980018p+2 got 0x1.45e3d61a84p+2 ulperr 489379747332096.000 = 0x1.bd169ap+48 + -0x1.0028bcp-1
src/math/special/fma.h:531: RD fmal(0x1.c589628460e01p+0,0x1.e1bec1c797533p+0,0x1.349f30cdb84bbp+0) want 0x1.2286118b6f6e5p+2 got -0x1.8e9d95e0668p+1 ulperr -8617207097458688.000 = -0x1.e9d4dep+52 + -0x1.ffce2cp-2
src/math/special/fma.h:532: RD fmal(0x1.46fd6c2c924ebp+0,0x1.65e2f02e730a1p+0,0x1.37739d2751098p+0) want 0x1.804a71c1f1272p+1 got 0x1.855d7947cbp+0 ulperr -3335623536541696.000 = -0x1.7b376cp+51 + -0x1.001856p-1
src/math/special/fma.h:533: RD fmal(0x1.f99e595ae11fdp+0,0x1.bd33d9a1d81bp+0,0x1.932a2a2e244c1p+0) want 0x1.409e34f8f2f89p+2 got -0x1.7a49668944p+2 ulperr -12295261934059520.000 = -0x1.5d73cep+53 + -0x1.ffa16ep-2
src/math/special/fma.h:534: RD fmal(0x1.59ea1e56bfe55p+0,0x1.6f46b7d412a44p+0,0x1.80f2bc9a32cc3p+0) want 0x1.b89c7640e32ffp+1 got -0x1.ca180bfb6p-3 ulperr -8254993714905088.000 = -0x1.d53df8p+52 + -0x1.fff8d8p-2
src/math/special/fma.h:535: RD fmal(0x1.61490fcb44129p+0,0x1.0038ec4fc35c2p+0,0x1.df7436ed7a7b7p+0) want 0x1.a085ea68d05cfp+1 got -0x1.5ed2c690f7p+1 ulperr -13499302328401920.000 = -0x1.7fac5ap+53 + -0x1.ffa84cp-2
src/math/special/fma.h:536: RD fmal(0x1.d41b98788502bp+0,0x1.1a7b77843aca6p+0,0x1.05be891837d36p+0) want 0x1.8523596ceced9p+1 got -0x1.48c8fc403cp-1 ulperr -8291802121502720.000 = -0x1.d7559ap+52 + -0x1.ffeb74p-2
src/math/special/fma.h:537: RD fmal(0x1.3153cf6f69af9p+0,0x1.aaa947e38e57ap+0,0x1.8519f9b590645p+0) want 0x1.c0fcab7b46368p+1 got 0x1.25f4f4bd5p-3 ulperr -7575454189879296.000 = -0x1.ae9d5ep+52 + -0x1.00024cp-1
src/math/special/fma.h:538: RD fmal(0x1.c25a1f73581aap+0,0x1.0a51ffca372ap+0,0x1.0c77e3ebac5f3p+0) want 0x1.707ce48c7d72dp+1 got -0x1.3261c9a0ep+1 ulperr -11872436362412032.000 = -0x1.516f58p+53 + -0x1.ffb368p-2
src/math/special/fma.h:539: RD fmal(0x1.829c2cde44b7p+0,0x1.f692e86d8cb36p+0,0x1.455e72d264bfp+0) want 0x1.0f16a3b8b3f97p+2 got -0x1.684386466p+0 ulperr -6353495191977984.000 = -0x1.692786p+52 + -0x1.ffe97cp-2
src/math/special/fma.h:540: RD fmal(0x1.94729588dcc69p+0,0x1.c3bb794c6edf8p+0,0x1.9da4e94d262d2p+0) want 0x1.19d4bd84d9fd2p+2 got 0x1.e1b9a2757p-1 ulperr -3898699117756416.000 = -0x1.bb3b14p+51 + -0x1.000786p-1
src/math/special/fma.h:541: RD fmal(0x1.e6a5e7e39c3d5p+0,0x1.1b69af2bdd978p+0,0x1.e7ef1eafa119cp+0) want 0x1.00ac5b44c9f31p+2 got -0x1.6777d5d394p+1 ulperr -7677359268298752.000 = -0x1.b46848p+52 + -0x1.ffd312p-2
src/math/special/fma.h:542: RD fmal(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022) want 0x1.b594d0e4368efp-1022 got -0x1.9dedc9561p-1023 ulperr -11338969211994112.000 = -0x1.4245dcp+53 + -0x1.ffcc42p-2
src/math/special/fma.h:543: RD fmal(0x1.022db53c98d14p-1022,0x1.21157eef74848p-2,0x1.2f880432b1bc1p-1022) want 0x1.786ad60a02b3dp-1022 got -0x1.150255ac98p-1022 ulperr -11495199721127936.000 = -0x1.46b696p+53 + -0x1.ffbacp-2
src/math/special/fma.h:544: RD fmal(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022) want 0x1.cbb085199a3f5p-1022 got -0x1.6ed115da2f8p-1023 ulperr -11313498982187008.000 = -0x1.418c8ap+53 + -0x1.ffd226p-2
src/math/special/fma.h:545: RD fmal(0x1.adbc3a9d816dep-1022,0x1.e039d4431e3cdp-2,0x1.93ceef6fe18a2p-1022) want 0x1.2eabb7dc0e2fp-1021 got 0x1.ef7b6794e3p-1023 ulperr -3145487481831424.000 = -0x1.6599bcp+51 + -0x1.000f7cp-1
src/math/special/fma.h:546: RD fmal(0x1.645aa5c2df3afp-1022,0x1.649edfcad854fp-2,0x1.8b43e0bbaeb01p-1022) want 0x1.03af571d2b504p-1021 got 0x1.0ce86163c02p-1021 ulperr 162249436037120.000 = 0x1.272148p+47 + -0x1.00219ep-1
src/math/special/fma.h:547: RD fmal(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022) want 0x1.ad9ce7fcefa3fp-1022 got -0x1.12bc4931e6p-1025 ulperr -8161980292530176.000 = -0x1.cff472p+52 + -0x1.fff76ap-2
src/math/special/fma.h:548: RD fmal(0x1.8ee3feb00c3e7p-1022,0x1.53bd9353313bcp-2,0x1.5501b57dc3b6fp-1022) want 0x1.d9598906f0bb3p-1022 got -0x1.4660b83f57p-1022 ulperr -14068956725772288.000 = -0x1.8fdd22p+53 + -0x1.ffae68p-2
src/math/special/fma.h:549: RD fmal(0x1.161225cfa61e2p-1022,0x1.b6dd69a0af5bp-2,0x1.924ffc3ead5c3p-1022) want 0x1.04be6fc25367bp-1021 got -0x1.f3ab56daa8p-1022 ulperr -8982192881401856.000 = -0x1.fe941cp+52 + -0x1.ffc18ap-2
src/math/special/fma.h:550: RD fmal(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022) want 0x1.70b6c3169f043p-1022 got -0x1.a779baefbe8p-1023 ulperr -10211414669000704.000 = -0x1.2239d2p+53 + -0x1.ffcb1p-2
src/math/special/fma.h:551: RD fmal(0x1.ce0e2ea55040ep-1022,0x1.ce5a55fa3828dp-2,0x1.f2f444d50ce59p-1022) want 0x1.61ca36f5a8a79p-1021 got -0x1.173f0cea128p-1022 ulperr -8680214267691008.000 = -0x1.ed69bep+52 + -0x1.ffdd18p-2
src/math/special/fma.h:552: RD fmal(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022) want 0x1.1440cf1c105ebp-1021 got -0x1.f88fda6p-1030 ulperr -4877233864835072.000 = -0x1.153d18p+52 + -0x1.ffffcp-2
src/math/special/fma.h:553: RD fmal(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022) want 0x1.1186e1f77012dp-1021 got -0x1.2ffba526fcp-1025 ulperr -5146169147654144.000 = -0x1.24869ep+52 + -0x1.fffb4p-2
src/math/special/fma.h:554: RD fmal(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022) want 0x1.8d86310bad175p-1022 got -0x1.1b755c367f8p-1023 ulperr -9486646453993472.000 = -0x1.0da07p+53 + -0x1.ffdc92p-2
src/math/special/fma.h:555: RD fmal(0x1.fb3391a4b1d23p-1022,0x1.4d8705b057caep-2,0x1.d026cb6dae73bp-1022) want 0x1.3aad18b424c67p-1021 got -0x1.0a1784c7c6cp-1021 ulperr -10216979872874496.000 = -0x1.22625p+53 + -0x1.ffbd7ap-2
src/math/special/fma.h:556: RD fmal(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022) want 0x1.c0048fd33a417p-1022 got -0x1.d026e457f1p-1024 ulperr -9922975402819584.000 = -0x1.1a0726p+53 + -0x1.ffe2fep-2
src/math/special/fma.h:557: RD fmal(0x1.aa9eff070281cp-1022,0x1.fab05661b48ebp-2,0x1.cbe2af6c69c6ep-1022) want 0x1.4f7ddbe122764p-1021 got 0x1.9e529858dap-1023 ulperr -4079821109854208.000 = -0x1.cfd26cp+51 + -0x1.000cf2p-1
src/math/special/fma.h:558: RD fmal(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022) want 0x1.e0e762ee2e7c5p-1022 got -0x1.e2fe0f96ecp-1023 ulperr -12708596701724672.000 = -0x1.693336p+53 + -0x1.ffc3ap-2
src/math/special/fma.h:559: RD fmal(0x1.4dab43918a9a8p-1022,0x1.ed667442b4751p-2,0x1.3f25f82e02e3ep-1022) want 0x1.dfec0ee732dcap-1022 got 0x1.6a41c4d18ap-1022 ulperr -2069988076683264.000 = -0x1.d6a92ap+50 + -0x1.002d48p-1
src/math/special/fma.h:560: RD fmal(0x1.7943735951931p-1022,0x1.fa6a357c5c9ddp-2,0x1.0bed44b0b71b4p-1022) want 0x1.c6803a6059abep-1022 got 0x1.0e970cce134p-1022 ulperr -3235394032238592.000 = -0x1.6fd25cp+51 + -0x1.0021d2p-1
src/math/special/fma.h:561: RD fmal(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022) want 0x1.8640492c45959p-1022 got -0x1.3271a1b38p-1027 ulperr -7033840023371776.000 = -0x1.8fd3d8p+52 + -0x1.fffd9cp-2
src/math/special/fma.h:562: RD fmal(0x1.f52172c56bdf5p-1022,0x1.672b2de422734p-2,0x1.7bc5d708e5a34p-1022) want 0x1.15c5b95145cc6p-1021 got 0x1.3cf4f71d188p-1021 ulperr 689341647028224.000 = 0x1.3979eep+49 + -0x1.00279ep-1
src/math/special/fma.h:563: RD fmal(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022) want 0x1.e7fa0dd76fbefp-1022 got -0x1.60a5d541bp-1024 ulperr -10135539776749568.000 = -0x1.2011c2p+53 + -0x1.ffe9f6p-2
src/math/special/fma.h:564: RD fmal(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022) want 0x1.b63a7f56fce1fp-1022 got -0x1.497a9bc52p-1024 ulperr -9158461560455168.000 = -0x1.044c94p+53 + -0x1.ffeb68p-2
src/math/special/fma.h:565: RD fmal(0x1.f73d5f4e81fd8p-1022,0x1.7ccff2642124ap-2,0x1.e7d836a0c8308p-1022) want 0x1.517f1763126d3p-1021 got -0x1.06939f3372p-1021 ulperr -10556597969354752.000 = -0x1.2c095cp+53 + -0x1.ffbe5cp-2
src/math/special/fma.h:566: RD fmal(0x1.b4328925969fbp-1022,0x1.8fa02832a22d5p-2,0x1.2084598e2f8c6p-1022) want 0x1.cabf43838dc51p-1022 got -0x1.7c61d65f0a4p-1022 ulperr -14762119350190080.000 = -0x1.a3908ep+53 + -0x1.ffa0e8p-2
src/math/special/fma.h:567: RD fmal(0x1.66ee60a92676fp-1022,0x1.eddd2e7681ce4p-2,0x1.b81d57daeb3a7p-1022) want 0x1.329c918ffb682p-1021 got 0x1.cd379885b8p-1025 ulperr -4886855128449024.000 = -0x1.15c91ap+52 + -0x1.00039ap-1
src/math/special/fma.h:568: RD fmal(0x1.ff2737585895dp-1022,0x1.fb4bf3828ae4ap-2,0x1.4a866847740fp-1022) want 0x1.23e07e4dbbeaap-1021 got 0x1.46c53f7571p-1023 ulperr -3697601501200384.000 = -0x1.a45e5ep+51 + -0x1.000a36p-1
src/math/special/fma.h:569: RD fmal(0x1.5e2008d269a86p-1022,0x1.507bbbe4d78eep-2,0x1.6220c6f83f636p-1022) want 0x1.d52d9874f1c74p-1022 got 0x1.eda0503c4ap-1023 ulperr -3911886546403328.000 = -0x1.bcbae2p+51 + -0x1.001edap-1
src/math/special/fma.h:570: RD fmal(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022) want 0x1.9864925e2fb0fp-1022 got -0x1.53ae580e8cp-1025 ulperr -7931489798848512.000 = -0x1.c2da5ep+52 + -0x1.fff562p-2
src/math/special/fma.h:571: RD fmal(0x1.7b353b81e793dp-1022,0x1.82b426f874c6dp-2,0x1.d92b19d21fd5cp-1022) want 0x1.342fb0c544a78p-1021 got 0x1.2af4c8aebe4p-1022 ulperr -2792024289837056.000 = -0x1.3d6a9ap+51 + -0x1.0012bp-1
src/math/special/fma.h:572: RD fmal(0x1.5be667823370ap-1022,0x1.a8a99b163869bp-2,0x1.95456b68dc3bcp-1022) want 0x1.12c638de03c7p-1021 got 0x1.49af7fc787p-1023 ulperr -3383908364189696.000 = -0x1.80b4b2p+51 + -0x1.000a4ep-1
src/math/special/fma.h:573: RD fmal(0x1.17b0fc6c850e5p-1022,0x1.d1d0a4853c315p-2,0x1.36b79f7c0c24p-1022) want 0x1.b5f2baff5635cp-1022 got 0x1.6a19304724p-1026 ulperr -7306334223466496.000 = -0x1.9f5128p+52 + -0x1.0002d4p-1
src/math/special/fma.h:574: RD fmal(0x1.bd97819bacfd8p-1022,0x1.2c25f267ba4eep-2,0x1.804b5204a3f3ap-1022) want 0x1.01739c190fd96p-1021 got 0x1.b9e166e6b4p-1022 ulperr -642314707927040.000 = -0x1.241746p+49 + -0x1.001b9ep-1
src/math/special/fma.h:575: RD fmal(0x1.596577053873dp-1022,0x1.3562ab2d29949p-2,0x1.b3f1ee75db6e7p-1022) want 0x1.0e268a498009ap-1021 got 0x1.e8136bc1594p-1022 ulperr -459378025037824.000 = -0x1.a1cd48p+48 + -0x1.001e82p-1
src/math/special/fma.h:576: RD fmal(0x1.3c7a68cf0f7b3p-1022,0x1.9a55c15b167bdp-2,0x1.7635b7b163c07p-1022) want 0x1.f5073b93b7b8p-1022 got 0x1.75f9a972138p-1023 ulperr -5524661530001408.000 = -0x1.3a0a68p+52 + -0x1.00176p-1
src/math/special/fma.h:577: RD fmal(0x1.5825164bc4068p-1022,0x1.dcbb6e5ff3245p-2,0x1.52fc3be0e84dap-1022) want 0x1.f334771c2dcfap-1022 got 0x1.2b86ba6b02p-1022 ulperr -3512784226615296.000 = -0x1.8f5b7ap+51 + -0x1.00257p-1
src/math/special/fma.h:578: RD fmal(0x1.139ea77b760ecp+1022,0x1.9b25f2fd017eap+2,-0x1.bc16788922b6fp+1023) want 0x1.b93aac527380ep+1023 got 0x1.c3ec4f2eep+1022 ulperr -3787028625883136.000 = -0x1.ae890ap+51 + -0x1.001c3ep-1
src/math/special/fma.h:579: RD fmal(0x1.0e6f9c1657d7cp+1022,0x1.4d5c6b55ab5f1p+2,-0x1.e027dd5742e2cp+1023) want 0x1.c0538372b4bbep+1022 got 0x1.54dede6dep+1021 ulperr -4888709480579072.000 = -0x1.15e416p+52 + -0x1.00154ep-1
src/math/special/fma.h:580: RD fmal(0x1.1182524fa411cp+1022,0x1.a3dba56842d19p+2,-0x1.c1ad59474d71fp+1023) want 0x1.bf78969300a76p+1023 got 0x1.8651491efp+1022 ulperr -4438724951670784.000 = -0x1.f89fe6p+51 + -0x1.001866p-1
src/math/special/fma.h:581: RD fmal(0x1.1cbf4fb8ec82p+1022,0x1.5e32019a84fbbp+2,-0x1.985af08f32edep+1023) want 0x1.72af6bbad4a28p+1023 got 0x1.a68c1c1ecp+1023 ulperr 912367084896256.000 = 0x1.9ee582p+49 + -0x1.0034d2p-1
src/math/special/fma.h:582: RD fmal(0x1.311e25c6db346p+1022,0x1.4e30db6c4b51dp+2,-0x1.7681f7a9786a7p+1023) want 0x1.a61d29434fc13p+1023 got -0x1.791d1989p+1017 ulperr -7529566759288832.000 = -0x1.ac019ep+52 + -0x1.fffe86p-2
src/math/special/fma.h:583: RD fmal(0x1.1201cf577052fp+1022,0x1.59730b2db7a16p+2,-0x1.56f1a64a078d5p+1023) want 0x1.8c8d801df34d9p+1023 got -0x1.3048609fd8p+1022 ulperr -inf = -inf + -0x1.ffd9f6p-2
src/math/special/fma.h:584: RD fmal(0x1.3e52335b76e81p+1022,0x1.4dbd56f857479p+2,-0x1.509340c11bd2ep+1023) want 0x1.ed6576837f653p+1023 got -0x1.e498d5441cp+1022 ulperr -inf = -inf + -0x1.ffc36cp-2
src/math/special/fma.h:585: RD fmal(0x1.18566b4f843cbp+1022,0x1.444fba10eaf29p+2,-0x1.f927beae57f0ap+1023) want 0x1.9a433b9796559p+1022 got 0x1.a048d2820cp+1022 ulperr 105937222238208.000 = 0x1.8165bap+46 + -0x1.ff6812p-2
src/math/special/fma.h:586: RD fmal(0x1.3fbe544fe1be8p+1022,0x1.2d2a5fda03639p+2,-0x1.007407dbfd03cp+1023) want 0x1.efdb644b613e5p+1023 got -0x1.e14223656p+1022 ulperr -inf = -inf + -0x1.ffc3d8p-2
src/math/special/fma.h:587: RD fmal(0x1.263a0d3bc2e4p+1022,0x1.4cc198adbc651p+2,-0x1.734b1c1f7fdb8p+1023) want 0x1.899878afc0fa2p+1023 got 0x1.a13620448p+1023 ulperr 415454199808000.000 = 0x1.79da78p+48 + -0x1.003426p-1
src/math/special/fma.h:588: RD fmal(0x1.5bf4aec8efc8ep+1022,0x1.555f0341516c9p+2,-0x1.c706408acd14cp+1023) want 0x1.d8f5e18b868bcp+1023 got 0x1.3e5679fdf8p+1022 ulperr -5520280126488576.000 = -0x1.39caa6p+52 + -0x1.0013e6p-1
src/math/special/fma.h:589: RD fmal(0x1.1e57f1af78279p+1022,0x1.34bc0c7f082b3p+2,-0x1.497b92c1365edp+1023) want 0x1.692cb7ec68a93p+1023 got -0x1.c0a1f29b28p+1021 ulperr -8326959650045952.000 = -0x1.d95536p+52 + -0x1.ffe3f6p-2
src/math/special/fma.h:590: RD fmal(0x1.1d9824cd73511p+1022,0x1.1d557ddfe47ffp+2,-0x1.556cdb1d20a72p+1023) want 0x1.2736a6b6e35f2p+1023 got 0x1.bc6f9c9778p+1021 ulperr -3238800478175232.000 = -0x1.70358p+51 + -0x1.000de4p-1
src/math/special/fma.h:591: RD fmal(0x1.1ff85a24aff31p+1022,0x1.39ab374b2680dp+2,-0x1.35e6b07b651b8p+1023) want 0x1.8bc7ce208708p+1023 got 0x1.84b319bafap+1023 ulperr -124568119279616.000 = -0x1.c52d1ap+46 + -0x1.003096p-1
src/math/special/fma.h:592: RD fmal(0x1.0449b3965227ep+1022,0x1.4430d4441f9f2p+2,-0x1.a6966c96307ep+1023) want 0x1.d94eda8c81771p+1022 got -0x1.992ed6b72p+1021 ulperr -11925734759071744.000 = -0x1.52f324p+53 + -0x1.ffccdap-2
src/math/special/fma.h:593: RD fmal(0x1.3c91fa00fd0c7p+1022,0x1.1b6661c0b0303p+2,-0x1.f1f2846b64483p+1023) want 0x1.95eae0d2644d3p+1022 got 0x1.9985d8eaap+1019 ulperr -6240425882943488.000 = -0x1.62ba26p+52 + -0x1.ff0cccp-2
src/math/special/fma.h:594: RD fmal(0x1.0979b36d46534p+1022,0x1.12fa205f41f7fp+2,-0x1.a83ecf4544a63p+1023) want 0x1.2420f34e2aa3cp+1022 got -0x1.335a0fe68p+1019 ulperr -5815056616914944.000 = -0x1.4a8c36p+52 + -0x1.007b32p-1
src/math/special/fma.h:595: RD fmal(0x1.4c89df582a599p+1022,0x1.55f3dc473ea8fp+2,-0x1.e35037292ddfp+1023) want 0x1.95109fdbc3771p+1023 got -0x1.afa3b29624p+1022 ulperr -inf = -inf + -0x1.ffca0cp-2
src/math/special/fma.h:596: RD fmal(0x1.35ee0a669c4fbp+1022,0x1.2263cb63f386ap+2,-0x1.449218ae35ac7p+1023) want 0x1.7a8ed977d817ap+1023 got 0x1.47da9ddfb8p+1022 ulperr -3775828961787904.000 = -0x1.ad4316p+51 + -0x1.00147ep-1
src/math/special/fma.h:597: RD fmal(0x1.117cc860f61bcp+1022,0x1.440985b25d994p+2,-0x1.d7a7d82000449p+1023) want 0x1.b960b7088e74fp+1022 got 0x1.ddfba372cp+1022 ulperr 643964914892800.000 = 0x1.24d762p+49 + -0x1.ff777ep-2
src/math/special/fma.h:598: RD fmal(0x1.1e78a37be320fp+1022,0x1.0db0fce62287bp+2,-0x1.376337da5eb53p+1023) want 0x1.24326b9956dfbp+1023 got -0x1.d2881b3596p+1023 ulperr -inf = -inf + -0x1.ff8b5ep-2
src/math/special/fma.h:599: RD fmal(0x1.0c79b5c8331c2p+1022,0x1.0aba6ea746b5p+2,-0x1.c86f1fcaf0741p+1023) want 0x1.9c135bb2cff84p+1021 got -0x1.cc298bacp+1019 ulperr -9273126449840128.000 = -0x1.078eep+53 + -0x1.00f19ep-1
src/math/special/fma.h:600: RD fmal(0x1.556c4c072f272p+1022,0x1.347758d7d4eb5p+2,-0x1.c6fe4f24b248dp+1023) want 0x1.6fcc9f756df6dp+1023 got -0x1.f6f4c76598p+1022 ulperr -inf = -inf + -0x1.ffc122p-2
src/math/special/fma.h:601: RD fmal(-0x1.e8349b891b2fp-1,0x1.4a6dec9b72578p-1,0x1.3b6151ce809ddp-1) want 0x1.3a62fe330b355p-11 got -0x1.d97121p-11 ulperr -13859627535958016.000 = -0x1.89ea1p+53 + -0x1.ff89a4p-2
src/math/special/fma.h:602: RD fmal(0x1.2996632ac7d74p-1,-0x1.bb3c58b654d94p-1,0x1.01a6660e64a31p-1) want 0x1.ed045bb956a8ep-15 got -0x1.070d62p-15 ulperr -13300912420290560.000 = -0x1.7a08ep+53 + -0x1.eabe3cp-2
src/math/special/fma.h:603: RD fmal(-0x1.c602e894c1df8p-1,0x1.a1c980e7d3f94p-1,0x1.7271244b43386p-1) want -0x1.ba251fe026e5cp-15 got -0x1.af2b6c0000001p-15 ulperr 193081294979072.000 = 0x1.5f367cp+47 + -0x1.02ca1ap-1
src/math/special/fma.h:604: RD fmal(-0x1.c84baf47e85cp-1,0x1.770b5149ef2ep-1,0x1.4d80f139320bap-1) want -0x1.79277433b9e24p-10 got 0x1.d4b6effffffffp-11 ulperr 10757822555881472.000 = 0x1.31c176p+53 + -0x1.001d4cp-1
src/math/special/fma.h:605: RD fmal(-0x1.36e667dcf9c6p-1,0x1.2591f82556b88p-1,0x1.2452a0f795f95p-1) want 0x1.c83c8e63c159fp-3 got -0x1.221cccp-12 ulperr -8036166741786624.000 = -0x1.c8cd9ep+52 + -0x1.ffffdcp-2
src/math/special/fma.h:606: RD fmal(0x1.88b2cede61e4cp-1,-0x1.71dcab5ad9e9p-3,0x1.32b27fea2ae97p-3) want 0x1.70461909b25e2p-7 got -0x1.affe57fffffffp-17 ulperr -6486163510525952.000 = -0x1.70b21ap+52 + -0x1.ffffe6p-2
src/math/special/fma.h:607: RD fmal(0x1.8d1e44002c98p-3,-0x1.af9fdfb347834p-1,0x1.e280942fb4146p-4) want -0x1.761ac23896dfep-5 got 0x1.0bec47fffffffp-14 ulperr 6590522089013248.000 = 0x1.76a0b8p+52 + -0x1.00001p-1
src/math/special/fma.h:608: RD fmal(0x1.236e8cb9492c8p-1,-0x1.d37443a57f1c4p-1,0x1.ca10df801aabcp-4) want -0x1.a1a2cdf0138fap-2 got 0x1.f090cab6fffffp-5 ulperr 8439088361242624.000 = 0x1.dfb4e6p+52 + -0x1.0007c2p-1
src/math/special/fma.h:609: RD fmal(-0x1.6ad943e610fb8p-1,-0x1.cef92a7bb18bcp-1,0x1.f28587d8fb0ep-4) want 0x1.866b5204b9aecp-1 got -0x1.8c9eb9a7p-5 ulperr -7304415983697920.000 = -0x1.9f353ep+52 + -0x1.fff9cep-2
src/math/special/fma.h:610: RD fmal(-0x1.60a8569a5d894p-1,-0x1.ca07e29dd171cp-1,0x1.b6c475ace09ecp-4) want 0x1.72549291e2f7ap-1 got -0x1.b6fd181e8p-5 ulperr -6997594257489920.000 = -0x1.8dc466p+52 + -0x1.fff924p-2
src/math/special/fma.h:611: RD fmal(0x1.d1962720d678cp-1,-0x1.4548ee45c4084p-1,0x1.f416ab193d75cp-4) want -0x1.d2929879dc854p-2 got 0x1.fc38e6f3fffffp-8 ulperr 8347731722502144.000 = 0x1.da837cp+52 + -0x1.0000fep-1
src/math/special/fma.h:612: RD fmal(-0x1.9ddcb295a7d64p-1,0x1.67fb3a2068a78p-1,0x1.da9cd4597fe0ap-4) want -0x1.cf4f6eb4fc5d9p-2 got 0x1.59da5511fffffp-6 ulperr 8530909930192896.000 = 0x1.e4ed14p+52 + -0x1.0002b4p-1
src/math/special/fma.h:613: RD fmal(0x1.c00d16ed45b88p+0,0x1.c787eddda3664p+0,0x1.1e3e6f0cc1802p-5) want 0x1.931b8f379dcc3p+1 got -0x1.63fb63b8p-6 ulperr -7140470639558656.000 = -0x1.95e386p+52 + -0x1.ffff4ep-2
src/math/special/fma.h:614: RD fmal(0x1.19c2a2372c184p+0,-0x1.cb506961c19fp+0,0x1.db1abf3f7ba3ap-6) want -0x1.f21c0eab0bc19p+0 got 0x1.a29607ffffff8p-13 ulperr 8763735275470848.000 = 0x1.f22922p+52 + -0x1.000002p-1
src/math/special/fma.h:615: RD fmal(-0x1.3a263218ccd1cp+0,-0x1.e818d390df27cp+0,0x1.2a81ed71785f5p-5) want 0x1.3025ab0f63925p+1 got -0x1.bfdf0b9cp-6 ulperr -5412168283455488.000 = -0x1.33a56ap+52 + -0x1.ffff2p-2
src/math/special/fma.h:616: RD fmal(0x1.b0b041fbaca58p+0,-0x1.9d5f76d178e6p+0,0x1.0215c7bb84cf9p-6) want -0x1.5b52aec7ef401p+1 got 0x1.6be7a77ffffffp-7 ulperr 6135177709355008.000 = 0x1.5cbe96p+52 + -0x1.00002ep-1
src/math/special/fma.h:617: RD fmal(-0x1.377549d9a87f4p+0,-0x1.a13d4a03dd6d8p+0,0x1.f190388bc5cc6p-7) want 0x1.ff83bebbd6fe4p+0 got -0x1.e5a6a44p-9 ulperr -9015347881443328.000 = -0x1.003b4ap+53 + -0x1.ffffc4p-2
src/math/special/fma.h:618: RD fmal(0x1.6a726c0762ac8p-1,-0x1.d32f2d30e483cp+0,0x1.f953eb70fbde6p-7) want -0x1.46c61b3070333p+0 got 0x1.e556e47fffffep-11 ulperr 5752835425697792.000 = 0x1.4702c6p+52 + -0x1.000008p-1
src/math/special/fma.h:619: RD fmal(0x1.94cf2509d40cp-1,0x1.721976af6dfbp+0,0x1.f51a456921c3ep-7) want 0x1.28880842acc6p+0 got -0x1.effe1ep-8 ulperr -5250719925927936.000 = -0x1.2a7808p+52 + -0x1.ffff84p-2
src/math/special/fma.h:620: RD fmal(0x1.b128eb0ad8728p-1,0x1.7682566a54268p+0,0x1.bd4122a074cafp-8) want 0x1.3e9469530e762p+0 got -0x1.6fe0c7cp-9 ulperr -5617154187591680.000 = -0x1.3f4c5ap+52 + -0x1.ffffd2p-2
src/math/special/fma.h:621: RD fmal(0x1.c4ae75976e35cp+0,-0x1.11c329dd1160cp+0,0x1.9993f5e13c9bdp-8) want -0x1.e27d925b07cf2p+0 got 0x1.198edf5ffffffp-9 ulperr 8497736676540416.000 = 0x1.e30a58p+52 + -0x1.000012p-1
src/math/special/fma.h:622: RD fmal(-0x1.85f81f88fa3c4p+0,-0x1.17648a494fa18p-1,0x1.37d305113b48p-10) want 0x1.aa367b7490e57p-1 got -0x1.7a59ecffffffep-12 ulperr -7501265609162752.000 = -0x1.aa65c8p+52 + -0x1.fffff4p-2
src/math/special/fma.h:623: RD fmal(-0x1.311f2b4319efcp+0,0x1.abbb5272e3d18p-1,0x1.35841b7bdbcfep-10) want -0x1.fd337f24b39e1p-1 got 0x1.4cbc317ffffffp-11 ulperr 8963677814259712.000 = 0x1.fd86aep+52 + -0x1.00000ap-1
src/math/special/fma.h:624: RD fmal(0x1.ab94369a9a0dp-1,0x1.9d1e0e0aa3bacp+0,0x1.0a63ca87cfa78p-11) want 0x1.592173ee296b6p+0 got -0x1.fd8043ffffff8p-13 ulperr -6072697209487360.000 = -0x1.59316p+52 + -0x1.fffffcp-2
src/math/special/fma.h:666: RU fmal(0x1p+0,0x1p+0,-0x1p-1074) want 0x1p+0 got -0x1.fffffp-43 ulperr -4503599627370496.000 = -0x1p+52 + 0x0p+0
src/math/special/fma.h:667: bad fp exception: RU fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022)=0x1p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:667: RU fmal(0x1p-1074,0x1p-1074,0x1.fffffffffffffp-1022) want 0x1p-1021 got 0x1p-1074 ulperr -4503599358935040.000 = -0x1.fffffep+51 + 0x1p-1
src/math/special/fma.h:668: bad fp exception: RU fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022)=0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:668: RU fmal(0x1p-1074,-0x1p-1074,0x1.fffffffffffffp-1022) want 0x1.fffffffffffffp-1022 got -0x0p+0 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x0p+0
src/math/special/fma.h:669: bad fp exception: RU fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.fffffffffffffp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:669: RU fmal(0x1p-1074,-0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.fffffffffffffp-1022 got -0x0p+0 ulperr 9007199254740992.000 = 0x1p+53 + 0x0p+0
src/math/special/fma.h:670: bad fp exception: RU fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022)=-0x1.ffffffffffffep-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:670: RU fmal(0x1p-1074,0x1p-1074,-0x1.fffffffffffffp-1022) want -0x1.ffffffffffffep-1022 got 0x1p-1074 ulperr 9007199254740992.000 = 0x1p+53 + 0x1p+0
src/math/special/fma.h:671: RU fmal(0x1p-1074,-0x1p-1074,0x1p-1074) want 0x1p-1074 got -0x0p+0 ulperr -1.000 = -0x1p+0 + 0x0p+0
src/math/special/fma.h:672: RU fmal(0x1p-1074,-0x1p-1074,-0x1p-1074) want -0x1p-1074 got -0x0p+0 ulperr 1.000 = 0x1p+0 + 0x0p+0
src/math/special/fma.h:673: RU fmal(0x1.0000000000001p+0,0x1p+0,0x1p+53) want 0x1.0000000000001p+53 got 0x1.000008p+12 ulperr -4503599358935040.000 = -0x1.fffffep+51 + 0x1p-1
src/math/special/fma.h:674: RU fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p+53) want 0x1.0000000000001p+53 got 0x1.ffc02p+10 ulperr -4503599358935040.000 = -0x1.fffffep+51 + 0x1p-1
src/math/special/fma.h:675: RU fmal(0x1p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp+53) want 0x1p+54 got -0x1.ffffep+10 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-2
src/math/special/fma.h:676: RU fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep+53) want 0x1.fffffffffffffp+53 got 0x1.ffc02p+10 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:677: RU fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1p-52) want 0x1.0000000000002p+0 got -0x1.fffffp-42 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:678: RU fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.fffffffffffffp-53) want 0x1.0000000000002p+0 got -0x1.fffff8p-41 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:679: RU fmal(0x1.0000000000005p+0,0x1.ffffffffffffbp-1,0x1p-52) want 0x1.0000000000004p+0 got -0x1.8fffff8p-37 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:680: RU fmal(0x1.0000000000006p+0,0x1.ffffffffffffdp-1,0x1p-52) want 0x1.0000000000006p+0 got -0x1.1fffff8p-37 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-1
src/math/special/fma.h:699: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff5p+0 got 0x1.6800008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:700: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1p+0) want 0x1.ffffffffffff9p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:701: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffff7p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:702: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffffap-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffff5p+0 got 0x1.b000008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:703: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffff7p+0 got 0x1.f800008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:704: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff9p-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffff5p+0 got 0x1.f800008p-37 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:705: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffff7p+0 got 0x1.2000004p-36 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:706: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff8p-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffff5p+0 got 0x1.2000004p-36 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:707: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.fffffffffffffp-1) want 0x1.ffffffffffff7p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:708: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffff5p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:709: RU fmal(0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffff3p+0 got 0x1.4400004p-36 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1p-1
src/math/special/fma.h:710: RU fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffep-1) want 0x1p+1 got -0x1.fffffp-42 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-2
src/math/special/fma.h:711: RU fmal(0x1.0000000000001p+0,0x1.fffffffffffffp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffep+0 got -0x1.fffffp-42 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:712: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.fffffffffffffp-1) want 0x1p+1 got -0x1.fffff8p-41 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-2
src/math/special/fma.h:713: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffffbp-1) want 0x1.ffffffffffffep+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:714: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffep-1,0x1.ffffffffffff7p-1) want 0x1.ffffffffffffcp+0 got -0x1.fffff8p-41 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:715: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1p+0) want 0x1p+1 got -0x1.7ffffcp-40 ulperr -4503599627370496.000 = -0x1p+52 + 0x1p-2
src/math/special/fma.h:716: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffffcp-1) want 0x1.ffffffffffffep+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:717: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffdp-1,0x1.ffffffffffff8p-1) want 0x1.ffffffffffffcp+0 got -0x1.7ffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:718: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffffdp-1) want 0x1.ffffffffffffep+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:719: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffcp-1,0x1.ffffffffffff9p-1) want 0x1.ffffffffffffcp+0 got -0x1.fffffcp-40 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:720: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffep-1) want 0x1.ffffffffffffep+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:721: RU fmal(0x1.0000000000001p+0,0x1.ffffffffffffbp-1,0x1.ffffffffffffap-1) want 0x1.ffffffffffffcp+0 got -0x1.3ffffep-39 ulperr -9007199254740992.000 = -0x1p+53 + 0x1p-1
src/math/special/fma.h:722: RU fmal(0x1.5872449b765b9p+0,0x1.c9acf91f8de2bp+0,0x1.9265607e4d168p+0) want 0x1.fd190c77c2a68p+1 got -0x1.b3fc37becffffp-4 ulperr -9195828849672192.000 = -0x1.055c76p+53 + 0x1.0001b4p-1
src/math/special/fma.h:723: RU fmal(0x1.81d010b146d0ep+0,0x1.2d3c680dc9071p+0,0x1.a80b69538754cp+0) want 0x1.b7040b44973a7p+1 got 0x1.4d0cb20197001p+1 ulperr -1864177136173056.000 = -0x1.a7dd64p+50 + 0x1.ffacbcp-2
src/math/special/fma.h:724: RU fmal(0x1.6a44f2252b6a2p+0,0x1.da452a378b832p+0,0x1.1fe2ce329104p+0) want 0x1.df842b6f48b13p+1 got 0x1.12e95c1ba4001p+0 ulperr -6017591705337856.000 = -0x1.560f7cp+52 + 0x1.ffdda2p-2
src/math/special/fma.h:725: RU fmal(0x1.096b1d26463eep+0,0x1.d846d3e34333p+0,0x1.721e3480922b8p+0) want 0x1.ade2909c026ap+1 got -0x1.a139d9b2bffffp-1 ulperr -9397595675820032.000 = -0x1.0b1882p+53 + 0x1.000d0ap-1
src/math/special/fma.h:726: RU fmal(0x1.99bd3434c454bp+0,0x1.03cb8e4115bdep+0,0x1.109f107188b08p+0) want 0x1.5837a47d37fafp+1 got 0x1.cfdec0c00a001p+0 ulperr -1975290892910592.000 = -0x1.c1211p+50 + 0x1.ffc604p-2
src/math/special/fma.h:727: RU fmal(0x1.ba930a0a78ed2p+0,0x1.8c24e8d67f636p+0,0x1.ac49dbfbf8affp+0) want 0x1.164947ae6a5dap+2 got -0x1.33e3b04ecffffp-2 ulperr -5234191281160192.000 = -0x1.298782p+52 + 0x1.000268p-1
src/math/special/fma.h:728: RU fmal(0x1.be224ad773191p+0,0x1.d96b77169731fp+0,0x1.662cfb75d8edep+0) want 0x1.27cd67e720f79p+2 got 0x1.e4711611c7801p+1 ulperr -942615600037888.000 = -0x1.aca6e6p+49 + 0x1.ffc372p-2
src/math/special/fma.h:729: RU fmal(0x1.59e7a1b0bdb3cp+0,0x1.2decba4d46421p+0,0x1.88f4062e96df5p+0) want 0x1.90749e4794f7ap+1 got -0x1.b3c84a9a87fffp-1 ulperr -8961479327875072.000 = -0x1.fd66bp+52 + 0x1.000d9ep-1
src/math/special/fma.h:730: RU fmal(0x1.22edf4b4da9a7p+0,0x1.dfa8d65f506cdp+0,0x1.2799208da2fbap+0) want 0x1.a45a1e99ed7a9p+1 got 0x1.a0bdfb8976001p-1 ulperr -5562059420860416.000 = -0x1.3c2a9ep+52 + 0x1.ffe5f4p-2
src/math/special/fma.h:731: RU fmal(0x1.ad5b991a2a279p+0,0x1.f02fd26706024p+0,0x1.831cdd5c8797cp+0) want 0x1.30d3a2ac90a61p+2 got 0x1.c7c15e1c82001p+1 ulperr -1353701616779264.000 = -0x1.33cbcep+50 + 0x1.ffc708p-2
src/math/special/fma.h:732: RU fmal(0x1.531f9620e764ap+0,0x1.cad61b54d4425p+0,0x1.df817cae8a9afp+0) want 0x1.0fd4e7f8671ddp+2 got 0x1.8e74e26059001p+1 ulperr -1277252004216832.000 = -0x1.2269dap+50 + 0x1.ffce32p-2
src/math/special/fma.h:733: RU fmal(0x1.629a5ad79494fp+0,0x1.049e58693f4c4p+0,0x1.45b0109e4d00cp+0) want 0x1.5758154e14966p+1 got -0x1.01173c9c1ffffp-3 ulperr -6322846842224640.000 = -0x1.676988p+52 + 0x1.000202p-1
src/math/special/fma.h:734: RU fmal(0x1.2f52b53f9240ap+0,0x1.1d5c686dbb0dap+0,0x1.6da3e392a4fd4p+0) want 0x1.5fe03a6795913p+1 got 0x1.5bdb7d9084001p+0 ulperr -3130480060792832.000 = -0x1.63e4f6p+51 + 0x1.ffd484p-2
src/math/special/fma.h:735: RU fmal(0x1.058667552b49ep+0,0x1.23307bacc1c42p+0,0x1.5b059b47cd8f5p+0) want 0x1.423f752486d14p+1 got -0x1.4bfb042743fffp+0 ulperr -8589175993401344.000 = -0x1.e83cf6p+52 + 0x1.0014cp-1
src/math/special/fma.h:736: RU fmal(0x1.a717d95337ed8p+0,0x1.2b1c37846aaadp+0,0x1.be65672f885b1p+0) want 0x1.d65e72303c076p+1 got -0x1.7e0573ec03fffp+1 ulperr -14995406941323264.000 = -0x1.aa31f2p+53 + 0x1.002fcp-1
src/math/special/fma.h:737: RU fmal(0x1.deb79287b3d32p+0,0x1.62776b829babap+0,0x1.67daf18bd2eb1p+0) want 0x1.ff5a0d45c69d7p+1 got 0x1.ad881652a0001p-3 ulperr -8523519902089216.000 = -0x1.e4818ap+52 + 0x1.fff94ap-2
src/math/special/fma.h:738: RU fmal(0x1.fbf12d3a6de91p+0,0x1.879fe6124f11p+0,0x1.9f3f1247a8641p+0) want 0x1.2a126c6980019p+2 got 0x1.45e3d61a84001p+2 ulperr 489379780886528.000 = 0x1.bd169cp+48 + 0x1.ffae88p-2
src/math/special/fma.h:739: RU fmal(0x1.c589628460e01p+0,0x1.e1bec1c797533p+0,0x1.349f30cdb84bbp+0) want 0x1.2286118b6f6e6p+2 got -0x1.8e9d95e0667ffp+1 ulperr -8617206560587776.000 = -0x1.e9d4dcp+52 + 0x1.0018eap-1
src/math/special/fma.h:740: RU fmal(0x1.46fd6c2c924ebp+0,0x1.65e2f02e730a1p+0,0x1.37739d2751098p+0) want 0x1.804a71c1f1273p+1 got 0x1.855d7947cb001p+0 ulperr -3335623268106240.000 = -0x1.7b376ap+51 + 0x1.ffcf54p-2
src/math/special/fma.h:741: RU fmal(0x1.f99e595ae11fdp+0,0x1.bd33d9a1d81bp+0,0x1.932a2a2e244c1p+0) want 0x1.409e34f8f2f8ap+2 got -0x1.7a49668943fffp+2 ulperr -12295260860317696.000 = -0x1.5d73ccp+53 + 0x1.002f4ap-1
src/math/special/fma.h:742: RU fmal(0x1.59ea1e56bfe55p+0,0x1.6f46b7d412a44p+0,0x1.80f2bc9a32cc3p+0) want 0x1.b89c7640e33p+1 got -0x1.ca180bfb5ffffp-3 ulperr -8254993178034176.000 = -0x1.d53df6p+52 + 0x1.000394p-1
src/math/special/fma.h:743: RU fmal(0x1.61490fcb44129p+0,0x1.0038ec4fc35c2p+0,0x1.df7436ed7a7b7p+0) want 0x1.a085ea68d05dp+1 got -0x1.5ed2c690f6fffp+1 ulperr -13499301254660096.000 = -0x1.7fac58p+53 + 0x1.002bdap-1
src/math/special/fma.h:744: RU fmal(0x1.d41b98788502bp+0,0x1.1a7b77843aca6p+0,0x1.05be891837d36p+0) want 0x1.8523596cecedap+1 got -0x1.48c8fc403bfffp-1 ulperr -8291801584631808.000 = -0x1.d75598p+52 + 0x1.000a46p-1
src/math/special/fma.h:745: RU fmal(0x1.3153cf6f69af9p+0,0x1.aaa947e38e57ap+0,0x1.8519f9b590645p+0) want 0x1.c0fcab7b46369p+1 got 0x1.25f4f4bd50001p-3 ulperr -7575453653008384.000 = -0x1.ae9d5cp+52 + 0x1.fffb68p-2
src/math/special/fma.h:746: RU fmal(0x1.c25a1f73581aap+0,0x1.0a51ffca372ap+0,0x1.0c77e3ebac5f3p+0) want 0x1.707ce48c7d72ep+1 got -0x1.3261c9a0dffffp+1 ulperr -11872435288670208.000 = -0x1.516f56p+53 + 0x1.00264cp-1
src/math/special/fma.h:747: RU fmal(0x1.829c2cde44b7p+0,0x1.f692e86d8cb36p+0,0x1.455e72d264bfp+0) want 0x1.0f16a3b8b3f98p+2 got -0x1.684386465ffffp+0 ulperr -6353494655107072.000 = -0x1.692784p+52 + 0x1.000b42p-1
src/math/special/fma.h:748: RU fmal(0x1.94729588dcc69p+0,0x1.c3bb794c6edf8p+0,0x1.9da4e94d262d2p+0) want 0x1.19d4bd84d9fd3p+2 got 0x1.e1b9a27570001p-1 ulperr -3898698849320960.000 = -0x1.bb3b12p+51 + 0x1.fff0f2p-2
src/math/special/fma.h:749: RU fmal(0x1.e6a5e7e39c3d5p+0,0x1.1b69af2bdd978p+0,0x1.e7ef1eafa119cp+0) want 0x1.00ac5b44c9f32p+2 got -0x1.6777d5d393fffp+1 ulperr -7677358731427840.000 = -0x1.b46846p+52 + 0x1.001678p-1
src/math/special/fma.h:750: bad fp exception: RU fmal(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022)=0x1.b594d0e4368fp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:750: RU fmal(0x1.bc9ba1320700cp-1022,0x1.981f2e1a451a8p-2,0x1.046144efc0ceap-1022) want 0x1.b594d0e4368fp-1022 got -0x1.9dedc9560fffep-1023 ulperr -11338968138252288.000 = -0x1.4245dap+53 + 0x1.0019dep-1
src/math/special/fma.h:751: RU fmal(0x1.022db53c98d14p-1022,0x1.21157eef74848p-2,0x1.2f880432b1bc1p-1022) want 0x1.786ad60a02b3ep-1022 got -0x1.150255ac97fffp-1022 ulperr -11495198647386112.000 = -0x1.46b694p+53 + 0x1.0022ap-1
src/math/special/fma.h:752: bad fp exception: RU fmal(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022)=0x1.cbb085199a3f6p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:752: RU fmal(0x1.805a491fa9597p-1022,0x1.e0f49d782ff87p-2,0x1.172a62346206p-1022) want 0x1.cbb085199a3f6p-1022 got -0x1.6ed115da2f7fep-1023 ulperr -11313497908445184.000 = -0x1.418c88p+53 + 0x1.0016eep-1
src/math/special/fma.h:753: bad fp exception: RU fmal(0x1.adbc3a9d816dep-1022,0x1.e039d4431e3cdp-2,0x1.93ceef6fe18a2p-1022)=0x1.2eabb7dc0e2f1p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:753: RU fmal(0x1.adbc3a9d816dep-1022,0x1.e039d4431e3cdp-2,0x1.93ceef6fe18a2p-1022) want 0x1.2eabb7dc0e2f1p-1021 got 0x1.ef7b6794e3002p-1023 ulperr -3145487213395968.000 = -0x1.6599bap+51 + 0x1.ffe108p-2
src/math/special/fma.h:754: RU fmal(0x1.645aa5c2df3afp-1022,0x1.649edfcad854fp-2,0x1.8b43e0bbaeb01p-1022) want 0x1.03af571d2b505p-1021 got 0x1.0ce86163c0201p-1021 ulperr 162249452814336.000 = 0x1.27214ap+47 + 0x1.ffbcc6p-2
src/math/special/fma.h:755: bad fp exception: RU fmal(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022)=0x1.ad9ce7fcefa4p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:755: RU fmal(0x1.133474a2c0fb1p-1022,0x1.72442bcbfa01dp-2,0x1.4a1a21971c5dbp-1022) want 0x1.ad9ce7fcefa4p-1022 got -0x1.12bc4931e5ff8p-1025 ulperr -8161979755659264.000 = -0x1.cff47p+52 + 0x1.00044ap-1
src/math/special/fma.h:756: RU fmal(0x1.8ee3feb00c3e7p-1022,0x1.53bd9353313bcp-2,0x1.5501b57dc3b6fp-1022) want 0x1.d9598906f0bb4p-1022 got -0x1.4660b83f56fffp-1022 ulperr -14068955652030464.000 = -0x1.8fdd2p+53 + 0x1.0028ccp-1
src/math/special/fma.h:757: RU fmal(0x1.161225cfa61e2p-1022,0x1.b6dd69a0af5bp-2,0x1.924ffc3ead5c3p-1022) want 0x1.04be6fc25367cp-1021 got -0x1.f3ab56daa7fffp-1022 ulperr -8982192344530944.000 = -0x1.fe941ap+52 + 0x1.001f3ap-1
src/math/special/fma.h:758: bad fp exception: RU fmal(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022)=0x1.70b6c3169f044p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:758: RU fmal(0x1.820f7faf219afp-1022,0x1.06717ae771f6dp-2,0x1.0dc5035f5e2afp-1022) want 0x1.70b6c3169f044p-1022 got -0x1.a779baefbe7fep-1023 ulperr -10211413595258880.000 = -0x1.2239dp+53 + 0x1.001a78p-1
src/math/special/fma.h:759: RU fmal(0x1.ce0e2ea55040ep-1022,0x1.ce5a55fa3828dp-2,0x1.f2f444d50ce59p-1022) want 0x1.61ca36f5a8a7ap-1021 got -0x1.173f0cea127ffp-1022 ulperr -8680213730820096.000 = -0x1.ed69bcp+52 + 0x1.001174p-1
src/math/special/fma.h:760: bad fp exception: RU fmal(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022)=0x1.1440cf1c105ecp-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:760: RU fmal(0x1.a7a271c67cdcfp-1022,0x1.1e979090e218p-2,0x1.b1f10b6e2177ap-1022) want 0x1.1440cf1c105ecp-1021 got -0x1.f88fda5ffffp-1030 ulperr -4877233327964160.000 = -0x1.153d16p+52 + 0x1.00002p-1
src/math/special/fma.h:761: bad fp exception: RU fmal(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022)=0x1.1186e1f77012ep-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:761: RU fmal(0x1.76df065829dc6p-1022,0x1.fb22ab1b86b8bp-2,0x1.6966267f317cp-1022) want 0x1.1186e1f77012ep-1021 got -0x1.2ffba526fbff8p-1025 ulperr -5146168610783232.000 = -0x1.24869cp+52 + 0x1.00026p-1
src/math/special/fma.h:762: bad fp exception: RU fmal(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022)=0x1.8d86310bad176p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:762: RU fmal(0x1.8b004a28b70dbp-1022,0x1.48e5805a8b453p-2,0x1.0ea791f716557p-1022) want 0x1.8d86310bad176p-1022 got -0x1.1b755c367f7fep-1023 ulperr -9486645380251648.000 = -0x1.0da06ep+53 + 0x1.0011b8p-1
src/math/special/fma.h:763: RU fmal(0x1.fb3391a4b1d23p-1022,0x1.4d8705b057caep-2,0x1.d026cb6dae73bp-1022) want 0x1.3aad18b424c68p-1021 got -0x1.0a1784c7c6bffp-1021 ulperr -10216978799132672.000 = -0x1.22624ep+53 + 0x1.002142p-1
src/math/special/fma.h:764: bad fp exception: RU fmal(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022)=0x1.c0048fd33a418p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:764: RU fmal(0x1.a5ba39730e197p-1022,0x1.794df89b1cc49p-2,0x1.24a0a388d0b6bp-1022) want 0x1.c0048fd33a418p-1022 got -0x1.d026e457f0ffcp-1024 ulperr -9922974329077760.000 = -0x1.1a0724p+53 + 0x1.000e82p-1
src/math/special/fma.h:765: bad fp exception: RU fmal(0x1.aa9eff070281cp-1022,0x1.fab05661b48ebp-2,0x1.cbe2af6c69c6ep-1022)=0x1.4f7ddbe122765p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:765: RU fmal(0x1.aa9eff070281cp-1022,0x1.fab05661b48ebp-2,0x1.cbe2af6c69c6ep-1022) want 0x1.4f7ddbe122765p-1021 got 0x1.9e529858da002p-1023 ulperr -4079820841418752.000 = -0x1.cfd26ap+51 + 0x1.ffe61ap-2
src/math/special/fma.h:766: bad fp exception: RU fmal(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022)=0x1.e0e762ee2e7c6p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:766: RU fmal(0x1.758bbff0ec4bap-1022,0x1.a4a197f3fa424p-2,0x1.47761e8d142ddp-1022) want 0x1.e0e762ee2e7c6p-1022 got -0x1.e2fe0f96ebffep-1023 ulperr -12708595627982848.000 = -0x1.693334p+53 + 0x1.001e3p-1
src/math/special/fma.h:767: RU fmal(0x1.4dab43918a9a8p-1022,0x1.ed667442b4751p-2,0x1.3f25f82e02e3ep-1022) want 0x1.dfec0ee732dcbp-1022 got 0x1.6a41c4d18a001p-1022 ulperr -2069987942465536.000 = -0x1.d6a928p+50 + 0x1.ffa57p-2
src/math/special/fma.h:768: RU fmal(0x1.7943735951931p-1022,0x1.fa6a357c5c9ddp-2,0x1.0bed44b0b71b4p-1022) want 0x1.c6803a6059abfp-1022 got 0x1.0e970cce13401p-1022 ulperr -3235393763803136.000 = -0x1.6fd25ap+51 + 0x1.ffbc5ap-2
src/math/special/fma.h:769: bad fp exception: RU fmal(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022)=0x1.8640492c4595ap-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:769: RU fmal(0x1.66c26bc29a5e8p-1022,0x1.3faed079f761ap-2,0x1.163ff906dd651p-1022) want 0x1.8640492c4595ap-1022 got -0x1.3271a1b37ffep-1027 ulperr -7033839486500864.000 = -0x1.8fd3d6p+52 + 0x1.000132p-1
src/math/special/fma.h:770: RU fmal(0x1.f52172c56bdf5p-1022,0x1.672b2de422734p-2,0x1.7bc5d708e5a34p-1022) want 0x1.15c5b95145cc7p-1021 got 0x1.3cf4f71d18801p-1021 ulperr 689341714137088.000 = 0x1.3979fp+49 + 0x1.ffb0c2p-2
src/math/special/fma.h:771: bad fp exception: RU fmal(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022)=0x1.e7fa0dd76fbfp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:771: RU fmal(0x1.2f94e89aa7558p-1022,0x1.dfa6d30835f5ep-2,0x1.59c6b0d504cf9p-1022) want 0x1.e7fa0dd76fbfp-1022 got -0x1.60a5d541afffcp-1024 ulperr -10135538703007744.000 = -0x1.2011cp+53 + 0x1.000b06p-1
src/math/special/fma.h:772: bad fp exception: RU fmal(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022)=0x1.b63a7f56fce2p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:772: RU fmal(0x1.6159897ae533cp-1022,0x1.f3b8892e3a3c8p-2,0x1.09ca702b7759p-1022) want 0x1.b63a7f56fce2p-1022 got -0x1.497a9bc51fffcp-1024 ulperr -9158460486713344.000 = -0x1.044c92p+53 + 0x1.000a4cp-1
src/math/special/fma.h:773: RU fmal(0x1.f73d5f4e81fd8p-1022,0x1.7ccff2642124ap-2,0x1.e7d836a0c8308p-1022) want 0x1.517f1763126d4p-1021 got -0x1.06939f3371fffp-1021 ulperr -10556596895612928.000 = -0x1.2c095ap+53 + 0x1.0020d2p-1
src/math/special/fma.h:774: RU fmal(0x1.b4328925969fbp-1022,0x1.8fa02832a22d5p-2,0x1.2084598e2f8c6p-1022) want 0x1.cabf43838dc52p-1022 got -0x1.7c61d65f0a3ffp-1022 ulperr -14762118276448256.000 = -0x1.a3908cp+53 + 0x1.002f8cp-1
src/math/special/fma.h:775: bad fp exception: RU fmal(0x1.66ee60a92676fp-1022,0x1.eddd2e7681ce4p-2,0x1.b81d57daeb3a7p-1022)=0x1.329c918ffb683p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:775: RU fmal(0x1.66ee60a92676fp-1022,0x1.eddd2e7681ce4p-2,0x1.b81d57daeb3a7p-1022) want 0x1.329c918ffb683p-1021 got 0x1.cd379885b8008p-1025 ulperr -4886854591578112.000 = -0x1.15c918p+52 + 0x1.fff8ccp-2
src/math/special/fma.h:776: bad fp exception: RU fmal(0x1.ff2737585895dp-1022,0x1.fb4bf3828ae4ap-2,0x1.4a866847740fp-1022)=0x1.23e07e4dbbeabp-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:776: RU fmal(0x1.ff2737585895dp-1022,0x1.fb4bf3828ae4ap-2,0x1.4a866847740fp-1022) want 0x1.23e07e4dbbeabp-1021 got 0x1.46c53f7571002p-1023 ulperr -3697601232764928.000 = -0x1.a45e5cp+51 + 0x1.ffeb94p-2
src/math/special/fma.h:777: bad fp exception: RU fmal(0x1.5e2008d269a86p-1022,0x1.507bbbe4d78eep-2,0x1.6220c6f83f636p-1022)=0x1.d52d9874f1c75p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:777: RU fmal(0x1.5e2008d269a86p-1022,0x1.507bbbe4d78eep-2,0x1.6220c6f83f636p-1022) want 0x1.d52d9874f1c75p-1022 got 0x1.eda0503c4a002p-1023 ulperr -3911886277967872.000 = -0x1.bcbaep+51 + 0x1.ffc24cp-2
src/math/special/fma.h:778: bad fp exception: RU fmal(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022)=0x1.9864925e2fb1p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:778: RU fmal(0x1.ce7e2e5812d86p-1022,0x1.0e6689d092e5fp-2,0x1.1e43fd55c3458p-1022) want 0x1.9864925e2fb1p-1022 got -0x1.53ae580e8bff8p-1025 ulperr -7931489261977600.000 = -0x1.c2da5cp+52 + 0x1.00054ep-1
src/math/special/fma.h:779: RU fmal(0x1.7b353b81e793dp-1022,0x1.82b426f874c6dp-2,0x1.d92b19d21fd5cp-1022) want 0x1.342fb0c544a79p-1021 got 0x1.2af4c8aebe401p-1022 ulperr -2792024021401600.000 = -0x1.3d6a98p+51 + 0x1.ffdaa2p-2
src/math/special/fma.h:780: bad fp exception: RU fmal(0x1.5be667823370ap-1022,0x1.a8a99b163869bp-2,0x1.95456b68dc3bcp-1022)=0x1.12c638de03c71p-1021, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:780: RU fmal(0x1.5be667823370ap-1022,0x1.a8a99b163869bp-2,0x1.95456b68dc3bcp-1022) want 0x1.12c638de03c71p-1021 got 0x1.49af7fc787002p-1023 ulperr -3383908095754240.000 = -0x1.80b4bp+51 + 0x1.ffeb66p-2
src/math/special/fma.h:781: bad fp exception: RU fmal(0x1.17b0fc6c850e5p-1022,0x1.d1d0a4853c315p-2,0x1.36b79f7c0c24p-1022)=0x1.b5f2baff5635dp-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:781: RU fmal(0x1.17b0fc6c850e5p-1022,0x1.d1d0a4853c315p-2,0x1.36b79f7c0c24p-1022) want 0x1.b5f2baff5635dp-1022 got 0x1.6a1930472401p-1026 ulperr -7306333686595584.000 = -0x1.9f5126p+52 + 0x1.fffa58p-2
src/math/special/fma.h:782: RU fmal(0x1.bd97819bacfd8p-1022,0x1.2c25f267ba4eep-2,0x1.804b5204a3f3ap-1022) want 0x1.01739c190fd97p-1021 got 0x1.b9e166e6b4001p-1022 ulperr -642314640818176.000 = -0x1.241744p+49 + 0x1.ffc8c4p-2
src/math/special/fma.h:783: RU fmal(0x1.596577053873dp-1022,0x1.3562ab2d29949p-2,0x1.b3f1ee75db6e7p-1022) want 0x1.0e268a498009bp-1021 got 0x1.e8136bc159401p-1022 ulperr -459377991483392.000 = -0x1.a1cd46p+48 + 0x1.ffc2fep-2
src/math/special/fma.h:784: bad fp exception: RU fmal(0x1.3c7a68cf0f7b3p-1022,0x1.9a55c15b167bdp-2,0x1.7635b7b163c07p-1022)=0x1.f5073b93b7b81p-1022, want INEXACT got INEXACT|UNDERFLOW
src/math/special/fma.h:784: RU fmal(0x1.3c7a68cf0f7b3p-1022,0x1.9a55c15b167bdp-2,0x1.7635b7b163c07p-1022) want 0x1.f5073b93b7b81p-1022 got 0x1.75f9a97213802p-1023 ulperr -5524660993130496.000 = -0x1.3a0a66p+52 + 0x1.ffd14p-2
src/math/special/fma.h:785: RU fmal(0x1.5825164bc4068p-1022,0x1.dcbb6e5ff3245p-2,0x1.52fc3be0e84dap-1022) want 0x1.f334771c2dcfbp-1022 got 0x1.2b86ba6b02001p-1022 ulperr -3512783958179840.000 = -0x1.8f5b78p+51 + 0x1.ffb51ep-2
src/math/special/fma.h:786: RU fmal(0x1.139ea77b760ecp+1022,0x1.9b25f2fd017eap+2,-0x1.bc16788922b6fp+1023) want 0x1.b93aac527380fp+1023 got 0x1.c3ec4f2ee0001p+1022 ulperr -3787028357447680.000 = -0x1.ae8908p+51 + 0x1.ffc782p-2
src/math/special/fma.h:787: RU fmal(0x1.0e6f9c1657d7cp+1022,0x1.4d5c6b55ab5f1p+2,-0x1.e027dd5742e2cp+1023) want 0x1.c0538372b4bbfp+1022 got 0x1.54dede6de0001p+1021 ulperr -4888708943708160.000 = -0x1.15e414p+52 + 0x1.ffd564p-2
src/math/special/fma.h:788: RU fmal(0x1.1182524fa411cp+1022,0x1.a3dba56842d19p+2,-0x1.c1ad59474d71fp+1023) want 0x1.bf78969300a77p+1023 got 0x1.8651491ef0001p+1022 ulperr -4438724683235328.000 = -0x1.f89fe4p+51 + 0x1.ffcf36p-2
src/math/special/fma.h:789: RU fmal(0x1.1cbf4fb8ec82p+1022,0x1.5e32019a84fbbp+2,-0x1.985af08f32edep+1023) want 0x1.72af6bbad4a29p+1023 got 0x1.a68c1c1ec0001p+1023 ulperr 912367152005120.000 = 0x1.9ee584p+49 + 0x1.ff965cp-2
src/math/special/fma.h:790: RU fmal(0x1.311e25c6db346p+1022,0x1.4e30db6c4b51dp+2,-0x1.7681f7a9786a7p+1023) want 0x1.a61d29434fc14p+1023 got -0x1.791d1988fffffp+1017 ulperr -7529566222417920.000 = -0x1.ac019cp+52 + 0x1.0000bcp-1
src/math/special/fma.h:791: RU fmal(0x1.1201cf577052fp+1022,0x1.59730b2db7a16p+2,-0x1.56f1a64a078d5p+1023) want 0x1.8c8d801df34dap+1023 got -0x1.3048609fd7fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.001304p-1
src/math/special/fma.h:792: RU fmal(0x1.3e52335b76e81p+1022,0x1.4dbd56f857479p+2,-0x1.509340c11bd2ep+1023) want 0x1.ed6576837f654p+1023 got -0x1.e498d5441bfffp+1022 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.001e4ap-1
src/math/special/fma.h:793: RU fmal(0x1.18566b4f843cbp+1022,0x1.444fba10eaf29p+2,-0x1.f927beae57f0ap+1023) want 0x1.9a433b979655ap+1022 got 0x1.a048d2820c001p+1022 ulperr 105937230626816.000 = 0x1.8165bcp+46 + 0x1.004bf6p-1
src/math/special/fma.h:794: RU fmal(0x1.3fbe544fe1be8p+1022,0x1.2d2a5fda03639p+2,-0x1.007407dbfd03cp+1023) want 0x1.efdb644b613e6p+1023 got -0x1.e14223655ffffp+1022 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.001e14p-1
src/math/special/fma.h:795: RU fmal(0x1.263a0d3bc2e4p+1022,0x1.4cc198adbc651p+2,-0x1.734b1c1f7fdb8p+1023) want 0x1.899878afc0fa3p+1023 got 0x1.a136204480001p+1023 ulperr 415454233362432.000 = 0x1.79da7ap+48 + 0x1.ff97b2p-2
src/math/special/fma.h:796: RU fmal(0x1.5bf4aec8efc8ep+1022,0x1.555f0341516c9p+2,-0x1.c706408acd14cp+1023) want 0x1.d8f5e18b868bdp+1023 got 0x1.3e5679fdf8001p+1022 ulperr -5520279589617664.000 = -0x1.39caa4p+52 + 0x1.ffd836p-2
src/math/special/fma.h:797: RU fmal(0x1.1e57f1af78279p+1022,0x1.34bc0c7f082b3p+2,-0x1.497b92c1365edp+1023) want 0x1.692cb7ec68a94p+1023 got -0x1.c0a1f29b27fffp+1021 ulperr -8326959113175040.000 = -0x1.d95534p+52 + 0x1.000e06p-1
src/math/special/fma.h:798: RU fmal(0x1.1d9824cd73511p+1022,0x1.1d557ddfe47ffp+2,-0x1.556cdb1d20a72p+1023) want 0x1.2736a6b6e35f3p+1023 got 0x1.bc6f9c9778001p+1021 ulperr -3238800209739776.000 = -0x1.70357ep+51 + 0x1.ffe43ap-2
src/math/special/fma.h:799: RU fmal(0x1.1ff85a24aff31p+1022,0x1.39ab374b2680dp+2,-0x1.35e6b07b651b8p+1023) want 0x1.8bc7ce2087081p+1023 got 0x1.84b319bafa001p+1023 ulperr -124568110891008.000 = -0x1.c52d18p+46 + 0x1.ff9ed4p-2
src/math/special/fma.h:800: RU fmal(0x1.0449b3965227ep+1022,0x1.4430d4441f9f2p+2,-0x1.a6966c96307ep+1023) want 0x1.d94eda8c81772p+1022 got -0x1.992ed6b71ffffp+1021 ulperr -11925733685329920.000 = -0x1.52f322p+53 + 0x1.001992p-1
src/math/special/fma.h:801: RU fmal(0x1.3c91fa00fd0c7p+1022,0x1.1b6661c0b0303p+2,-0x1.f1f2846b64483p+1023) want 0x1.95eae0d2644d4p+1022 got 0x1.9985d8eaa0001p+1019 ulperr -6240425346072576.000 = -0x1.62ba24p+52 + 0x1.00799ap-1
src/math/special/fma.h:802: RU fmal(0x1.0979b36d46534p+1022,0x1.12fa205f41f7fp+2,-0x1.a83ecf4544a63p+1023) want 0x1.2420f34e2aa3dp+1022 got -0x1.335a0fe67ffffp+1019 ulperr -5815056080044032.000 = -0x1.4a8c34p+52 + 0x1.ff099ap-2
src/math/special/fma.h:803: RU fmal(0x1.4c89df582a599p+1022,0x1.55f3dc473ea8fp+2,-0x1.e35037292ddfp+1023) want 0x1.95109fdbc3772p+1023 got -0x1.afa3b29623fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.001afap-1
src/math/special/fma.h:804: RU fmal(0x1.35ee0a669c4fbp+1022,0x1.2263cb63f386ap+2,-0x1.449218ae35ac7p+1023) want 0x1.7a8ed977d817bp+1023 got 0x1.47da9ddfb8001p+1022 ulperr -3775828693352448.000 = -0x1.ad4314p+51 + 0x1.ffd704p-2
src/math/special/fma.h:805: RU fmal(0x1.117cc860f61bcp+1022,0x1.440985b25d994p+2,-0x1.d7a7d82000449p+1023) want 0x1.b960b7088e75p+1022 got 0x1.ddfba372c0001p+1022 ulperr 643964982001664.000 = 0x1.24d764p+49 + 0x1.00444p-1
src/math/special/fma.h:806: RU fmal(0x1.1e78a37be320fp+1022,0x1.0db0fce62287bp+2,-0x1.376337da5eb53p+1023) want 0x1.24326b9956dfcp+1023 got -0x1.d2881b3595fffp+1023 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.003a52p-1
src/math/special/fma.h:807: RU fmal(0x1.0c79b5c8331c2p+1022,0x1.0aba6ea746b5p+2,-0x1.c86f1fcaf0741p+1023) want 0x1.9c135bb2cff85p+1021 got -0x1.cc298babfffffp+1019 ulperr -9273125376098304.000 = -0x1.078edep+53 + 0x1.fe1cc2p-2
src/math/special/fma.h:808: RU fmal(0x1.556c4c072f272p+1022,0x1.347758d7d4eb5p+2,-0x1.c6fe4f24b248dp+1023) want 0x1.6fcc9f756df6ep+1023 got -0x1.f6f4c76597fffp+1022 ulperr -9007198717870080.000 = -0x1.fffffep+52 + 0x1.001f7p-1
src/math/special/fma.h:809: RU fmal(-0x1.e8349b891b2fp-1,0x1.4a6dec9b72578p-1,0x1.3b6151ce809ddp-1) want 0x1.3a62fe330b356p-11 got -0x1.d97120fffffffp-11 ulperr -13859626462216192.000 = -0x1.89ea0ep+53 + 0x1.003b2ep-1
src/math/special/fma.h:810: RU fmal(0x1.2996632ac7d74p-1,-0x1.bb3c58b654d94p-1,0x1.01a6660e64a31p-1) want 0x1.ed045bb956a8fp-15 got -0x1.070d61fffffffp-15 ulperr -13300911346548736.000 = -0x1.7a08dep+53 + 0x1.0aa0e2p-1
src/math/special/fma.h:811: RU fmal(-0x1.c602e894c1df8p-1,0x1.a1c980e7d3f94p-1,0x1.7271244b43386p-1) want -0x1.ba251fe026e5bp-15 got -0x1.af2b6cp-15 ulperr 193081311756288.000 = 0x1.5f367ep+47 + 0x1.fa6bcap-2
src/math/special/fma.h:812: RU fmal(-0x1.c84baf47e85cp-1,0x1.770b5149ef2ep-1,0x1.4d80f139320bap-1) want -0x1.79277433b9e23p-10 got 0x1.d4b6fp-11 ulperr 10757823629623296.000 = 0x1.31c178p+53 + 0x1.ffc56ap-2
src/math/special/fma.h:813: RU fmal(-0x1.36e667dcf9c6p-1,0x1.2591f82556b88p-1,0x1.2452a0f795f95p-1) want 0x1.c83c8e63c15ap-3 got -0x1.221ccbfffffffp-12 ulperr -8036166204915712.000 = -0x1.c8cd9cp+52 + 0x1.000012p-1
src/math/special/fma.h:814: RU fmal(0x1.88b2cede61e4cp-1,-0x1.71dcab5ad9e9p-3,0x1.32b27fea2ae97p-3) want 0x1.70461909b25e3p-7 got -0x1.affe57fffffffp-17 ulperr -6486162973655040.000 = -0x1.70b218p+52 + 0x1.00000ep-1
src/math/special/fma.h:815: RU fmal(0x1.8d1e44002c98p-3,-0x1.af9fdfb347834p-1,0x1.e280942fb4146p-4) want -0x1.761ac23896dfdp-5 got 0x1.0bec48p-14 ulperr 6590522625884160.000 = 0x1.76a0bap+52 + 0x1.ffffdep-2
src/math/special/fma.h:816: RU fmal(0x1.236e8cb9492c8p-1,-0x1.d37443a57f1c4p-1,0x1.ca10df801aabcp-4) want -0x1.a1a2cdf0138f9p-2 got 0x1.f090cab7p-5 ulperr 8439088898113536.000 = 0x1.dfb4e8p+52 + 0x1.fff07cp-2
src/math/special/fma.h:817: RU fmal(-0x1.6ad943e610fb8p-1,-0x1.cef92a7bb18bcp-1,0x1.f28587d8fb0ep-4) want 0x1.866b5204b9aedp-1 got -0x1.8c9eb9a6fffffp-5 ulperr -7304415446827008.000 = -0x1.9f353cp+52 + 0x1.00031ap-1
src/math/special/fma.h:818: RU fmal(-0x1.60a8569a5d894p-1,-0x1.ca07e29dd171cp-1,0x1.b6c475ace09ecp-4) want 0x1.72549291e2f7bp-1 got -0x1.b6fd181e7ffffp-5 ulperr -6997593720619008.000 = -0x1.8dc464p+52 + 0x1.00036ep-1
src/math/special/fma.h:819: RU fmal(0x1.d1962720d678cp-1,-0x1.4548ee45c4084p-1,0x1.f416ab193d75cp-4) want -0x1.d2929879dc853p-2 got 0x1.fc38e6f4p-8 ulperr 8347732259373056.000 = 0x1.da837ep+52 + 0x1.fffe04p-2
src/math/special/fma.h:820: RU fmal(-0x1.9ddcb295a7d64p-1,0x1.67fb3a2068a78p-1,0x1.da9cd4597fe0ap-4) want -0x1.cf4f6eb4fc5d8p-2 got 0x1.59da5512p-6 ulperr 8530910467063808.000 = 0x1.e4ed16p+52 + 0x1.fffa98p-2
src/math/special/fma.h:821: RU fmal(0x1.c00d16ed45b88p+0,0x1.c787eddda3664p+0,0x1.1e3e6f0cc1802p-5) want 0x1.931b8f379dcc4p+1 got -0x1.63fb63b7fffffp-6 ulperr -7140470102687744.000 = -0x1.95e384p+52 + 0x1.000058p-1
src/math/special/fma.h:822: RU fmal(0x1.19c2a2372c184p+0,-0x1.cb506961c19fp+0,0x1.db1abf3f7ba3ap-6) want -0x1.f21c0eab0bc18p+0 got 0x1.a29607ffffff8p-13 ulperr 8763735812341760.000 = 0x1.f22924p+52 + 0x1.fffffcp-2
src/math/special/fma.h:823: RU fmal(-0x1.3a263218ccd1cp+0,-0x1.e818d390df27cp+0,0x1.2a81ed71785f5p-5) want 0x1.3025ab0f63926p+1 got -0x1.bfdf0b9bfffffp-6 ulperr -5412167746584576.000 = -0x1.33a568p+52 + 0x1.00007p-1
src/math/special/fma.h:824: RU fmal(0x1.b0b041fbaca58p+0,-0x1.9d5f76d178e6p+0,0x1.0215c7bb84cf9p-6) want -0x1.5b52aec7ef4p+1 got 0x1.6be7a78p-7 ulperr 6135178246225920.000 = 0x1.5cbe98p+52 + 0x1.ffffa6p-2
src/math/special/fma.h:825: RU fmal(-0x1.377549d9a87f4p+0,-0x1.a13d4a03dd6d8p+0,0x1.f190388bc5cc6p-7) want 0x1.ff83bebbd6fe5p+0 got -0x1.e5a6a43ffffffp-9 ulperr -9015346807701504.000 = -0x1.003b48p+53 + 0x1.00001ep-1
src/math/special/fma.h:826: RU fmal(0x1.6a726c0762ac8p-1,-0x1.d32f2d30e483cp+0,0x1.f953eb70fbde6p-7) want -0x1.46c61b3070332p+0 got 0x1.e556e47fffffep-11 ulperr 5752835962568704.000 = 0x1.4702c8p+52 + 0x1.fffffp-2
src/math/special/fma.h:827: RU fmal(0x1.94cf2509d40cp-1,0x1.721976af6dfbp+0,0x1.f51a456921c3ep-7) want 0x1.28880842acc61p+0 got -0x1.effe1dfffffffp-8 ulperr -5250719389057024.000 = -0x1.2a7806p+52 + 0x1.00003ep-1
src/math/special/fma.h:828: RU fmal(0x1.b128eb0ad8728p-1,0x1.7682566a54268p+0,0x1.bd4122a074cafp-8) want 0x1.3e9469530e763p+0 got -0x1.6fe0c7bffffffp-9 ulperr -5617153650720768.000 = -0x1.3f4c58p+52 + 0x1.000016p-1
src/math/special/fma.h:829: RU fmal(0x1.c4ae75976e35cp+0,-0x1.11c329dd1160cp+0,0x1.9993f5e13c9bdp-8) want -0x1.e27d925b07cf1p+0 got 0x1.198edf6p-9 ulperr 8497737213411328.000 = 0x1.e30a5ap+52 + 0x1.ffffdcp-2
src/math/special/fma.h:830: RU fmal(-0x1.85f81f88fa3c4p+0,-0x1.17648a494fa18p-1,0x1.37d305113b48p-10) want 0x1.aa367b7490e58p-1 got -0x1.7a59ecffffffep-12 ulperr -7501265072291840.000 = -0x1.aa65c6p+52 + 0x1.000006p-1
src/math/special/fma.h:831: RU fmal(-0x1.311f2b4319efcp+0,0x1.abbb5272e3d18p-1,0x1.35841b7bdbcfep-10) want -0x1.fd337f24b39ep-1 got 0x1.4cbc317ffffffp-11 ulperr 8963678351130624.000 = 0x1.fd86bp+52 + 0x1.ffffecp-2
src/math/special/fma.h:832: RU fmal(0x1.ab94369a9a0dp-1,0x1.9d1e0e0aa3bacp+0,0x1.0a63ca87cfa78p-11) want 0x1.592173ee296b7p+0 got -0x1.fd8043ffffff8p-13 ulperr -6072696672616448.000 = -0x1.59315ep+52 + 0x1.000002p-1
src/math/special/fma.h:833: RN fmal(0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want 0x1.000000001p-1030 got 0x1p-1038 ulperr -17523466567680.000 = -0x1.fep+43 + -0x1p-28
src/math/special/fma.h:834: RN fmal(-0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want -0x1.000000003p-1030 got -0x1p-1038 ulperr 17523466567680.000 = 0x1.fep+43 + 0x1p-28
src/math/special/fma.h:835: RD fmal(0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want 0x1.000000001p-1030 got 0x1p-1038 ulperr -17523467616256.000 = -0x1.fe0002p+43 + -0x1p-28
src/math/special/fma.h:836: RD fmal(-0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want -0x1.00000000301p-1030 got -0x1.000000001p-1038 ulperr 17523466567680.000 = 0x1.fep+43 + -0x1p+0
src/math/special/fma.h:837: RU fmal(0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want 0x1.00000000101p-1030 got 0x1.000000001p-1038 ulperr -17523466567680.000 = -0x1.fep+43 + 0x1p+0
src/math/special/fma.h:838: RU fmal(-0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want -0x1.000000003p-1030 got -0x1p-1038 ulperr 17523467616256.000 = 0x1.fe0002p+43 + 0x1p-28
src/math/special/fma.h:839: RZ fmal(0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want 0x1.000000001p-1030 got 0x1p-1038 ulperr -17523466567680.000 = -0x1.fdfffep+43 + -0x1p-28
src/math/special/fma.h:840: RZ fmal(-0x1.000000001p-1000,0x1.000000001p-30,-0x1p-1066) want -0x1.000000003p-1030 got -0x1p-1038 ulperr 17523466567680.000 = 0x1.fdfffep+43 + 0x1p-28
src/math/special/fma.h:841: RN fmal(-0x1p-1000,0x1.000001p-74,0x1p-1022) want 0x1.ffffffffffffep-1023 got 0x1.ffep-1023 ulperr -1099511627776.000 = -0x1p+40 + 0x1p-24
src/math/special/fma.h:842: RU fmal(-0x1p-1000,0x1.000001p-74,0x1p-1022) want 0x1.ffffffffffffep-1023 got 0x1.ffe0000000002p-1023 ulperr -1099511562240.000 = -0x1.fffffep+39 + 0x1p-24
src/math/special/fma.h:843: RD fmal(-0x1p-1000,0x1.000001p-74,0x1p-1022) want 0x1.ffffffffffffcp-1023 got 0x1.ffep-1023 ulperr -1099511627776.000 = -0x1p+40 + -0x1.fffffep-1
src/math/special/fma.h:844: RZ fmal(-0x1p-1000,0x1.000001p-74,0x1p-1022) want 0x1.ffffffffffffcp-1023 got 0x1.ffep-1023 ulperr -1099511562240.000 = -0x1.fffffcp+39 + -0x1.fffffep-1
FAIL src/math/fmal.exe [status 1]
src/math/special/ilogb.h:1: bad fp exception: RN ilogb(0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogb.h:2: bad fp exception: RN ilogb(-0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogb.h:6: bad fp exception: RN ilogb(inf)=2147483647, want INVALID got 0
src/math/special/ilogb.h:7: bad fp exception: RN ilogb(-inf)=2147483647, want INVALID got 0
src/math/special/ilogb.h:8: bad fp exception: RN ilogb(nan)=-2147483648, want INVALID got 0
FAIL src/math/ilogb.exe [status 1]
src/math/special/ilogbf.h:1: bad fp exception: RN ilogbf(0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogbf.h:2: bad fp exception: RN ilogbf(-0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogbf.h:6: bad fp exception: RN ilogbf(inf)=2147483647, want INVALID got 0
src/math/special/ilogbf.h:7: bad fp exception: RN ilogbf(-inf)=2147483647, want INVALID got 0
src/math/special/ilogbf.h:8: bad fp exception: RN ilogbf(-nan)=-2147483648, want INVALID got 0
FAIL src/math/ilogbf.exe [status 1]
src/math/special/ilogb.h:1: bad fp exception: RN ilogbl(0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogb.h:2: bad fp exception: RN ilogbl(-0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogb.h:6: bad fp exception: RN ilogbl(inf)=2147483647, want INVALID got 0
src/math/special/ilogb.h:7: bad fp exception: RN ilogbl(-inf)=2147483647, want INVALID got 0
src/math/special/ilogb.h:8: bad fp exception: RN ilogbl(nan)=-2147483648, want INVALID got 0
FAIL src/math/ilogbl.exe [status 1]
X src/math/special/j0.h:7: RN j0(-0x1.33d132fd04a92p+1) want 0x1.092b2a541a68ep-19 got 0x1.092b2a541b1ap-19 ulperr 2833.704 = 0x1.624p+11 + -0x1.2ebdbp-2
X src/math/special/j0.h:8: RN j0(-0x1.33d15297be06fp+1) want 0x1.5352913be3275p-26 got 0x1.5352913ddb41bp-26 ulperr 2064806.000 = 0x1.f81a6p+20 + 0x1.c281e2p-7
X src/math/special/j0.h:9: RN j0(0x1.33d152e971b4p+1) want -0x1.19b7921f03c8ep-54 got -0x1.00209921727cbp-54 ulperr 450179413049344.000 = 0x1.996f9p+48 + 0x1.ece5dp-5
X src/math/special/j0.h:10: RN j0(0x1.6148f5b2c2e45p+2) want -0x1.fbb40985f6e34p-56 got -0x1.ebcb069d486ccp-56 ulperr 279895217274880.000 = 0x1.fd205ep+47 + -0x1.1ac8a8p-2
X src/math/special/j0.h:11: RN j0(0x1.14eb56cccdecap+3) want -0x1.6e8eeb22e5818p-54 got -0x1.6d2a820627412p-54 ulperr 24492348801024.000 = 0x1.64691cp+44 + -0x1.63ab44p-2
X src/math/special/j0.h:12: RN j0(0x1.c071b22fbbafap+1023) want -0x1.a348b1f34dd1ap-526 got -0x1.a348b1f34d33dp-526 ulperr 2525.019 = 0x1.3bap+11 + 0x1.3153c2p-6
X src/math/special/j0.h:13: RN j0(0x1.f7350b1701ef7p+0) want 0x1.f32b3a3640292p-3 got 0x1.f32b3a3640296p-3 ulperr 3.947 = 0x1p+2 + -0x1.b3bad8p-5
X src/math/sanity/jn.h:8: RN jn(5, 0x1.1f9ef934745cbp-1) want 0x1.e274364abf2d5p-17 got 0x1.e274364abf2d2p-17, ulperr -2.504 = -0x1.8p+1 + 0x1.fbe5c8p-2
X src/math/sanity/jnf.h:1: RN jnf(-2, -0x1.0223ap+3) want -0x1.863726p-4 got -0x1.86372ap-4, ulperr -2.009 = -0x1p+1 + -0x1.28885p-7
X src/math/sanity/jnf.h:8: RN jnf(5, 0x1.1f9efap-1) want 0x1.e2743cp-17 got 0x1.e27442p-17, ulperr 2.537 = 0x1.8p+1 + -0x1.d9c372p-2
X src/math/sanity/jnf.h:10: RN jnf(7, -0x1.5b86eap-1) want -0x1.b39a9cp-24 got -0x1.b39a98p-24, ulperr 1.621 = 0x1p+1 + -0x1.83c12p-2
X src/math/special/lgamma.h:145: RN lgamma(-0x1.4p+1) want -0x1.ccbf9f5ed0f16p-5,-1 got -0x1.ccbf9f5ed0f2p-5,-1 ulperr -10.465 = -0x1.4p+3 + -0x1.dc4f24p-2
X src/math/sanity/lgammaf.h:3: RN lgammaf(-0x1.0c34b4p+3) want -0x1.46d732p+3,-1 got -0x1.46d736p+3,-1 ulperr -1.621 = -0x1p+1 + 0x1.83dafep-2
X src/math/sanity/lgammaf_r.h:3: RN lgammaf_r(-0x1.0c34b4p+3) want -0x1.46d732p+3,-1 got -0x1.46d736p+3,-1 ulperr -1.621 = -0x1p+1 + 0x1.83dafep-2
src/math/special/lgamma.h:145: RN lgammal(-0x1.4p+1) want -0x1.ccbf9f5ed0f16p-5,-1 got -0x1.ccbf9f5ed0f2p-5,-1 ulperr -10.465 = -0x1.4p+3 + -0x1.dc4f24p-2
FAIL src/math/lgammal.exe [status 1]
X src/math/crlibm/pow.h:13: bad fp exception: RN pow(0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:72: bad fp exception: RN pow(0x1p-1074,0x1p+0)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:73: bad fp exception: RN pow(0x1p-1042,0x1p+0)=0x1p-1042, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:75: bad fp exception: RN pow(-0x1p-1074,0x1p+0)=-0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:76: bad fp exception: RN pow(-0x1p-1042,0x1p+0)=-0x1p-1042, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:284: bad fp exception: RN pow(0x1p-1073,0x1p+0)=0x1p-1073, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:300: bad fp exception: RN pow(0x1p-1024,0x1p+0)=0x1p-1024, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:304: bad fp exception: RN pow(0x1p-1023,0x1p+0)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:310: bad fp exception: RN pow(0x1.ffffffffffffcp-1023,0x1p+0)=0x1.ffffffffffffcp-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:313: bad fp exception: RN pow(0x1.ffffffffffffep-1023,0x1p+0)=0x1.ffffffffffffep-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:338: bad fp exception: RN pow(0x1p-537,0x1p+1)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:437: bad fp exception: RN pow(0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:498: bad fp exception: RN pow(0x1p+350,-0x1.8p+1)=0x1p-1050, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:499: bad fp exception: RN pow(0x1p+700,-0x1.8p+0)=0x1p-1050, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:516: bad fp exception: RN pow(0x1p+1023,-0x1p+0)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:544: bad fp exception: RN pow(-0x1p-1073,0x1p+0)=-0x1p-1073, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:548: bad fp exception: RN pow(-0x1p-1024,0x1p+0)=-0x1p-1024, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:551: bad fp exception: RN pow(-0x1p-1023,0x1p+0)=-0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:557: bad fp exception: RN pow(-0x1.ffffffffffffcp-1023,0x1p+0)=-0x1.ffffffffffffcp-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:560: bad fp exception: RN pow(-0x1.ffffffffffffep-1023,0x1p+0)=-0x1.ffffffffffffep-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:581: bad fp exception: RN pow(-0x1p-537,0x1p+1)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:655: bad fp exception: RN pow(-0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:695: bad fp exception: RN pow(-0x1p+350,-0x1.8p+1)=-0x1p-1050, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:708: bad fp exception: RN pow(-0x1p+1023,-0x1p+0)=-0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/powf.h:103: bad fp exception: RU powf(0x1.fffffep+127,0x1p+0)=0x1.fffffep+127, want 0 got INEXACT|OVERFLOW
X src/math/ucb/powf.h:530: bad fp exception: RN powf(0x1.fffff8p-127,0x1p+0)=0x1.fffff8p-127, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/powf.h:533: bad fp exception: RN powf(0x1.fffffcp-127,0x1p+0)=0x1.fffffcp-127, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/powf.h:719: bad fp exception: RN powf(-0x1.fffff8p-127,0x1p+0)=-0x1.fffff8p-127, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/powf.h:722: bad fp exception: RN powf(-0x1.fffffcp-127,0x1p+0)=-0x1.fffffcp-127, want 0 got INEXACT|UNDERFLOW
FAIL src/math/powf.exe [status 1]
src/math/crlibm/pow.h:13: bad fp exception: RN powl(0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:72: bad fp exception: RN powl(0x1p-1074,0x1p+0)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:73: bad fp exception: RN powl(0x1p-1042,0x1p+0)=0x1p-1042, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:75: bad fp exception: RN powl(-0x1p-1074,0x1p+0)=-0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:76: bad fp exception: RN powl(-0x1p-1042,0x1p+0)=-0x1p-1042, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:284: bad fp exception: RN powl(0x1p-1073,0x1p+0)=0x1p-1073, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:300: bad fp exception: RN powl(0x1p-1024,0x1p+0)=0x1p-1024, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:304: bad fp exception: RN powl(0x1p-1023,0x1p+0)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:310: bad fp exception: RN powl(0x1.ffffffffffffcp-1023,0x1p+0)=0x1.ffffffffffffcp-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:313: bad fp exception: RN powl(0x1.ffffffffffffep-1023,0x1p+0)=0x1.ffffffffffffep-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:338: bad fp exception: RN powl(0x1p-537,0x1p+1)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:437: bad fp exception: RN powl(0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:498: bad fp exception: RN powl(0x1p+350,-0x1.8p+1)=0x1p-1050, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:499: bad fp exception: RN powl(0x1p+700,-0x1.8p+0)=0x1p-1050, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:516: bad fp exception: RN powl(0x1p+1023,-0x1p+0)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:544: bad fp exception: RN powl(-0x1p-1073,0x1p+0)=-0x1p-1073, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:548: bad fp exception: RN powl(-0x1p-1024,0x1p+0)=-0x1p-1024, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:551: bad fp exception: RN powl(-0x1p-1023,0x1p+0)=-0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:557: bad fp exception: RN powl(-0x1.ffffffffffffcp-1023,0x1p+0)=-0x1.ffffffffffffcp-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:560: bad fp exception: RN powl(-0x1.ffffffffffffep-1023,0x1p+0)=-0x1.ffffffffffffep-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:581: bad fp exception: RN powl(-0x1p-537,0x1p+1)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:655: bad fp exception: RN powl(-0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:695: bad fp exception: RN powl(-0x1p+350,-0x1.8p+1)=-0x1p-1050, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:708: bad fp exception: RN powl(-0x1p+1023,-0x1p+0)=-0x1p-1023, want 0 got INEXACT|UNDERFLOW
FAIL src/math/powl.exe [status 1]
X src/math/crlibm/sinh.h:84: RN sinh(0x1.d3e0d2f5d98d6p-2) want 0x1.e45428082fb8cp-2 got 0x1.e45428082fb8ap-2 ulperr -1.500 = -0x1p+1 + 0x1p-1
X src/math/crlibm/sinh.h:84: RN sinhl(0x1.d3e0d2f5d98d6p-2) want 0x1.e45428082fb8cp-2 got 0x1.e45428082fb8ap-2 ulperr -1.500 = -0x1p+1 + 0x1p-1
src/math/ucb/sqrt.h:47: bad fp exception: RN sqrt(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/ucb/sqrt.h:48: bad fp exception: RZ sqrt(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/ucb/sqrt.h:49: bad fp exception: RU sqrt(0x1.fffffffffffffp+1023)=0x1p+512, want INEXACT got 0
src/math/ucb/sqrt.h:49: RU sqrt(0x1.fffffffffffffp+1023) want 0x1p+512 got 0x1.fffffffffffffp+511 ulperr -0.250 = -0x1p-1 + 0x1p-2
src/math/ucb/sqrt.h:50: bad fp exception: RD sqrt(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/ucb/sqrt.h:67: bad fp exception: RN sqrt(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:69: bad fp exception: RN sqrt(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:70: bad fp exception: RZ sqrt(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:72: bad fp exception: RZ sqrt(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:73: bad fp exception: RU sqrt(0x1.0000000000001p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:73: RU sqrt(0x1.0000000000001p+0) want 0x1.0000000000001p+0 got 0x1p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:75: bad fp exception: RU sqrt(0x1.fffffffffffffp-1)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:75: RU sqrt(0x1.fffffffffffffp-1) want 0x1p+0 got 0x1.fffffffffffffp-1 ulperr -0.250 = -0x1p-1 + 0x1p-2
src/math/ucb/sqrt.h:76: bad fp exception: RD sqrt(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:78: bad fp exception: RD sqrt(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:89: bad fp exception: RN sqrt(0x1.766bdb2b5006dp+1)=0x1.b5d6fec392e7dp+0, want INEXACT got 0
src/math/ucb/sqrt.h:90: bad fp exception: RN sqrt(0x1.b6546fb825911p+2)=0x1.4efb330ef0b43p+1, want INEXACT got 0
src/math/ucb/sqrt.h:91: bad fp exception: RN sqrt(0x1.e165309de7505p+2)=0x1.5f0d324d38bdp+1, want INEXACT got 0
src/math/ucb/sqrt.h:92: bad fp exception: RN sqrt(0x1.541dcfba96889p+0)=0x1.271370ec508dp+0, want INEXACT got 0
src/math/ucb/sqrt.h:93: bad fp exception: RN sqrt(0x1.754c3e27084ddp+1)=0x1.b52eb45df30b2p+0, want INEXACT got 0
src/math/ucb/sqrt.h:94: bad fp exception: RN sqrt(0x1.ebe1e1b093c41p+1)=0x1.f5d722e54e976p+0, want INEXACT got 0
src/math/ucb/sqrt.h:95: bad fp exception: RN sqrt(0x1.940d8d18455f5p+2)=0x1.419df976f692dp+1, want INEXACT got 0
src/math/ucb/sqrt.h:96: bad fp exception: RN sqrt(0x1.dae714a51b239p+2)=0x1.5cad1a5584b9ap+1, want INEXACT got 0
src/math/ucb/sqrt.h:97: bad fp exception: RN sqrt(0x1.a9f2d1079de4dp+1)=0x1.d2ff13bff7b67p+0, want INEXACT got 0
src/math/ucb/sqrt.h:98: bad fp exception: RN sqrt(0x1.57dd33103b871p-3)=0x1.a397d7b1e31f2p-2, want INEXACT got 0
src/math/ucb/sqrt.h:135: bad fp exception: RD sqrt(0x1.ffffffffffffep-1023)=0x1.ffffffffffffep-512, want INEXACT got 0
src/math/ucb/sqrt.h:135: RD sqrt(0x1.ffffffffffffep-1023) want 0x1.ffffffffffffep-512 got 0x1.fffffffffffffp-512 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:136: bad fp exception: RD sqrt(0x1.0000000000002p-1022)=0x1p-511, want INEXACT got 0
src/math/ucb/sqrt.h:136: RD sqrt(0x1.0000000000002p-1022) want 0x1p-511 got 0x1.0000000000001p-511 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:137: bad fp exception: RD sqrt(0x1.ffffffffffff7p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:138: bad fp exception: RD sqrt(0x1.ffffffffffff8p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:138: RD sqrt(0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp-1 got 0x1.ffffffffffffcp-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:139: bad fp exception: RD sqrt(0x1.ffffffffffff9p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:140: bad fp exception: RD sqrt(0x1.ffffffffffffap-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:140: RD sqrt(0x1.ffffffffffffap-1) want 0x1.ffffffffffffcp-1 got 0x1.ffffffffffffdp-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:141: bad fp exception: RD sqrt(0x1.ffffffffffffbp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:142: bad fp exception: RD sqrt(0x1.ffffffffffffcp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:142: RD sqrt(0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp-1 got 0x1.ffffffffffffep-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:143: bad fp exception: RD sqrt(0x1.ffffffffffffdp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:144: bad fp exception: RD sqrt(0x1.ffffffffffffep-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:144: RD sqrt(0x1.ffffffffffffep-1) want 0x1.ffffffffffffep-1 got 0x1.fffffffffffffp-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:145: bad fp exception: RD sqrt(0x1.0000000000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:145: RD sqrt(0x1.0000000000002p+0) want 0x1p+0 got 0x1.0000000000001p+0 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:146: bad fp exception: RD sqrt(0x1.0000000000003p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:147: bad fp exception: RD sqrt(0x1.0000000000004p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:147: RD sqrt(0x1.0000000000004p+0) want 0x1.0000000000001p+0 got 0x1.0000000000002p+0 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:148: bad fp exception: RD sqrt(0x1.0000000000005p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:149: bad fp exception: RD sqrt(0x1.0000000000006p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:149: RD sqrt(0x1.0000000000006p+0) want 0x1.0000000000002p+0 got 0x1.0000000000003p+0 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:150: bad fp exception: RD sqrt(0x1.0000000000007p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:151: bad fp exception: RD sqrt(0x1.ffffffffffffep+1021)=0x1.ffffffffffffep+510, want INEXACT got 0
src/math/ucb/sqrt.h:151: RD sqrt(0x1.ffffffffffffep+1021) want 0x1.ffffffffffffep+510 got 0x1.fffffffffffffp+510 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:152: bad fp exception: RD sqrt(0x1.0000000000002p+1022)=0x1p+511, want INEXACT got 0
src/math/ucb/sqrt.h:152: RD sqrt(0x1.0000000000002p+1022) want 0x1p+511 got 0x1.0000000000001p+511 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:206: bad fp exception: RN sqrt(0x1.ffffffffffffep-1023)=0x1.fffffffffffffp-512, want INEXACT got 0
src/math/ucb/sqrt.h:207: bad fp exception: RN sqrt(0x1.0000000000002p-1022)=0x1.0000000000001p-511, want INEXACT got 0
src/math/ucb/sqrt.h:208: bad fp exception: RN sqrt(0x1.ffffffffffff7p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:209: bad fp exception: RN sqrt(0x1.ffffffffffff8p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:210: bad fp exception: RN sqrt(0x1.ffffffffffff9p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:211: bad fp exception: RN sqrt(0x1.ffffffffffffap-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:212: bad fp exception: RN sqrt(0x1.ffffffffffffbp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:213: bad fp exception: RN sqrt(0x1.ffffffffffffcp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:214: bad fp exception: RN sqrt(0x1.ffffffffffffdp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:215: bad fp exception: RN sqrt(0x1.ffffffffffffep-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:216: bad fp exception: RN sqrt(0x1.0000000000002p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:217: bad fp exception: RN sqrt(0x1.0000000000003p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:218: bad fp exception: RN sqrt(0x1.0000000000004p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:219: bad fp exception: RN sqrt(0x1.0000000000005p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:220: bad fp exception: RN sqrt(0x1.0000000000006p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:221: bad fp exception: RN sqrt(0x1.0000000000007p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:222: bad fp exception: RN sqrt(0x1.ffffffffffffep+1021)=0x1.fffffffffffffp+510, want INEXACT got 0
src/math/ucb/sqrt.h:223: bad fp exception: RN sqrt(0x1.0000000000002p+1022)=0x1.0000000000001p+511, want INEXACT got 0
src/math/ucb/sqrt.h:273: bad fp exception: RU sqrt(0x1.ffffffffffffep-1023)=0x1.fffffffffffffp-512, want INEXACT got 0
src/math/ucb/sqrt.h:274: bad fp exception: RU sqrt(0x1.0000000000002p-1022)=0x1.0000000000001p-511, want INEXACT got 0
src/math/ucb/sqrt.h:275: bad fp exception: RU sqrt(0x1.ffffffffffff7p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:275: RU sqrt(0x1.ffffffffffff7p-1) want 0x1.ffffffffffffcp-1 got 0x1.ffffffffffffbp-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:276: bad fp exception: RU sqrt(0x1.ffffffffffff8p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:277: bad fp exception: RU sqrt(0x1.ffffffffffff9p-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:277: RU sqrt(0x1.ffffffffffff9p-1) want 0x1.ffffffffffffdp-1 got 0x1.ffffffffffffcp-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:278: bad fp exception: RU sqrt(0x1.ffffffffffffap-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:279: bad fp exception: RU sqrt(0x1.ffffffffffffbp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:279: RU sqrt(0x1.ffffffffffffbp-1) want 0x1.ffffffffffffep-1 got 0x1.ffffffffffffdp-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:280: bad fp exception: RU sqrt(0x1.ffffffffffffcp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:281: bad fp exception: RU sqrt(0x1.ffffffffffffdp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:281: RU sqrt(0x1.ffffffffffffdp-1) want 0x1.fffffffffffffp-1 got 0x1.ffffffffffffep-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:282: bad fp exception: RU sqrt(0x1.ffffffffffffep-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:283: bad fp exception: RU sqrt(0x1.0000000000002p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:284: bad fp exception: RU sqrt(0x1.0000000000003p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:284: RU sqrt(0x1.0000000000003p+0) want 0x1.0000000000002p+0 got 0x1.0000000000001p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:285: bad fp exception: RU sqrt(0x1.0000000000004p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:286: bad fp exception: RU sqrt(0x1.0000000000005p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:286: RU sqrt(0x1.0000000000005p+0) want 0x1.0000000000003p+0 got 0x1.0000000000002p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:287: bad fp exception: RU sqrt(0x1.0000000000006p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:288: bad fp exception: RU sqrt(0x1.0000000000007p+0)=0x1.0000000000004p+0, want INEXACT got 0
src/math/ucb/sqrt.h:288: RU sqrt(0x1.0000000000007p+0) want 0x1.0000000000004p+0 got 0x1.0000000000003p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:289: bad fp exception: RU sqrt(0x1.ffffffffffffep+1021)=0x1.fffffffffffffp+510, want INEXACT got 0
src/math/ucb/sqrt.h:290: bad fp exception: RU sqrt(0x1.0000000000002p+1022)=0x1.0000000000001p+511, want INEXACT got 0
src/math/ucb/sqrt.h:344: bad fp exception: RZ sqrt(0x1.ffffffffffffep-1023)=0x1.ffffffffffffep-512, want INEXACT got 0
src/math/ucb/sqrt.h:344: RZ sqrt(0x1.ffffffffffffep-1023) want 0x1.ffffffffffffep-512 got 0x1.fffffffffffffp-512 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:345: bad fp exception: RZ sqrt(0x1.0000000000002p-1022)=0x1p-511, want INEXACT got 0
src/math/ucb/sqrt.h:345: RZ sqrt(0x1.0000000000002p-1022) want 0x1p-511 got 0x1.0000000000001p-511 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:346: bad fp exception: RZ sqrt(0x1.ffffffffffff7p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:347: bad fp exception: RZ sqrt(0x1.ffffffffffff8p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:347: RZ sqrt(0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp-1 got 0x1.ffffffffffffcp-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:348: bad fp exception: RZ sqrt(0x1.ffffffffffff9p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:349: bad fp exception: RZ sqrt(0x1.ffffffffffffap-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:349: RZ sqrt(0x1.ffffffffffffap-1) want 0x1.ffffffffffffcp-1 got 0x1.ffffffffffffdp-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:350: bad fp exception: RZ sqrt(0x1.ffffffffffffbp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:351: bad fp exception: RZ sqrt(0x1.ffffffffffffcp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:351: RZ sqrt(0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp-1 got 0x1.ffffffffffffep-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:352: bad fp exception: RZ sqrt(0x1.ffffffffffffdp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:353: bad fp exception: RZ sqrt(0x1.ffffffffffffep-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:353: RZ sqrt(0x1.ffffffffffffep-1) want 0x1.ffffffffffffep-1 got 0x1.fffffffffffffp-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:354: bad fp exception: RZ sqrt(0x1.0000000000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:354: RZ sqrt(0x1.0000000000002p+0) want 0x1p+0 got 0x1.0000000000001p+0 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:355: bad fp exception: RZ sqrt(0x1.0000000000003p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:356: bad fp exception: RZ sqrt(0x1.0000000000004p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:356: RZ sqrt(0x1.0000000000004p+0) want 0x1.0000000000001p+0 got 0x1.0000000000002p+0 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:357: bad fp exception: RZ sqrt(0x1.0000000000005p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:358: bad fp exception: RZ sqrt(0x1.0000000000006p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:358: RZ sqrt(0x1.0000000000006p+0) want 0x1.0000000000002p+0 got 0x1.0000000000003p+0 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:359: bad fp exception: RZ sqrt(0x1.0000000000007p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:360: bad fp exception: RZ sqrt(0x1.ffffffffffffep+1021)=0x1.ffffffffffffep+510, want INEXACT got 0
src/math/ucb/sqrt.h:360: RZ sqrt(0x1.ffffffffffffep+1021) want 0x1.ffffffffffffep+510 got 0x1.fffffffffffffp+510 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:361: bad fp exception: RZ sqrt(0x1.0000000000002p+1022)=0x1p+511, want INEXACT got 0
src/math/ucb/sqrt.h:361: RZ sqrt(0x1.0000000000002p+1022) want 0x1p+511 got 0x1.0000000000001p+511 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/sanity/sqrt.h:2: bad fp exception: RN sqrt(0x1.161868e18bc67p+2)=0x1.0ad1adc856f29p+1, want INEXACT got 0
src/math/sanity/sqrt.h:5: bad fp exception: RN sqrt(0x1.288bbb0d6a1e6p+3)=0x1.85a7d346e8c13p+1, want INEXACT got 0
src/math/sanity/sqrt.h:6: bad fp exception: RN sqrt(0x1.52efd0cd80497p-1)=0x1.a0937a0b92ccbp-1, want INEXACT got 0
src/math/sanity/sqrt.h:8: bad fp exception: RN sqrt(0x1.1f9ef934745cbp-1)=0x1.7fbf4b5a076bcp-1, want INEXACT got 0
src/math/sanity/sqrt.h:9: bad fp exception: RN sqrt(0x1.8c5db097f7442p-1)=0x1.c27ce94ff39c5p-1, want INEXACT got 0
src/math/special/sqrt.h:9: bad fp exception: RN sqrt(0x1p-1073)=0x1.6a09e667f3bcdp-537, want INEXACT got 0
src/math/special/sqrt.h:10: bad fp exception: RN sqrt(0x1.8p-1073)=0x1.bb67ae8584caap-537, want INEXACT got 0
src/math/special/sqrt.h:13: bad fp exception: RN sqrt(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/special/sqrt.h:14: bad fp exception: RN sqrt(0x1.fffffffffffffp+0)=0x1.6a09e667f3bccp+0, want INEXACT got 0
src/math/special/sqrt.h:15: bad fp exception: RN sqrt(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/special/sqrt.h:16: bad fp exception: RN sqrt(0x1.0000000000001p+1)=0x1.6a09e667f3bcdp+0, want INEXACT got 0
src/math/special/sqrt.h:17: bad fp exception: RN sqrt(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/special/sqrt.h:18: bad fp exception: RN sqrt(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/special/sqrt.h:20: bad fp exception: RN sqrt(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/special/sqrt.h:21: bad fp exception: RN sqrt(0x1.ffffffffffffbp+1023)=0x1.ffffffffffffdp+511, want INEXACT got 0
src/math/special/sqrt.h:22: bad fp exception: RN sqrt(0x1.ffffffffffff7p+1023)=0x1.ffffffffffffbp+511, want INEXACT got 0
src/math/special/sqrt.h:23: bad fp exception: RN sqrt(0x1.ffffffffffff3p+1023)=0x1.ffffffffffff9p+511, want INEXACT got 0
src/math/special/sqrt.h:24: bad fp exception: RN sqrt(0x1.fffffffffffefp+1023)=0x1.ffffffffffff7p+511, want INEXACT got 0
src/math/special/sqrt.h:25: bad fp exception: RN sqrt(0x1.fffffffffffebp+1023)=0x1.ffffffffffff5p+511, want INEXACT got 0
src/math/special/sqrt.h:26: bad fp exception: RN sqrt(0x1.fffffffffffe7p+1023)=0x1.ffffffffffff3p+511, want INEXACT got 0
src/math/special/sqrt.h:27: bad fp exception: RN sqrt(0x1.fffffffffffe3p+1023)=0x1.ffffffffffff1p+511, want INEXACT got 0
src/math/special/sqrt.h:28: bad fp exception: RN sqrt(0x1.fffffffffffdfp+1023)=0x1.fffffffffffefp+511, want INEXACT got 0
src/math/special/sqrt.h:29: bad fp exception: RN sqrt(0x1.fffffffffffdbp+1023)=0x1.fffffffffffedp+511, want INEXACT got 0
src/math/special/sqrt.h:30: bad fp exception: RN sqrt(0x1.fffffffffffd7p+1023)=0x1.fffffffffffebp+511, want INEXACT got 0
src/math/special/sqrt.h:31: bad fp exception: RN sqrt(0x1.0000000000003p-1022)=0x1.0000000000001p-511, want INEXACT got 0
src/math/special/sqrt.h:32: bad fp exception: RN sqrt(0x1.0000000000007p-1022)=0x1.0000000000003p-511, want INEXACT got 0
src/math/special/sqrt.h:33: bad fp exception: RN sqrt(0x1.000000000000bp-1022)=0x1.0000000000005p-511, want INEXACT got 0
src/math/special/sqrt.h:34: bad fp exception: RN sqrt(0x1.000000000000fp-1022)=0x1.0000000000007p-511, want INEXACT got 0
src/math/special/sqrt.h:35: bad fp exception: RN sqrt(0x1.0000000000013p-1022)=0x1.0000000000009p-511, want INEXACT got 0
src/math/special/sqrt.h:36: bad fp exception: RN sqrt(0x1.0000000000017p-1022)=0x1.000000000000bp-511, want INEXACT got 0
src/math/special/sqrt.h:37: bad fp exception: RN sqrt(0x1.000000000001bp-1022)=0x1.000000000000dp-511, want INEXACT got 0
src/math/special/sqrt.h:38: bad fp exception: RN sqrt(0x1.000000000001fp-1022)=0x1.000000000000fp-511, want INEXACT got 0
src/math/special/sqrt.h:39: bad fp exception: RN sqrt(0x1.0000000000023p-1022)=0x1.0000000000011p-511, want INEXACT got 0
src/math/special/sqrt.h:40: bad fp exception: RN sqrt(0x1.0000000000027p-1022)=0x1.0000000000013p-511, want INEXACT got 0
src/math/special/sqrt.h:41: bad fp exception: RN sqrt(0x1.000000000002bp-1022)=0x1.0000000000015p-511, want INEXACT got 0
src/math/special/sqrt.h:42: bad fp exception: RN sqrt(0x1.000000000002fp-1022)=0x1.0000000000017p-511, want INEXACT got 0
src/math/special/sqrt.h:43: bad fp exception: RN sqrt(0x1.0000000000033p-1022)=0x1.0000000000019p-511, want INEXACT got 0
src/math/special/sqrt.h:44: bad fp exception: RN sqrt(0x1.0000000000037p-1022)=0x1.000000000001bp-511, want INEXACT got 0
src/math/special/sqrt.h:45: bad fp exception: RN sqrt(0x1.7167bc36eaa3bp+6)=0x1.3384c7db650cdp+3, want INEXACT got 0
src/math/special/sqrt.h:46: bad fp exception: RN sqrt(0x1.7570994273ad7p+6)=0x1.353186e89b8ffp+3, want INEXACT got 0
src/math/special/sqrt.h:47: bad fp exception: RN sqrt(0x1.7dae969442fe6p+6)=0x1.389640fb18b75p+3, want INEXACT got 0
src/math/special/sqrt.h:48: bad fp exception: RN sqrt(0x1.7f8444fcf67e5p+6)=0x1.395659e94669fp+3, want INEXACT got 0
src/math/special/sqrt.h:49: bad fp exception: RN sqrt(0x1.8364650e63a54p+6)=0x1.3aea9efe1a3d7p+3, want INEXACT got 0
src/math/special/sqrt.h:50: bad fp exception: RN sqrt(0x1.85bedd274edd8p+6)=0x1.3bdf20c867057p+3, want INEXACT got 0
src/math/special/sqrt.h:51: bad fp exception: RN sqrt(0x1.8609cf496ab77p+6)=0x1.3bfd7e14b5eabp+3, want INEXACT got 0
src/math/special/sqrt.h:52: bad fp exception: RN sqrt(0x1.873849c70a375p+6)=0x1.3c77ed341d27fp+3, want INEXACT got 0
src/math/special/sqrt.h:53: bad fp exception: RN sqrt(0x1.8919c962cbaaep+6)=0x1.3d3a7113ee82fp+3, want INEXACT got 0
src/math/special/sqrt.h:54: bad fp exception: RN sqrt(0x1.8de4493e22dc6p+6)=0x1.3f27d448220c3p+3, want INEXACT got 0
src/math/special/sqrt.h:55: bad fp exception: RN sqrt(0x1.924829a17a288p+6)=0x1.40e9552eec28fp+3, want INEXACT got 0
src/math/special/sqrt.h:56: bad fp exception: RN sqrt(0x1.92702cd992f12p+6)=0x1.40f94a6fdfddfp+3, want INEXACT got 0
src/math/special/sqrt.h:57: bad fp exception: RN sqrt(0x1.92b763a8311fdp+6)=0x1.4115af614695fp+3, want INEXACT got 0
src/math/special/sqrt.h:58: bad fp exception: RN sqrt(0x1.947da013c7293p+6)=0x1.41ca91102940fp+3, want INEXACT got 0
src/math/special/sqrt.h:59: bad fp exception: RN sqrt(0x1.9536091c494d2p+6)=0x1.4213e334c77adp+3, want INEXACT got 0
src/math/special/sqrt.h:60: bad fp exception: RN sqrt(0x1.61b04c6p-1019)=0x1.a98b88f18b46dp-510, want INEXACT got 0
src/math/special/sqrt.h:61: bad fp exception: RN sqrt(0x1.93789f1p-1018)=0x1.4162ae43d5821p-509, want INEXACT got 0
src/math/special/sqrt.h:62: bad fp exception: RN sqrt(0x1.a1989b4p-1018)=0x1.46f6736eb44bbp-509, want INEXACT got 0
src/math/special/sqrt.h:63: bad fp exception: RN sqrt(0x1.f93bc9p-1018)=0x1.67a36ec403bafp-509, want INEXACT got 0
src/math/special/sqrt.h:64: bad fp exception: RN sqrt(0x1.2f675e3p-1017)=0x1.8a22ab6dcfee1p-509, want INEXACT got 0
src/math/special/sqrt.h:65: bad fp exception: RN sqrt(0x1.a158508p-1017)=0x1.ce418a96cf589p-509, want INEXACT got 0
src/math/special/sqrt.h:66: bad fp exception: RN sqrt(0x1.cd31f078p-1017)=0x1.e5ef1c65dccebp-509, want INEXACT got 0
src/math/special/sqrt.h:67: bad fp exception: RN sqrt(0x1.33b43b08p-1016)=0x1.18a9f607e1701p-508, want INEXACT got 0
src/math/special/sqrt.h:68: bad fp exception: RN sqrt(0x1.6e66a858p-1016)=0x1.324402a00b45fp-508, want INEXACT got 0
src/math/special/sqrt.h:69: bad fp exception: RN sqrt(0x1.8661cbf8p-1016)=0x1.3c212046bfdffp-508, want INEXACT got 0
src/math/special/sqrt.h:70: bad fp exception: RN sqrt(0x1.bbb221b4p-1016)=0x1.510681b939931p-508, want INEXACT got 0
src/math/special/sqrt.h:71: bad fp exception: RN sqrt(0x1.c4942f3cp-1016)=0x1.5461e59227ab5p-508, want INEXACT got 0
src/math/special/sqrt.h:72: bad fp exception: RN sqrt(0x1.dbb258c8p-1016)=0x1.5cf7b0f78d3afp-508, want INEXACT got 0
src/math/special/sqrt.h:73: bad fp exception: RN sqrt(0x1.57103ea4p-1015)=0x1.a31ab946d340bp-508, want INEXACT got 0
src/math/special/sqrt.h:74: bad fp exception: RN sqrt(0x1.9b294f88p-1015)=0x1.cad197e28e85bp-508, want INEXACT got 0
src/math/special/sqrt.h:75: bad fp exception: RN sqrt(0x1.5b95344972fe2p+105)=0x1.a5db1ce4c605bp+52, want INEXACT got 0
src/math/special/sqrt.h:76: bad fp exception: RN sqrt(0x1.d407bb3641da5p+104)=0x1.5a24e31b39fa6p+52, want INEXACT got 0
src/math/special/sqrt.h:77: bad fp exception: RN sqrt(0x1.4eb5f85e783a9p+105)=0x1.9df88f9ecb617p+52, want INEXACT got 0
src/math/special/sqrt.h:78: bad fp exception: RN sqrt(0x1.e99893042c2cbp+104)=0x1.62077061349eap+52, want INEXACT got 0
src/math/special/sqrt.h:79: bad fp exception: RN sqrt(0x1.8444088dbdcb5p+105)=0x1.bddc6d1af94e5p+52, want INEXACT got 0
src/math/special/sqrt.h:80: bad fp exception: RN sqrt(0x1.955d8279a3c0fp+104)=0x1.422392e506b1cp+52, want INEXACT got 0
src/math/special/sqrt.h:81: bad fp exception: RN sqrt(0x1.92e58e3597929p+105)=0x1.c62f1afef218bp+52, want INEXACT got 0
src/math/special/sqrt.h:82: bad fp exception: RN sqrt(0x1.80b07a7182913p+104)=0x1.39d0e5010de76p+52, want INEXACT got 0
src/math/special/sqrt.h:83: bad fp exception: RN sqrt(0x1.e63a86a12a838p+105)=0x1.f2f2ac85941a9p+52, want INEXACT got 0
src/math/special/sqrt.h:84: bad fp exception: RN sqrt(0x1.1ac50220dc67dp+104)=0x1.0d0d537a6be58p+52, want INEXACT got 0
src/math/special/sqrt.h:85: bad fp exception: RN sqrt(0x1.004c704e61a6bp+105)=0x1.6a3fef4175ea2p+52, want INEXACT got 0
src/math/special/sqrt.h:86: bad fp exception: RN sqrt(0x1.d2221598a924ap+105)=0x1.e88750b32d14dp+52, want INEXACT got 0
src/math/special/sqrt.h:87: bad fp exception: RN sqrt(0x1.311846fe43cc9p+104)=0x1.1778af4cd2eb4p+52, want INEXACT got 0
src/math/special/sqrt.h:88: bad fp exception: RN sqrt(0x1.0f4057e306261p+105)=0x1.74aabff5dcd77p+52, want INEXACT got 0
src/math/special/sqrt.h:89: bad fp exception: RN sqrt(0x1.54b152148723p+105)=0x1.a1a75b170c36ep+52, want INEXACT got 0
src/math/special/sqrt.h:90: bad fp exception: RN sqrt(0x1.df76819ec4fcfp+104)=0x1.5e58a4e8f3c93p+52, want INEXACT got 0
src/math/special/sqrt.h:91: bad fp exception: RN sqrt(0x1.8cc6767d8db65p+105)=0x1.c2b86f8821e3cp+52, want INEXACT got 0
src/math/special/sqrt.h:92: bad fp exception: RN sqrt(0x1.893a4fca50165p+104)=0x1.3d479077de1c5p+52, want INEXACT got 0
src/math/special/sqrt.h:93: bad fp exception: RN sqrt(0x1.2e22e3ec9f181p+105)=0x1.894fb184f34f2p+52, want INEXACT got 0
src/math/special/sqrt.h:94: bad fp exception: RN sqrt(0x1.c4d4dd56d8601p+105)=0x1.e181fcfc796d1p+52, want INEXACT got 0
src/math/special/sqrt.h:95: bad fp exception: RN sqrt(0x1.409dccc2d831fp+104)=0x1.1e7e03038693p+52, want INEXACT got 0
src/math/special/sqrt.h:96: bad fp exception: RN sqrt(0x1.e915af26394a2p+105)=0x1.f469445af52ccp+52, want INEXACT got 0
src/math/special/sqrt.h:97: bad fp exception: RN sqrt(0x1.17b3c42ab387fp+104)=0x1.0b96bba50ad35p+52, want INEXACT got 0
src/math/special/sqrt.h:98: bad fp exception: RN sqrt(0x1.408e1bfb27b24p+105)=0x1.951f5a6dc2542p+52, want INEXACT got 0
src/math/special/sqrt.h:99: bad fp exception: RN sqrt(0x1.e10511b03937ap+105)=0x1.f044a989ca91bp+52, want INEXACT got 0
src/math/special/sqrt.h:100: bad fp exception: RN sqrt(0x1.206e2a25b3055p+104)=0x1.0fbb5676356e6p+52, want INEXACT got 0
src/math/special/sqrt.h:101: bad fp exception: RN sqrt(0x1.122d8405a6886p+105)=0x1.76ac0187f47d4p+52, want INEXACT got 0
src/math/special/sqrt.h:102: bad fp exception: RN sqrt(0x1.e34fa523c7406p+105)=0x1.f172e3572032ap+52, want INEXACT got 0
src/math/special/sqrt.h:103: bad fp exception: RN sqrt(0x1.1dedf63ccd513p+104)=0x1.0e8d1ca8dfcd7p+52, want INEXACT got 0
src/math/special/sqrt.h:104: bad fp exception: RN sqrt(0x1.3b94b3f5399c5p+105)=0x1.91f78829a106fp+52, want INEXACT got 0
src/math/special/sqrt.h:105: bad fp exception: RN sqrt(0x1.26f7a31fd7d81p+105)=0x1.849dfc49fc24bp+52, want INEXACT got 0
src/math/special/sqrt.h:106: bad fp exception: RN sqrt(0x1.1af23bc3c2ecap+105)=0x1.7c9dabee35f64p+52, want INEXACT got 0
src/math/special/sqrt.h:107: bad fp exception: RN sqrt(0x1.2da51b80dd183p+105)=0x1.88fdca416a27ap+52, want INEXACT got 0
src/math/special/sqrt.h:108: bad fp exception: RN sqrt(0x1.5834bb88d555p+105)=0x1.a3cd3c09ea385p+52, want INEXACT got 0
src/math/special/sqrt.h:109: bad fp exception: RN sqrt(0x1.d99a0ed62d585p+104)=0x1.5c32c3f615c7cp+52, want INEXACT got 0
src/math/special/sqrt.h:110: bad fp exception: RN sqrt(0x1.b3f8fa06a2ccbp+105)=0x1.d875a00071232p+52, want INEXACT got 0
src/math/special/sqrt.h:111: bad fp exception: RN sqrt(0x1.5530340a9ec6dp+104)=0x1.278a5fff8edcfp+52, want INEXACT got 0
src/math/special/sqrt.h:112: bad fp exception: RN sqrt(0x1.0e56ba9f7aed7p+105)=0x1.740a22b30117p+52, want INEXACT got 0
src/math/special/sqrt.h:113: bad fp exception: RN sqrt(0x1.7113604516542p+105)=0x1.b2b3fbdef6484p+52, want INEXACT got 0
src/math/special/sqrt.h:114: bad fp exception: RN sqrt(0x1.b1eed95066f6fp+104)=0x1.4d4c042109b7dp+52, want INEXACT got 0
src/math/special/sqrt.h:115: bad fp exception: RN sqrt(0x1.6bf5355c8c95ap+105)=0x1.afadb8f8bf0e7p+52, want INEXACT got 0
src/math/special/sqrt.h:116: bad fp exception: RN sqrt(0x1.b9d814e49ed4dp+104)=0x1.5052470740f1ap+52, want INEXACT got 0
src/math/special/sqrt.h:117: bad fp exception: RN sqrt(0x1.43f8e1433f3c7p+105)=0x1.9746a985244b8p+52, want INEXACT got 0
src/math/special/sqrt.h:118: bad fp exception: RN sqrt(0x1.fc49c967a4b41p+104)=0x1.68b9567adbb49p+52, want INEXACT got 0
src/math/special/sqrt.h:119: bad fp exception: RN sqrt(0x1.a466de7840cedp+105)=0x1.cff2224245983p+52, want INEXACT got 0
src/math/special/sqrt.h:120: bad fp exception: RN sqrt(0x1.6920ef62e00cbp+104)=0x1.300dddbdba67ep+52, want INEXACT got 0
src/math/special/sqrt.h:121: bad fp exception: RN sqrt(0x1.4cc05fcb09836p+105)=0x1.9cc1eb16ea6f5p+52, want INEXACT got 0
src/math/special/sqrt.h:122: bad fp exception: RN sqrt(0x1.ecf53d0c946b1p+104)=0x1.633e14e91590cp+52, want INEXACT got 0
src/math/special/sqrt.h:123: bad fp exception: RN sqrt(0x1.e582e3d428926p+105)=0x1.f2946b565ea82p+52, want INEXACT got 0
src/math/special/sqrt.h:124: bad fp exception: RN sqrt(0x1.1b8b43a219343p+104)=0x1.0d6b94a9a157fp+52, want INEXACT got 0
src/math/special/sqrt.h:125: bad fp exception: RN sqrt(0x1.106ce24747471p+105)=0x1.7578fafbfbf81p+52, want INEXACT got 0
src/math/special/sqrt.h:126: bad fp exception: RN sqrt(0x1.b2a13cbfcfb81p+105)=0x1.d7bb3a4fbae26p+52, want INEXACT got 0
src/math/special/sqrt.h:127: bad fp exception: RN sqrt(0x1.56df1ba13e221p+104)=0x1.2844c5b0451dbp+52, want INEXACT got 0
src/math/special/sqrt.h:128: bad fp exception: RN sqrt(0x1.e82e1ff49a7cfp+105)=0x1.f3f2c0504d214p+52, want INEXACT got 0
src/math/special/sqrt.h:129: bad fp exception: RN sqrt(0x1.18abbe0766329p+104)=0x1.0c0d3fafb2dedp+52, want INEXACT got 0
src/math/special/sqrt.h:130: bad fp exception: RN sqrt(0x1.867111aa6ea58p+105)=0x1.bf1bcffb3a397p+52, want INEXACT got 0
src/math/special/sqrt.h:131: bad fp exception: RN sqrt(0x1.923b43717ff29p+104)=0x1.40e43004c5c6ap+52, want INEXACT got 0
src/math/special/sqrt.h:132: bad fp exception: RN sqrt(0x1.4397d6aceee18p+105)=0x1.9709a5bc51865p+52, want INEXACT got 0
src/math/special/sqrt.h:133: bad fp exception: RN sqrt(0x1.fcf5caeff49d5p+104)=0x1.68f65a43ae79cp+52, want INEXACT got 0
src/math/special/sqrt.h:134: bad fp exception: RN sqrt(0x1.d539343604b1cp+105)=0x1.ea2531e60719p+52, want INEXACT got 0
src/math/special/sqrt.h:135: bad fp exception: RN sqrt(0x1.2d933d07decdbp+104)=0x1.15dace19f8e71p+52, want INEXACT got 0
src/math/special/sqrt.h:136: bad fp exception: RN sqrt(0x1.0ceb7a037208dp+105)=0x1.730fda68bc30bp+52, want INEXACT got 0
src/math/special/sqrt.h:137: bad fp exception: RN sqrt(0x1.1080513139899p+105)=0x1.75864cd829c47p+52, want INEXACT got 0
src/math/special/sqrt.h:138: bad fp exception: RN sqrt(0x1.c9de43a39a0a8p+105)=0x1.e42d9e73dd6d8p+52, want INEXACT got 0
src/math/special/sqrt.h:139: bad fp exception: RN sqrt(0x1.3aaad09003843p+104)=0x1.1bd2618c22929p+52, want INEXACT got 0
src/math/special/sqrt.h:140: bad fp exception: RN sqrt(0x1.b3ec881cb96fdp+105)=0x1.d86ee1ae4c82cp+52, want INEXACT got 0
src/math/special/sqrt.h:141: bad fp exception: RN sqrt(0x1.553fc623a7cf5p+104)=0x1.27911e51b37d5p+52, want INEXACT got 0
src/math/special/sqrt.h:142: bad fp exception: RN sqrt(0x1.4ff5bc007e6c9p+105)=0x1.9ebe1e8cdea3bp+52, want INEXACT got 0
src/math/special/sqrt.h:143: bad fp exception: RN sqrt(0x1.e776c0b3c5033p+104)=0x1.6141e173215c6p+52, want INEXACT got 0
src/math/special/sqrt.h:144: bad fp exception: RN sqrt(0x1.cd2a19fffb1cep+105)=0x1.e5eafb54dbabcp+52, want INEXACT got 0
src/math/special/sqrt.h:145: bad fp exception: RN sqrt(0x1.36d25002d0337p+104)=0x1.1a1504ab24545p+52, want INEXACT got 0
src/math/special/sqrt.h:146: bad fp exception: RN sqrt(0x1.1066b4e45e49p+105)=0x1.7574befc42651p+52, want INEXACT got 0
src/math/special/sqrt.h:147: bad fp exception: RN sqrt(0x1.ab2da631d3a34p+105)=0x1.d3ab89fd4393dp+52, want INEXACT got 0
src/math/special/sqrt.h:148: bad fp exception: RN sqrt(0x1.6056107411cfdp+104)=0x1.2c547602bc6c4p+52, want INEXACT got 0
src/math/special/sqrt.h:149: bad fp exception: RN sqrt(0x1.3999aa6650897p+105)=0x1.90b41b8c1f0f8p+52, want INEXACT got 0
src/math/special/sqrt.h:150: bad fp exception: RN sqrt(0x1.1517f1291b7f8p+105)=0x1.78a8a9f0969bep+52, want INEXACT got 0
src/math/special/sqrt.h:151: bad fp exception: RN sqrt(0x1.1afedabae41bfp+105)=0x1.7ca628f6c7f4cp+52, want INEXACT got 0
src/math/special/sqrt.h:152: bad fp exception: RN sqrt(0x1.050a544bf6295p+105)=0x1.6d95da6eca566p+52, want INEXACT got 0
src/math/special/sqrt.h:153: bad fp exception: RN sqrt(0x1.e086dfcb31497p+105)=0x1.f0038c4497c54p+52, want INEXACT got 0
src/math/special/sqrt.h:154: bad fp exception: RN sqrt(0x1.20f875fad3f39p+104)=0x1.0ffc73bb683adp+52, want INEXACT got 0
src/math/special/sqrt.h:155: bad fp exception: RN sqrt(0x1.481169fc8aefap+105)=0x1.99d7aa56daa57p+52, want INEXACT got 0
src/math/special/sqrt.h:156: bad fp exception: RN sqrt(0x1.f514d5eff5fedp+104)=0x1.662855a9255aap+52, want INEXACT got 0
src/math/special/sqrt.h:157: bad fp exception: RN sqrt(0x1.d1b4372a774b2p+105)=0x1.e84dba6bdeef9p+52, want INEXACT got 0
src/math/special/sqrt.h:158: bad fp exception: RN sqrt(0x1.31960fcdb4f91p+104)=0x1.17b2459421108p+52, want INEXACT got 0
src/math/special/sqrt.h:159: bad fp exception: RN sqrt(0x1.efe37bcdd7621p+105)=0x1.f7e14202b15efp+52, want INEXACT got 0
src/math/special/sqrt.h:160: bad fp exception: RN sqrt(0x1.107f6b8b868abp+104)=0x1.081ebdfd4ea12p+52, want INEXACT got 0
src/math/special/sqrt.h:161: bad fp exception: RN sqrt(0x1.e625b487e7145p+105)=0x1.f2e7fda4849dp+52, want INEXACT got 0
src/math/special/sqrt.h:162: bad fp exception: RN sqrt(0x1.1adb7734b27adp+104)=0x1.0d18025b7b631p+52, want INEXACT got 0
src/math/special/sqrt.h:163: bad fp exception: RN sqrt(0x1.e6d250d4590b8p+105)=0x1.f34087cbcdc36p+52, want INEXACT got 0
src/math/special/sqrt.h:164: bad fp exception: RN sqrt(0x1.1a2172e1df82fp+104)=0x1.0cbf7834323cbp+52, want INEXACT got 0
src/math/special/sqrt.h:165: bad fp exception: RN sqrt(0x1.c138e21d2d40cp+105)=0x1.df95c22b7dc1dp+52, want INEXACT got 0
src/math/special/sqrt.h:166: bad fp exception: RN sqrt(0x1.44ef373567f6dp+104)=0x1.206a3dd4823e4p+52, want INEXACT got 0
src/math/special/sqrt.h:167: bad fp exception: RN sqrt(0x1.b4aea5678d612p+105)=0x1.d8d80590bc4fap+52, want INEXACT got 0
src/math/special/sqrt.h:168: bad fp exception: RN sqrt(0x1.544d296ab0e4bp+104)=0x1.2727fa6f43b07p+52, want INEXACT got 0
src/math/special/sqrt.h:169: bad fp exception: RN sqrt(0x1.db4670ed5c584p+105)=0x1.ed4bc29449318p+52, want INEXACT got 0
src/math/special/sqrt.h:170: bad fp exception: RN sqrt(0x1.26c652610187bp+104)=0x1.12b43d6bb6ce9p+52, want INEXACT got 0
src/math/special/sqrt.h:171: bad fp exception: RN sqrt(0x1.1d70daf24b2f3p+105)=0x1.7e4a43221475ep+52, want INEXACT got 0
src/math/special/sqrt.h:172: bad fp exception: RN sqrt(0x1.cd8f896bdbe15p+105)=0x1.e62069048e19fp+52, want INEXACT got 0
src/math/special/sqrt.h:173: bad fp exception: RN sqrt(0x1.365c9cbc63273p+104)=0x1.19df96fb71e62p+52, want INEXACT got 0
src/math/special/sqrt.h:174: bad fp exception: RN sqrt(0x1.3a0c77ff9e212p+105)=0x1.90fd6d286a2fbp+52, want INEXACT got 0
src/math/special/sqrt.h:175: bad fp exception: RN sqrt(0x1.6a0fb44de32e8p+105)=0x1.ae8d6d175828dp+52, want INEXACT got 0
src/math/special/sqrt.h:176: bad fp exception: RN sqrt(0x1.bcceda0fb5685p+104)=0x1.517292e8a7d74p+52, want INEXACT got 0
src/math/special/sqrt.h:177: bad fp exception: RN sqrt(0x1.46a1c8f457c6ap+105)=0x1.98f1c8048ae4ap+52, want INEXACT got 0
src/math/special/sqrt.h:178: bad fp exception: RN sqrt(0x1.f798e1cd6e31bp+104)=0x1.670e37fb751b7p+52, want INEXACT got 0
src/math/special/sqrt.h:179: bad fp exception: RN sqrt(0x1.aecec8b785d0ep+105)=0x1.d5a7110823728p+52, want INEXACT got 0
src/math/special/sqrt.h:180: bad fp exception: RN sqrt(0x1.5bb32b3e36f2fp+104)=0x1.2a58eef7dc8d9p+52, want INEXACT got 0
src/math/special/sqrt.h:181: bad fp exception: RN sqrt(0x1.506f082d9f44bp+105)=0x1.9f08f6c296ad3p+52, want INEXACT got 0
src/math/special/sqrt.h:182: bad fp exception: RN sqrt(0x1.e6a847cbb67a7p+104)=0x1.60f7093d6952ep+52, want INEXACT got 0
src/math/special/sqrt.h:183: bad fp exception: RN sqrt(0x1.71b747570cd0dp+105)=0x1.b314772f738fcp+52, want INEXACT got 0
src/math/special/sqrt.h:184: bad fp exception: RN sqrt(0x1.b0f3c39164435p+104)=0x1.4ceb88d08c705p+52, want INEXACT got 0
src/math/special/sqrt.h:185: bad fp exception: RN sqrt(0x1.c7b2b1cb67e06p+105)=0x1.e30785ed8182bp+52, want INEXACT got 0
src/math/special/sqrt.h:186: bad fp exception: RN sqrt(0x1.3d384005c6b0dp+104)=0x1.1cf87a127e7d6p+52, want INEXACT got 0
src/math/special/sqrt.h:187: bad fp exception: RN sqrt(0x1.6ace3a1b30035p+105)=0x1.aefea65f32e67p+52, want INEXACT got 0
src/math/special/sqrt.h:188: bad fp exception: RN sqrt(0x1.bba48dfb2ea03p+104)=0x1.510159a0cd19ap+52, want INEXACT got 0
src/math/special/sqrt.h:189: bad fp exception: RN sqrt(0x1.1d434042e01ccp+105)=0x1.7e2bb7fa1ccfep+52, want INEXACT got 0
src/math/special/sqrt.h:190: bad fp exception: RN sqrt(0x1.ffffffffffffbp+105)=0x1.ffffffffffffdp+52, want INEXACT got 0
src/math/special/sqrt.h:191: bad fp exception: RN sqrt(0x1.0000000000005p+104)=0x1.0000000000002p+52, want INEXACT got 0
src/math/special/sqrt.h:192: bad fp exception: RN sqrt(0x1.77483d37ce205p+105)=0x1.b657c6d214c37p+52, want INEXACT got 0
src/math/special/sqrt.h:193: bad fp exception: RN sqrt(0x1.a881d1831fabdp+104)=0x1.49a8392deb3c8p+52, want INEXACT got 0
src/math/special/sqrt.h:194: bad fp exception: RN sqrt(0x1.ffffffffffff9p+105)=0x1.ffffffffffffcp+52, want INEXACT got 0
src/math/special/sqrt.h:195: bad fp exception: RN sqrt(0x1.0000000000007p+104)=0x1.0000000000003p+52, want INEXACT got 0
src/math/special/sqrt.h:196: bad fp exception: RN sqrt(0x1.1ac9955fd90d2p+105)=0x1.7c8253abfead5p+52, want INEXACT got 0
src/math/special/sqrt.h:197: bad fp exception: RN sqrt(0x1.69ca8fa07c526p+105)=0x1.ae644e924e0efp+52, want INEXACT got 0
src/math/special/sqrt.h:198: bad fp exception: RN sqrt(0x1.bd3b47d3244afp+104)=0x1.519bb16db1f1p+52, want INEXACT got 0
src/math/special/sqrt.h:199: bad fp exception: RN sqrt(0x1.e4054716ef6ap+105)=0x1.f1d0539c8f7b1p+52, want INEXACT got 0
src/math/special/sqrt.h:200: bad fp exception: RN sqrt(0x1.1d28988281f17p+104)=0x1.0e2fac637084ep+52, want INEXACT got 0
src/math/special/sqrt.h:201: bad fp exception: RN sqrt(0x1.ffffffffffff7p+105)=0x1.ffffffffffffbp+52, want INEXACT got 0
src/math/special/sqrt.h:202: bad fp exception: RN sqrt(0x1.0000000000009p+104)=0x1.0000000000004p+52, want INEXACT got 0
src/math/special/sqrt.h:203: bad fp exception: RN sqrt(0x1.0d4cef742baf7p+105)=0x1.7353113c1682dp+52, want INEXACT got 0
src/math/special/sqrt.h:204: bad fp exception: RN sqrt(0x1.f974b2f9b9fd3p+105)=0x1.fcb7a7dc3ab8cp+52, want INEXACT got 0
src/math/special/sqrt.h:205: bad fp exception: RN sqrt(0x1.069b76ca13a5bp+104)=0x1.03485823c5473p+52, want INEXACT got 0
src/math/special/sqrt.h:206: bad fp exception: RN sqrt(0x1.ffffffffffff5p+105)=0x1.ffffffffffffap+52, want INEXACT got 0
src/math/special/sqrt.h:207: bad fp exception: RN sqrt(0x1.000000000000bp+104)=0x1.0000000000005p+52, want INEXACT got 0
src/math/special/sqrt.h:208: bad fp exception: RN sqrt(0x1.3ac226a62efabp+105)=0x1.917159bb0fc2p+52, want INEXACT got 0
src/math/special/sqrt.h:209: bad fp exception: RN sqrt(0x1.202a5c6165a5ep+105)=0x1.801c3c8c7f69ep+52, want INEXACT got 0
src/math/special/sqrt.h:210: bad fp exception: RN sqrt(0x1.a903217634cb4p+105)=0x1.d27b9ce7e656bp+52, want INEXACT got 0
src/math/special/sqrt.h:211: bad fp exception: RN sqrt(0x1.6320957d038e3p+104)=0x1.2d84631819a94p+52, want INEXACT got 0
src/math/special/sqrt.h:212: bad fp exception: RN sqrt(0x1.ffffffffffff3p+105)=0x1.ffffffffffff9p+52, want INEXACT got 0
src/math/special/sqrt.h:213: bad fp exception: RN sqrt(0x1.000000000000dp+104)=0x1.0000000000006p+52, want INEXACT got 0
src/math/special/sqrt.h:214: bad fp exception: RN sqrt(0x1.906249f1ac465p+105)=0x1.c4c3f656b1ae3p+52, want INEXACT got 0
src/math/special/sqrt.h:215: bad fp exception: RN sqrt(0x1.842ccddb2e775p+104)=0x1.3b3c09a94e51cp+52, want INEXACT got 0
src/math/special/sqrt.h:216: bad fp exception: RN sqrt(0x1.86114026e1d57p+105)=0x1.bee4efcdfc972p+52, want INEXACT got 0
src/math/special/sqrt.h:217: bad fp exception: RN sqrt(0x1.92c4e179d81ffp+104)=0x1.411b10320368dp+52, want INEXACT got 0
src/math/special/sqrt.h:218: bad fp exception: RN sqrt(0x1.ffffffffffff1p+105)=0x1.ffffffffffff8p+52, want INEXACT got 0
src/math/special/sqrt.h:219: bad fp exception: RN sqrt(0x1.000000000000fp+104)=0x1.0000000000007p+52, want INEXACT got 0
src/math/special/sqrt.h:220: bad fp exception: RN sqrt(0x1.bd38b7f5a2e32p+105)=0x1.dd71d78f19353p+52, want INEXACT got 0
src/math/special/sqrt.h:221: bad fp exception: RN sqrt(0x1.49c66290ae86fp+104)=0x1.228e2870e6cacp+52, want INEXACT got 0
src/math/special/sqrt.h:222: bad fp exception: RN sqrt(0x1.41f10ef33393fp+105)=0x1.95ff6801e853ep+52, want INEXACT got 0
src/math/special/sqrt.h:223: bad fp exception: RN sqrt(0x1.ffe5addaf5307p+104)=0x1.6a0097fe17ac1p+52, want INEXACT got 0
src/math/special/sqrt.h:224: bad fp exception: RN sqrt(0x1.3373d07e38531p+105)=0x1.8cc1a26e959b4p+52, want INEXACT got 0
src/math/special/sqrt.h:225: bad fp exception: RN sqrt(0x1.0ba47e5d96a17p+105)=0x1.722dfec721cbdp+52, want INEXACT got 0
src/math/special/sqrt.h:226: bad fp exception: RN sqrt(0x1.fffffffffffefp+105)=0x1.ffffffffffff7p+52, want INEXACT got 0
src/math/special/sqrt.h:227: bad fp exception: RN sqrt(0x1.0000000000011p+104)=0x1.0000000000008p+52, want INEXACT got 0
src/math/special/sqrt.h:228: bad fp exception: RN sqrt(0x1.2dd951d9fc451p+105)=0x1.891fcbcecfdc3p+52, want INEXACT got 0
src/math/special/sqrt.h:229: bad fp exception: RN sqrt(0x1.aaac304200df4p+105)=0x1.d364a6e7a846ap+52, want INEXACT got 0
src/math/special/sqrt.h:230: bad fp exception: RN sqrt(0x1.60fc771610169p+104)=0x1.2c9b591857b95p+52, want INEXACT got 0
src/math/special/sqrt.h:231: bad fp exception: RN sqrt(0x1.5ccb5b03f4034p+105)=0x1.a697297c578afp+52, want INEXACT got 0
src/math/special/sqrt.h:232: bad fp exception: RN sqrt(0x1.d20bbd1ddac4bp+104)=0x1.5968d683a875p+52, want INEXACT got 0
src/math/special/sqrt.h:233: bad fp exception: RN sqrt(0x1.a64a0786c5018p+105)=0x1.d0fc70090acedp+52, want INEXACT got 0
src/math/special/sqrt.h:234: bad fp exception: RN sqrt(0x1.66a96ed74929fp+104)=0x1.2f038ff6f5312p+52, want INEXACT got 0
src/math/special/sqrt.h:235: bad fp exception: RN sqrt(0x1.27f0f3892e966p+105)=0x1.854215b8a5e18p+52, want INEXACT got 0
src/math/special/sqrt.h:236: bad fp exception: RN sqrt(0x1.fffffffffffedp+105)=0x1.ffffffffffff6p+52, want INEXACT got 0
src/math/special/sqrt.h:237: bad fp exception: RN sqrt(0x1.0000000000013p+104)=0x1.0000000000009p+52, want INEXACT got 0
src/math/special/sqrt.h:238: bad fp exception: RN sqrt(0x1.9cf37dc067513p+105)=0x1.cbd0f5aa4c73ap+52, want INEXACT got 0
src/math/special/sqrt.h:239: bad fp exception: RN sqrt(0x1.7301398303ec7p+104)=0x1.342f0a55b38c5p+52, want INEXACT got 0
src/math/special/sqrt.h:240: bad fp exception: RN sqrt(0x1.2de7d612d1581p+105)=0x1.89293facadc6p+52, want INEXACT got 0
src/math/special/sqrt.h:241: bad fp exception: RN sqrt(0x1.91e2e1888fb81p+105)=0x1.c59d36661abdep+52, want INEXACT got 0
src/math/special/sqrt.h:242: bad fp exception: RN sqrt(0x1.82167cac7efcbp+104)=0x1.3a62c999e5421p+52, want INEXACT got 0
src/math/special/sqrt.h:243: bad fp exception: RN sqrt(0x1.66fe83bf9d389p+105)=0x1.acb9923c92f2bp+52, want INEXACT got 0
src/math/special/sqrt.h:244: bad fp exception: RN sqrt(0x1.c1a39a13c8c0dp+104)=0x1.53466dc36d0d4p+52, want INEXACT got 0
src/math/special/sqrt.h:245: bad fp exception: RN sqrt(0x1.08013920711f5p+105)=0x1.6fa7c41e7da28p+52, want INEXACT got 0
src/math/special/sqrt.h:246: bad fp exception: RN sqrt(0x1.fffffffffffebp+105)=0x1.ffffffffffff5p+52, want INEXACT got 0
src/math/special/sqrt.h:247: bad fp exception: RN sqrt(0x1.0000000000015p+104)=0x1.000000000000ap+52, want INEXACT got 0
src/math/special/sqrt.h:248: bad fp exception: RN sqrt(0x1.2e23b951167f3p+105)=0x1.89503c69a508fp+52, want INEXACT got 0
src/math/special/sqrt.h:249: bad fp exception: RN sqrt(0x1.8448f9061c55p+105)=0x1.bddf431dfa7d1p+52, want INEXACT got 0
src/math/special/sqrt.h:250: bad fp exception: RN sqrt(0x1.95565f5859bb7p+104)=0x1.4220bce20582ep+52, want INEXACT got 0
src/math/special/sqrt.h:251: bad fp exception: RN sqrt(0x1.49871c81c0e73p+105)=0x1.9ac0d43859164p+52, want INEXACT got 0
src/math/special/sqrt.h:252: bad fp exception: RN sqrt(0x1.f2893fb16b48bp+104)=0x1.653f2bc7a6e9bp+52, want INEXACT got 0
src/math/special/sqrt.h:253: bad fp exception: RN sqrt(0x1.585a518f34574p+105)=0x1.a3e427096cbc7p+52, want INEXACT got 0
src/math/special/sqrt.h:254: bad fp exception: RN sqrt(0x1.d95bb8e5dc43bp+104)=0x1.5c1bd8f693438p+52, want INEXACT got 0
src/math/special/sqrt.h:255: bad fp exception: RN sqrt(0x1.4640c61a107d3p+105)=0x1.98b508d7696ecp+52, want INEXACT got 0
src/math/special/sqrt.h:256: bad fp exception: RN sqrt(0x1.f8435727a861bp+104)=0x1.674af72896913p+52, want INEXACT got 0
src/math/special/sqrt.h:257: bad fp exception: RN sqrt(0x1.109491841853dp+105)=0x1.75942dbb1eedap+52, want INEXACT got 0
src/math/special/sqrt.h:258: bad fp exception: RN sqrt(0x1.2fec5e46b945fp+105)=0x1.8a7904fc03f7fp+52, want INEXACT got 0
src/math/special/sqrt.h:259: bad fp exception: RN sqrt(0x1.fffffffffffe9p+105)=0x1.ffffffffffff4p+52, want INEXACT got 0
src/math/special/sqrt.h:260: bad fp exception: RN sqrt(0x1.0000000000017p+104)=0x1.000000000000bp+52, want INEXACT got 0
src/math/special/sqrt.h:261: bad fp exception: RN sqrt(0x1.128b05f79555cp+105)=0x1.76ebe008ed97dp+52, want INEXACT got 0
src/math/special/sqrt.h:262: bad fp exception: RN sqrt(0x1.fb6ad7a73a0cbp+105)=0x1.fdb41a4dd1b83p+52, want INEXACT got 0
src/math/special/sqrt.h:263: bad fp exception: RN sqrt(0x1.049d117b89c81p+104)=0x1.024be5b22e47cp+52, want INEXACT got 0
src/math/special/sqrt.h:264: bad fp exception: RN sqrt(0x1.6b287cde410f1p+105)=0x1.af343fdf7ac55p+52, want INEXACT got 0
src/math/special/sqrt.h:265: bad fp exception: RN sqrt(0x1.bb177a7fa17e1p+104)=0x1.50cbc020853aap+52, want INEXACT got 0
src/math/special/sqrt.h:266: bad fp exception: RN sqrt(0x1.1705e87e6572cp+105)=0x1.79f7cf7bd7da7p+52, want INEXACT got 0
src/math/special/sqrt.h:267: bad fp exception: RN sqrt(0x1.a0857af57261ep+105)=0x1.cdccb8f9c56c9p+52, want INEXACT got 0
src/math/special/sqrt.h:268: bad fp exception: RN sqrt(0x1.6e3ea01044383p+104)=0x1.323347063a936p+52, want INEXACT got 0
src/math/special/sqrt.h:269: bad fp exception: RN sqrt(0x1.fffffffffffe7p+105)=0x1.ffffffffffff3p+52, want INEXACT got 0
src/math/special/sqrt.h:270: bad fp exception: RN sqrt(0x1.0000000000019p+104)=0x1.000000000000cp+52, want INEXACT got 0
src/math/special/sqrt.h:271: bad fp exception: RN sqrt(0x1.8b19714a4836dp+105)=0x1.c1c480c871185p+52, want INEXACT got 0
src/math/special/sqrt.h:272: bad fp exception: RN sqrt(0x1.8b97dde1e9db9p+104)=0x1.3e3b7f378ee7ap+52, want INEXACT got 0
src/math/special/sqrt.h:273: bad fp exception: RN sqrt(0x1.a0caf669ea303p+105)=0x1.cdf33be5a3ee1p+52, want INEXACT got 0
src/math/special/sqrt.h:274: bad fp exception: RN sqrt(0x1.6de28571fccbdp+104)=0x1.320cc41a5c11ep+52, want INEXACT got 0
src/math/special/sqrt.h:275: bad fp exception: RN sqrt(0x1.ae6b9477b0f4ep+105)=0x1.d570fad5ae714p+52, want INEXACT got 0
src/math/special/sqrt.h:276: bad fp exception: RN sqrt(0x1.5c3147ed4b421p+104)=0x1.2a8f052a518ebp+52, want INEXACT got 0
src/math/special/sqrt.h:277: bad fp exception: RN sqrt(0x1.c9c9ea9823206p+105)=0x1.e422dc265cc22p+52, want INEXACT got 0
src/math/special/sqrt.h:278: bad fp exception: RN sqrt(0x1.3ac2ac4a19b3dp+104)=0x1.1bdd23d9a33ddp+52, want INEXACT got 0
src/math/special/sqrt.h:279: bad fp exception: RN sqrt(0x1.8e513e0c5bbddp+105)=0x1.c39871e63f668p+52, want INEXACT got 0
src/math/special/sqrt.h:280: bad fp exception: RN sqrt(0x1.870fd0b33b147p+104)=0x1.3c678e19c0997p+52, want INEXACT got 0
src/math/special/sqrt.h:281: bad fp exception: RN sqrt(0x1.80448ded551a3p+105)=0x1.bb8f4135f5663p+52, want INEXACT got 0
src/math/special/sqrt.h:282: bad fp exception: RN sqrt(0x1.9b2d9496e9cf1p+104)=0x1.4470beca0a99cp+52, want INEXACT got 0
src/math/special/sqrt.h:283: bad fp exception: RN sqrt(0x1.962c00ed2f202p+105)=0x1.c806bd1a17f4ap+52, want INEXACT got 0
src/math/special/sqrt.h:284: bad fp exception: RN sqrt(0x1.7c2f933dce845p+104)=0x1.37f942e5e80b5p+52, want INEXACT got 0
src/math/special/sqrt.h:285: bad fp exception: RN sqrt(0x1.fffffffffffe5p+105)=0x1.ffffffffffff2p+52, want INEXACT got 0
src/math/special/sqrt.h:286: bad fp exception: RN sqrt(0x1.000000000001bp+104)=0x1.000000000000dp+52, want INEXACT got 0
src/math/special/sqrt.h:287: bad fp exception: RN sqrt(0x1.e986e9749149ep+105)=0x1.f4a32dcc3b787p+52, want INEXACT got 0
src/math/special/sqrt.h:288: bad fp exception: RN sqrt(0x1.173ac01fbdc0fp+104)=0x1.0b5cd233c4878p+52, want INEXACT got 0
src/math/special/sqrt.h:289: bad fp exception: RN sqrt(0x1.b90968dfbd58ep+105)=0x1.db321028321d6p+52, want INEXACT got 0
src/math/special/sqrt.h:290: bad fp exception: RN sqrt(0x1.4ee670ce4e015p+104)=0x1.24cdefd7cde29p+52, want INEXACT got 0
src/math/special/sqrt.h:291: bad fp exception: RN sqrt(0x1.adf3a892c378p+105)=0x1.d52f90bb839e5p+52, want INEXACT got 0
src/math/special/sqrt.h:292: bad fp exception: RN sqrt(0x1.5cc9ecc07139fp+104)=0x1.2ad06f447c61ap+52, want INEXACT got 0
src/math/special/sqrt.h:293: bad fp exception: RN sqrt(0x1.21f25ca11cdefp+105)=0x1.814bae81d5041p+52, want INEXACT got 0
src/math/special/sqrt.h:294: bad fp exception: RN sqrt(0x1.dcd8582acf913p+105)=0x1.ee1c28bdd8634p+52, want INEXACT got 0
src/math/special/sqrt.h:295: bad fp exception: RN sqrt(0x1.2507bbe28ccebp+104)=0x1.11e3d742279cbp+52, want INEXACT got 0
src/math/special/sqrt.h:296: bad fp exception: RN sqrt(0x1.5bdd34dbf3f7cp+105)=0x1.a606cc4bbc777p+52, want INEXACT got 0
src/math/special/sqrt.h:297: bad fp exception: RN sqrt(0x1.d3919ff17d22bp+104)=0x1.59f933b443888p+52, want INEXACT got 0
src/math/special/sqrt.h:298: bad fp exception: RN sqrt(0x1.6a4d09ea19a7dp+105)=0x1.aeb1e37cf98d9p+52, want INEXACT got 0
src/math/special/sqrt.h:299: bad fp exception: RN sqrt(0x1.bc6ebee659fe1p+104)=0x1.514e1c8306726p+52, want INEXACT got 0
src/math/special/sqrt.h:300: bad fp exception: RN sqrt(0x1.991f1e263175ap+105)=0x1.c9addf0205943p+52, want INEXACT got 0
src/math/special/sqrt.h:301: bad fp exception: RN sqrt(0x1.782b02404171fp+104)=0x1.365220fdfa6bcp+52, want INEXACT got 0
src/math/special/sqrt.h:302: bad fp exception: RN sqrt(0x1.08e9256b12fa6p+105)=0x1.70491de5982eap+52, want INEXACT got 0
src/math/special/sqrt.h:303: bad fp exception: RN sqrt(0x1.1da509e4fd3bdp+105)=0x1.7e6d33563082fp+52, want INEXACT got 0
src/math/special/sqrt.h:304: bad fp exception: RN sqrt(0x1.fffffffffffe3p+105)=0x1.ffffffffffff1p+52, want INEXACT got 0
src/math/special/sqrt.h:305: bad fp exception: RN sqrt(0x1.000000000001dp+104)=0x1.000000000000ep+52, want INEXACT got 0
src/math/special/sqrt.h:306: bad fp exception: RN sqrt(0x1.1c8fba5105937p+105)=0x1.7db363c14e992p+52, want INEXACT got 0
src/math/special/sqrt.h:307: bad fp exception: RN sqrt(0x1.12307f6aa1598p+105)=0x1.76ae0b2037967p+52, want INEXACT got 0
src/math/special/sqrt.h:308: bad fp exception: RN sqrt(0x1.350b181f61a1bp+105)=0x1.8dc815e13b276p+52, want INEXACT got 0
src/math/special/sqrt.h:309: bad fp exception: RN sqrt(0x1.1a2f79400dc0ap+105)=0x1.7c1a96d138a45p+52, want INEXACT got 0
src/math/special/sqrt.h:310: bad fp exception: RN sqrt(0x1.a4005a0d21cc4p+105)=0x1.cfb98d7063cep+52, want INEXACT got 0
src/math/special/sqrt.h:311: bad fp exception: RN sqrt(0x1.69a76377ecc45p+104)=0x1.3046728f9c31fp+52, want INEXACT got 0
src/math/special/sqrt.h:312: bad fp exception: RN sqrt(0x1.17fcdcccc3eb2p+105)=0x1.7a9eee07bc9a1p+52, want INEXACT got 0
src/math/special/sqrt.h:313: bad fp exception: RN sqrt(0x1.1a4b4ce34b56fp+105)=0x1.7c2d54204e09dp+52, want INEXACT got 0
src/math/special/sqrt.h:314: bad fp exception: RN sqrt(0x1.c5edba7fe6b83p+105)=0x1.e217391120d57p+52, want INEXACT got 0
src/math/special/sqrt.h:315: bad fp exception: RN sqrt(0x1.3f501e99086f9p+104)=0x1.1de8c6eedf2a8p+52, want INEXACT got 0
src/math/special/sqrt.h:316: bad fp exception: RN sqrt(0x1.cf9db38790aa3p+105)=0x1.e7352fd68c3c6p+52, want INEXACT got 0
src/math/special/sqrt.h:317: bad fp exception: RN sqrt(0x1.33fc4807d7e9fp+104)=0x1.18cad02973c39p+52, want INEXACT got 0
src/math/special/sqrt.h:318: bad fp exception: RN sqrt(0x1.fc2018f397d65p+105)=0x1.fe0f1b5c1a175p+52, want INEXACT got 0
src/math/special/sqrt.h:319: bad fp exception: RN sqrt(0x1.03e58dbe93209p+104)=0x1.01f0e4a3e5e8ap+52, want INEXACT got 0
src/math/special/sqrt.h:320: bad fp exception: RN sqrt(0x1.fffffffffffe1p+105)=0x1.ffffffffffffp+52, want INEXACT got 0
src/math/special/sqrt.h:321: bad fp exception: RN sqrt(0x1.000000000001fp+104)=0x1.000000000000fp+52, want INEXACT got 0
src/math/special/sqrt.h:322: bad fp exception: RN sqrt(0x1.6015db7c6744cp+105)=0x1.a894573ff12aep+52, want INEXACT got 0
src/math/special/sqrt.h:323: bad fp exception: RN sqrt(0x1.ccb1ab7927881p+104)=0x1.576ba8c00ed51p+52, want INEXACT got 0
src/math/special/sqrt.h:324: bad fp exception: RN sqrt(0x1.2095fab55f69fp+105)=0x1.8063ef77e2b32p+52, want INEXACT got 0
src/math/special/sqrt.h:325: bad fp exception: RN sqrt(0x1.dbb7a32c9c655p+105)=0x1.ed867d956c347p+52, want INEXACT got 0
src/math/special/sqrt.h:326: bad fp exception: RN sqrt(0x1.264854d8af8fdp+104)=0x1.1279826a93cb8p+52, want INEXACT got 0
FAIL src/math/sqrt.exe [status 1]
src/math/ucb/sqrtf.h:47: bad fp exception: RN sqrtf(0x1.fffffep+127)=0x1.fffffep+63, want INEXACT got 0
src/math/ucb/sqrtf.h:48: bad fp exception: RZ sqrtf(0x1.fffffep+127)=0x1.fffffep+63, want INEXACT got 0
src/math/ucb/sqrtf.h:49: bad fp exception: RU sqrtf(0x1.fffffep+127)=0x1p+64, want INEXACT got 0
src/math/ucb/sqrtf.h:49: RU sqrtf(0x1.fffffep+127) want 0x1p+64 got 0x1.fffffep+63 ulperr -0.250 = -0x1p-1 + 0x1p-2
src/math/ucb/sqrtf.h:50: bad fp exception: RD sqrtf(0x1.fffffep+127)=0x1.fffffep+63, want INEXACT got 0
src/math/ucb/sqrtf.h:67: bad fp exception: RN sqrtf(0x1.000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:69: bad fp exception: RN sqrtf(0x1.fffffep-1)=0x1.fffffep-1, want INEXACT got 0
src/math/ucb/sqrtf.h:70: bad fp exception: RZ sqrtf(0x1.000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:72: bad fp exception: RZ sqrtf(0x1.fffffep-1)=0x1.fffffep-1, want INEXACT got 0
src/math/ucb/sqrtf.h:73: bad fp exception: RU sqrtf(0x1.000002p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:73: RU sqrtf(0x1.000002p+0) want 0x1.000002p+0 got 0x1p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrtf.h:75: bad fp exception: RU sqrtf(0x1.fffffep-1)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:75: RU sqrtf(0x1.fffffep-1) want 0x1p+0 got 0x1.fffffep-1 ulperr -0.250 = -0x1p-1 + 0x1p-2
src/math/ucb/sqrtf.h:76: bad fp exception: RD sqrtf(0x1.000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:78: bad fp exception: RD sqrtf(0x1.fffffep-1)=0x1.fffffep-1, want INEXACT got 0
src/math/ucb/sqrtf.h:85: bad fp exception: RN sqrtf(0x1.766bdcp+1)=0x1.b5d7p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:86: bad fp exception: RN sqrtf(0x1.b6547p+2)=0x1.4efb34p+1, want INEXACT got 0
src/math/ucb/sqrtf.h:87: bad fp exception: RN sqrtf(0x1.e1653p+2)=0x1.5f0d32p+1, want INEXACT got 0
src/math/ucb/sqrtf.h:88: bad fp exception: RN sqrtf(0x1.541ddp+0)=0x1.271372p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:89: bad fp exception: RN sqrtf(0x1.754c3ep+1)=0x1.b52eb4p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:90: bad fp exception: RN sqrtf(0x1.ebe1e2p+1)=0x1.f5d724p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:91: bad fp exception: RN sqrtf(0x1.940d8ep+2)=0x1.419dfap+1, want INEXACT got 0
src/math/ucb/sqrtf.h:92: bad fp exception: RN sqrtf(0x1.dae714p+2)=0x1.5cad1ap+1, want INEXACT got 0
src/math/ucb/sqrtf.h:93: bad fp exception: RN sqrtf(0x1.a9f2d2p+1)=0x1.d2ff14p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:94: bad fp exception: RN sqrtf(0x1.57dd34p-3)=0x1.a397d8p-2, want INEXACT got 0
src/math/ucb/sqrtf.h:96: bad fp exception: RN sqrtf(0x1p-149)=0x1.6a09e6p-75, want INEXACT got 0
src/math/ucb/sqrtf.h:97: bad fp exception: RZ sqrtf(0x1p-149)=0x1.6a09e6p-75, want INEXACT got 0
src/math/ucb/sqrtf.h:98: bad fp exception: RU sqrtf(0x1p-149)=0x1.6a09e8p-75, want INEXACT got 0
src/math/ucb/sqrtf.h:98: RU sqrtf(0x1p-149) want 0x1.6a09e8p-75 got 0x1.6a09e6p-75 ulperr -0.203 = -0x1p+0 + 0x1.980c44p-1
src/math/ucb/sqrtf.h:99: bad fp exception: RD sqrtf(0x1p-149)=0x1.6a09e6p-75, want INEXACT got 0
src/math/ucb/sqrtf.h:142: bad fp exception: RD sqrtf(0x1.fffffcp-127)=0x1.fffffcp-64, want INEXACT got 0
src/math/ucb/sqrtf.h:142: RD sqrtf(0x1.fffffcp-127) want 0x1.fffffcp-64 got 0x1.fffffep-64 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:143: bad fp exception: RD sqrtf(0x1.000004p-126)=0x1p-63, want INEXACT got 0
src/math/ucb/sqrtf.h:143: RD sqrtf(0x1.000004p-126) want 0x1p-63 got 0x1.000002p-63 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:144: bad fp exception: RD sqrtf(0x1.ffffeep-1)=0x1.fffff6p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:145: bad fp exception: RD sqrtf(0x1.fffffp-1)=0x1.fffff6p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:145: RD sqrtf(0x1.fffffp-1) want 0x1.fffff6p-1 got 0x1.fffff8p-1 ulperr 0.000 = 0x1p+0 + -0x1.fffffp-1
src/math/ucb/sqrtf.h:146: bad fp exception: RD sqrtf(0x1.fffff2p-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:147: bad fp exception: RD sqrtf(0x1.fffff4p-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:147: RD sqrtf(0x1.fffff4p-1) want 0x1.fffff8p-1 got 0x1.fffffap-1 ulperr 0.000 = 0x1p+0 + -0x1.fffff6p-1
src/math/ucb/sqrtf.h:148: bad fp exception: RD sqrtf(0x1.fffff6p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:149: bad fp exception: RD sqrtf(0x1.fffff8p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:149: RD sqrtf(0x1.fffff8p-1) want 0x1.fffffap-1 got 0x1.fffffcp-1 ulperr 0.000 = 0x1p+0 + -0x1.fffffcp-1
src/math/ucb/sqrtf.h:150: bad fp exception: RD sqrtf(0x1.fffffap-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:151: bad fp exception: RD sqrtf(0x1.fffffcp-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:151: RD sqrtf(0x1.fffffcp-1) want 0x1.fffffcp-1 got 0x1.fffffep-1 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:152: bad fp exception: RD sqrtf(0x1.000004p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:152: RD sqrtf(0x1.000004p+0) want 0x1p+0 got 0x1.000002p+0 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:153: bad fp exception: RD sqrtf(0x1.000006p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:154: bad fp exception: RD sqrtf(0x1.000008p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:154: RD sqrtf(0x1.000008p+0) want 0x1.000002p+0 got 0x1.000004p+0 ulperr 0.000 = 0x1p+0 + -0x1.fffff8p-1
src/math/ucb/sqrtf.h:155: bad fp exception: RD sqrtf(0x1.00000ap+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:156: bad fp exception: RD sqrtf(0x1.00000cp+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:156: RD sqrtf(0x1.00000cp+0) want 0x1.000004p+0 got 0x1.000006p+0 ulperr 0.000 = 0x1p+0 + -0x1.ffffeep-1
src/math/ucb/sqrtf.h:157: bad fp exception: RD sqrtf(0x1.00000ep+0)=0x1.000006p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:158: bad fp exception: RD sqrtf(0x1.fffffcp+125)=0x1.fffffcp+62, want INEXACT got 0
src/math/ucb/sqrtf.h:158: RD sqrtf(0x1.fffffcp+125) want 0x1.fffffcp+62 got 0x1.fffffep+62 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:159: bad fp exception: RD sqrtf(0x1.000004p+126)=0x1p+63, want INEXACT got 0
src/math/ucb/sqrtf.h:159: RD sqrtf(0x1.000004p+126) want 0x1p+63 got 0x1.000002p+63 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:203: bad fp exception: RN sqrtf(0x1.fffffcp-127)=0x1.fffffep-64, want INEXACT got 0
src/math/ucb/sqrtf.h:204: bad fp exception: RN sqrtf(0x1.000004p-126)=0x1.000002p-63, want INEXACT got 0
src/math/ucb/sqrtf.h:205: bad fp exception: RN sqrtf(0x1.ffffeep-1)=0x1.fffff6p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:206: bad fp exception: RN sqrtf(0x1.fffffp-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:207: bad fp exception: RN sqrtf(0x1.fffff2p-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:208: bad fp exception: RN sqrtf(0x1.fffff4p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:209: bad fp exception: RN sqrtf(0x1.fffff6p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:210: bad fp exception: RN sqrtf(0x1.fffff8p-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:211: bad fp exception: RN sqrtf(0x1.fffffap-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:212: bad fp exception: RN sqrtf(0x1.fffffcp-1)=0x1.fffffep-1, want INEXACT got 0
src/math/ucb/sqrtf.h:213: bad fp exception: RN sqrtf(0x1.000004p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:214: bad fp exception: RN sqrtf(0x1.000006p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:215: bad fp exception: RN sqrtf(0x1.000008p+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:216: bad fp exception: RN sqrtf(0x1.00000ap+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:217: bad fp exception: RN sqrtf(0x1.00000cp+0)=0x1.000006p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:218: bad fp exception: RN sqrtf(0x1.00000ep+0)=0x1.000006p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:219: bad fp exception: RN sqrtf(0x1.fffffcp+125)=0x1.fffffep+62, want INEXACT got 0
src/math/ucb/sqrtf.h:220: bad fp exception: RN sqrtf(0x1.000004p+126)=0x1.000002p+63, want INEXACT got 0
src/math/ucb/sqrtf.h:264: bad fp exception: RU sqrtf(0x1.fffffcp-127)=0x1.fffffep-64, want INEXACT got 0
src/math/ucb/sqrtf.h:265: bad fp exception: RU sqrtf(0x1.000004p-126)=0x1.000002p-63, want INEXACT got 0
src/math/ucb/sqrtf.h:266: bad fp exception: RU sqrtf(0x1.ffffeep-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:266: RU sqrtf(0x1.ffffeep-1) want 0x1.fffff8p-1 got 0x1.fffff6p-1 ulperr -0.499 = -0x1p+0 + 0x1.000014p-1
src/math/ucb/sqrtf.h:267: bad fp exception: RU sqrtf(0x1.fffffp-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:268: bad fp exception: RU sqrtf(0x1.fffff2p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:268: RU sqrtf(0x1.fffff2p-1) want 0x1.fffffap-1 got 0x1.fffff8p-1 ulperr -0.499 = -0x1p+0 + 0x1.00000cp-1
src/math/ucb/sqrtf.h:269: bad fp exception: RU sqrtf(0x1.fffff4p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:270: bad fp exception: RU sqrtf(0x1.fffff6p-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:270: RU sqrtf(0x1.fffff6p-1) want 0x1.fffffcp-1 got 0x1.fffffap-1 ulperr -0.499 = -0x1p+0 + 0x1.000006p-1
src/math/ucb/sqrtf.h:271: bad fp exception: RU sqrtf(0x1.fffff8p-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:272: bad fp exception: RU sqrtf(0x1.fffffap-1)=0x1.fffffep-1, want INEXACT got 0
src/math/ucb/sqrtf.h:272: RU sqrtf(0x1.fffffap-1) want 0x1.fffffep-1 got 0x1.fffffcp-1 ulperr -0.499 = -0x1p+0 + 0x1.000002p-1
src/math/ucb/sqrtf.h:273: bad fp exception: RU sqrtf(0x1.fffffcp-1)=0x1.fffffep-1, want INEXACT got 0
src/math/ucb/sqrtf.h:274: bad fp exception: RU sqrtf(0x1.000004p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:275: bad fp exception: RU sqrtf(0x1.000006p+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:275: RU sqrtf(0x1.000006p+0) want 0x1.000004p+0 got 0x1.000002p+0 ulperr -0.499 = -0x1p+0 + 0x1.000004p-1
src/math/ucb/sqrtf.h:276: bad fp exception: RU sqrtf(0x1.000008p+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:277: bad fp exception: RU sqrtf(0x1.00000ap+0)=0x1.000006p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:277: RU sqrtf(0x1.00000ap+0) want 0x1.000006p+0 got 0x1.000004p+0 ulperr -0.499 = -0x1p+0 + 0x1.00000cp-1
src/math/ucb/sqrtf.h:278: bad fp exception: RU sqrtf(0x1.00000cp+0)=0x1.000006p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:279: bad fp exception: RU sqrtf(0x1.00000ep+0)=0x1.000008p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:279: RU sqrtf(0x1.00000ep+0) want 0x1.000008p+0 got 0x1.000006p+0 ulperr -0.499 = -0x1p+0 + 0x1.000018p-1
src/math/ucb/sqrtf.h:280: bad fp exception: RU sqrtf(0x1.fffffcp+125)=0x1.fffffep+62, want INEXACT got 0
src/math/ucb/sqrtf.h:281: bad fp exception: RU sqrtf(0x1.000004p+126)=0x1.000002p+63, want INEXACT got 0
src/math/ucb/sqrtf.h:325: bad fp exception: RZ sqrtf(0x1.fffffcp-127)=0x1.fffffcp-64, want INEXACT got 0
src/math/ucb/sqrtf.h:325: RZ sqrtf(0x1.fffffcp-127) want 0x1.fffffcp-64 got 0x1.fffffep-64 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:326: bad fp exception: RZ sqrtf(0x1.000004p-126)=0x1p-63, want INEXACT got 0
src/math/ucb/sqrtf.h:326: RZ sqrtf(0x1.000004p-126) want 0x1p-63 got 0x1.000002p-63 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:327: bad fp exception: RZ sqrtf(0x1.ffffeep-1)=0x1.fffff6p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:328: bad fp exception: RZ sqrtf(0x1.fffffp-1)=0x1.fffff6p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:328: RZ sqrtf(0x1.fffffp-1) want 0x1.fffff6p-1 got 0x1.fffff8p-1 ulperr 0.000 = 0x1p+0 + -0x1.fffffp-1
src/math/ucb/sqrtf.h:329: bad fp exception: RZ sqrtf(0x1.fffff2p-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:330: bad fp exception: RZ sqrtf(0x1.fffff4p-1)=0x1.fffff8p-1, want INEXACT got 0
src/math/ucb/sqrtf.h:330: RZ sqrtf(0x1.fffff4p-1) want 0x1.fffff8p-1 got 0x1.fffffap-1 ulperr 0.000 = 0x1p+0 + -0x1.fffff6p-1
src/math/ucb/sqrtf.h:331: bad fp exception: RZ sqrtf(0x1.fffff6p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:332: bad fp exception: RZ sqrtf(0x1.fffff8p-1)=0x1.fffffap-1, want INEXACT got 0
src/math/ucb/sqrtf.h:332: RZ sqrtf(0x1.fffff8p-1) want 0x1.fffffap-1 got 0x1.fffffcp-1 ulperr 0.000 = 0x1p+0 + -0x1.fffffcp-1
src/math/ucb/sqrtf.h:333: bad fp exception: RZ sqrtf(0x1.fffffap-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:334: bad fp exception: RZ sqrtf(0x1.fffffcp-1)=0x1.fffffcp-1, want INEXACT got 0
src/math/ucb/sqrtf.h:334: RZ sqrtf(0x1.fffffcp-1) want 0x1.fffffcp-1 got 0x1.fffffep-1 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:335: bad fp exception: RZ sqrtf(0x1.000004p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:335: RZ sqrtf(0x1.000004p+0) want 0x1p+0 got 0x1.000002p+0 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:336: bad fp exception: RZ sqrtf(0x1.000006p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:337: bad fp exception: RZ sqrtf(0x1.000008p+0)=0x1.000002p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:337: RZ sqrtf(0x1.000008p+0) want 0x1.000002p+0 got 0x1.000004p+0 ulperr 0.000 = 0x1p+0 + -0x1.fffff8p-1
src/math/ucb/sqrtf.h:338: bad fp exception: RZ sqrtf(0x1.00000ap+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:339: bad fp exception: RZ sqrtf(0x1.00000cp+0)=0x1.000004p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:339: RZ sqrtf(0x1.00000cp+0) want 0x1.000004p+0 got 0x1.000006p+0 ulperr 0.000 = 0x1p+0 + -0x1.ffffeep-1
src/math/ucb/sqrtf.h:340: bad fp exception: RZ sqrtf(0x1.00000ep+0)=0x1.000006p+0, want INEXACT got 0
src/math/ucb/sqrtf.h:341: bad fp exception: RZ sqrtf(0x1.fffffcp+125)=0x1.fffffcp+62, want INEXACT got 0
src/math/ucb/sqrtf.h:341: RZ sqrtf(0x1.fffffcp+125) want 0x1.fffffcp+62 got 0x1.fffffep+62 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/ucb/sqrtf.h:342: bad fp exception: RZ sqrtf(0x1.000004p+126)=0x1p+63, want INEXACT got 0
src/math/ucb/sqrtf.h:342: RZ sqrtf(0x1.000004p+126) want 0x1p+63 got 0x1.000002p+63 ulperr 0.000 = 0x1p+0 + -0x1.fffffep-1
src/math/sanity/sqrtf.h:2: bad fp exception: RN sqrtf(0x1.161868p+2)=0x1.0ad1aep+1, want INEXACT got 0
src/math/sanity/sqrtf.h:5: bad fp exception: RN sqrtf(0x1.288bbcp+3)=0x1.85a7d4p+1, want INEXACT got 0
src/math/sanity/sqrtf.h:6: bad fp exception: RN sqrtf(0x1.52efdp-1)=0x1.a0937ap-1, want INEXACT got 0
src/math/sanity/sqrtf.h:8: bad fp exception: RN sqrtf(0x1.1f9efap-1)=0x1.7fbf4cp-1, want INEXACT got 0
src/math/sanity/sqrtf.h:9: bad fp exception: RN sqrtf(0x1.8c5dbp-1)=0x1.c27ce8p-1, want INEXACT got 0
src/math/special/sqrtf.h:10: bad fp exception: RN sqrtf(0x1.8p-148)=0x1.3988e2p-74, want INEXACT got 0
src/math/special/sqrtf.h:11: bad fp exception: RN sqrtf(0x1p-149)=0x1.6a09e6p-75, want INEXACT got 0
src/math/special/sqrtf.h:13: bad fp exception: RN sqrtf(0x1.fffffep+127)=0x1.fffffep+63, want INEXACT got 0
src/math/special/sqrtf.h:15: bad fp exception: RN sqrtf(0x1.fffffcp-1)=0x1.fffffep-1, want INEXACT got 0
src/math/special/sqrtf.h:16: bad fp exception: RN sqrtf(0x1.fffffep-1)=0x1.fffffep-1, want INEXACT got 0
src/math/special/sqrtf.h:17: bad fp exception: RN sqrtf(0x1.fffffcp+0)=0x1.6a09e4p+0, want INEXACT got 0
src/math/special/sqrtf.h:18: bad fp exception: RN sqrtf(0x1.fffffep+0)=0x1.6a09e6p+0, want INEXACT got 0
src/math/special/sqrtf.h:19: bad fp exception: RN sqrtf(0x1.000002p+0)=0x1p+0, want INEXACT got 0
src/math/special/sqrtf.h:20: bad fp exception: RN sqrtf(0x1.000004p+0)=0x1.000002p+0, want INEXACT got 0
src/math/special/sqrtf.h:21: bad fp exception: RN sqrtf(0x1.000002p+1)=0x1.6a09e8p+0, want INEXACT got 0
src/math/special/sqrtf.h:22: bad fp exception: RN sqrtf(0x1.000004p+1)=0x1.6a09eap+0, want INEXACT got 0
FAIL src/math/sqrtf.exe [status 1]
src/math/ucb/sqrt.h:47: bad fp exception: RN sqrtl(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/ucb/sqrt.h:48: bad fp exception: RZ sqrtl(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/ucb/sqrt.h:49: bad fp exception: RU sqrtl(0x1.fffffffffffffp+1023)=0x1p+512, want INEXACT got 0
src/math/ucb/sqrt.h:49: RU sqrtl(0x1.fffffffffffffp+1023) want 0x1p+512 got 0x1.fffffffffffffp+511 ulperr -0.250 = -0x1p-1 + 0x1p-2
src/math/ucb/sqrt.h:50: bad fp exception: RD sqrtl(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/ucb/sqrt.h:67: bad fp exception: RN sqrtl(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:69: bad fp exception: RN sqrtl(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:70: bad fp exception: RZ sqrtl(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:72: bad fp exception: RZ sqrtl(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:73: bad fp exception: RU sqrtl(0x1.0000000000001p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:73: RU sqrtl(0x1.0000000000001p+0) want 0x1.0000000000001p+0 got 0x1p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:75: bad fp exception: RU sqrtl(0x1.fffffffffffffp-1)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:75: RU sqrtl(0x1.fffffffffffffp-1) want 0x1p+0 got 0x1.fffffffffffffp-1 ulperr -0.250 = -0x1p-1 + 0x1p-2
src/math/ucb/sqrt.h:76: bad fp exception: RD sqrtl(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:78: bad fp exception: RD sqrtl(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:89: bad fp exception: RN sqrtl(0x1.766bdb2b5006dp+1)=0x1.b5d6fec392e7dp+0, want INEXACT got 0
src/math/ucb/sqrt.h:90: bad fp exception: RN sqrtl(0x1.b6546fb825911p+2)=0x1.4efb330ef0b43p+1, want INEXACT got 0
src/math/ucb/sqrt.h:91: bad fp exception: RN sqrtl(0x1.e165309de7505p+2)=0x1.5f0d324d38bdp+1, want INEXACT got 0
src/math/ucb/sqrt.h:92: bad fp exception: RN sqrtl(0x1.541dcfba96889p+0)=0x1.271370ec508dp+0, want INEXACT got 0
src/math/ucb/sqrt.h:93: bad fp exception: RN sqrtl(0x1.754c3e27084ddp+1)=0x1.b52eb45df30b2p+0, want INEXACT got 0
src/math/ucb/sqrt.h:94: bad fp exception: RN sqrtl(0x1.ebe1e1b093c41p+1)=0x1.f5d722e54e976p+0, want INEXACT got 0
src/math/ucb/sqrt.h:95: bad fp exception: RN sqrtl(0x1.940d8d18455f5p+2)=0x1.419df976f692dp+1, want INEXACT got 0
src/math/ucb/sqrt.h:96: bad fp exception: RN sqrtl(0x1.dae714a51b239p+2)=0x1.5cad1a5584b9ap+1, want INEXACT got 0
src/math/ucb/sqrt.h:97: bad fp exception: RN sqrtl(0x1.a9f2d1079de4dp+1)=0x1.d2ff13bff7b67p+0, want INEXACT got 0
src/math/ucb/sqrt.h:98: bad fp exception: RN sqrtl(0x1.57dd33103b871p-3)=0x1.a397d7b1e31f2p-2, want INEXACT got 0
src/math/ucb/sqrt.h:135: bad fp exception: RD sqrtl(0x1.ffffffffffffep-1023)=0x1.ffffffffffffep-512, want INEXACT got 0
src/math/ucb/sqrt.h:135: RD sqrtl(0x1.ffffffffffffep-1023) want 0x1.ffffffffffffep-512 got 0x1.fffffffffffffp-512 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:136: bad fp exception: RD sqrtl(0x1.0000000000002p-1022)=0x1p-511, want INEXACT got 0
src/math/ucb/sqrt.h:136: RD sqrtl(0x1.0000000000002p-1022) want 0x1p-511 got 0x1.0000000000001p-511 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:137: bad fp exception: RD sqrtl(0x1.ffffffffffff7p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:138: bad fp exception: RD sqrtl(0x1.ffffffffffff8p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:138: RD sqrtl(0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp-1 got 0x1.ffffffffffffcp-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:139: bad fp exception: RD sqrtl(0x1.ffffffffffff9p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:140: bad fp exception: RD sqrtl(0x1.ffffffffffffap-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:140: RD sqrtl(0x1.ffffffffffffap-1) want 0x1.ffffffffffffcp-1 got 0x1.ffffffffffffdp-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:141: bad fp exception: RD sqrtl(0x1.ffffffffffffbp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:142: bad fp exception: RD sqrtl(0x1.ffffffffffffcp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:142: RD sqrtl(0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp-1 got 0x1.ffffffffffffep-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:143: bad fp exception: RD sqrtl(0x1.ffffffffffffdp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:144: bad fp exception: RD sqrtl(0x1.ffffffffffffep-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:144: RD sqrtl(0x1.ffffffffffffep-1) want 0x1.ffffffffffffep-1 got 0x1.fffffffffffffp-1 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:145: bad fp exception: RD sqrtl(0x1.0000000000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:145: RD sqrtl(0x1.0000000000002p+0) want 0x1p+0 got 0x1.0000000000001p+0 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:146: bad fp exception: RD sqrtl(0x1.0000000000003p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:147: bad fp exception: RD sqrtl(0x1.0000000000004p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:147: RD sqrtl(0x1.0000000000004p+0) want 0x1.0000000000001p+0 got 0x1.0000000000002p+0 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:148: bad fp exception: RD sqrtl(0x1.0000000000005p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:149: bad fp exception: RD sqrtl(0x1.0000000000006p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:149: RD sqrtl(0x1.0000000000006p+0) want 0x1.0000000000002p+0 got 0x1.0000000000003p+0 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:150: bad fp exception: RD sqrtl(0x1.0000000000007p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:151: bad fp exception: RD sqrtl(0x1.ffffffffffffep+1021)=0x1.ffffffffffffep+510, want INEXACT got 0
src/math/ucb/sqrt.h:151: RD sqrtl(0x1.ffffffffffffep+1021) want 0x1.ffffffffffffep+510 got 0x1.fffffffffffffp+510 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:152: bad fp exception: RD sqrtl(0x1.0000000000002p+1022)=0x1p+511, want INEXACT got 0
src/math/ucb/sqrt.h:152: RD sqrtl(0x1.0000000000002p+1022) want 0x1p+511 got 0x1.0000000000001p+511 ulperr -0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:206: bad fp exception: RN sqrtl(0x1.ffffffffffffep-1023)=0x1.fffffffffffffp-512, want INEXACT got 0
src/math/ucb/sqrt.h:207: bad fp exception: RN sqrtl(0x1.0000000000002p-1022)=0x1.0000000000001p-511, want INEXACT got 0
src/math/ucb/sqrt.h:208: bad fp exception: RN sqrtl(0x1.ffffffffffff7p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:209: bad fp exception: RN sqrtl(0x1.ffffffffffff8p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:210: bad fp exception: RN sqrtl(0x1.ffffffffffff9p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:211: bad fp exception: RN sqrtl(0x1.ffffffffffffap-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:212: bad fp exception: RN sqrtl(0x1.ffffffffffffbp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:213: bad fp exception: RN sqrtl(0x1.ffffffffffffcp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:214: bad fp exception: RN sqrtl(0x1.ffffffffffffdp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:215: bad fp exception: RN sqrtl(0x1.ffffffffffffep-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:216: bad fp exception: RN sqrtl(0x1.0000000000002p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:217: bad fp exception: RN sqrtl(0x1.0000000000003p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:218: bad fp exception: RN sqrtl(0x1.0000000000004p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:219: bad fp exception: RN sqrtl(0x1.0000000000005p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:220: bad fp exception: RN sqrtl(0x1.0000000000006p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:221: bad fp exception: RN sqrtl(0x1.0000000000007p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:222: bad fp exception: RN sqrtl(0x1.ffffffffffffep+1021)=0x1.fffffffffffffp+510, want INEXACT got 0
src/math/ucb/sqrt.h:223: bad fp exception: RN sqrtl(0x1.0000000000002p+1022)=0x1.0000000000001p+511, want INEXACT got 0
src/math/ucb/sqrt.h:273: bad fp exception: RU sqrtl(0x1.ffffffffffffep-1023)=0x1.fffffffffffffp-512, want INEXACT got 0
src/math/ucb/sqrt.h:274: bad fp exception: RU sqrtl(0x1.0000000000002p-1022)=0x1.0000000000001p-511, want INEXACT got 0
src/math/ucb/sqrt.h:275: bad fp exception: RU sqrtl(0x1.ffffffffffff7p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:275: RU sqrtl(0x1.ffffffffffff7p-1) want 0x1.ffffffffffffcp-1 got 0x1.ffffffffffffbp-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:276: bad fp exception: RU sqrtl(0x1.ffffffffffff8p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:277: bad fp exception: RU sqrtl(0x1.ffffffffffff9p-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:277: RU sqrtl(0x1.ffffffffffff9p-1) want 0x1.ffffffffffffdp-1 got 0x1.ffffffffffffcp-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:278: bad fp exception: RU sqrtl(0x1.ffffffffffffap-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:279: bad fp exception: RU sqrtl(0x1.ffffffffffffbp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:279: RU sqrtl(0x1.ffffffffffffbp-1) want 0x1.ffffffffffffep-1 got 0x1.ffffffffffffdp-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:280: bad fp exception: RU sqrtl(0x1.ffffffffffffcp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:281: bad fp exception: RU sqrtl(0x1.ffffffffffffdp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:281: RU sqrtl(0x1.ffffffffffffdp-1) want 0x1.fffffffffffffp-1 got 0x1.ffffffffffffep-1 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:282: bad fp exception: RU sqrtl(0x1.ffffffffffffep-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/ucb/sqrt.h:283: bad fp exception: RU sqrtl(0x1.0000000000002p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:284: bad fp exception: RU sqrtl(0x1.0000000000003p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:284: RU sqrtl(0x1.0000000000003p+0) want 0x1.0000000000002p+0 got 0x1.0000000000001p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:285: bad fp exception: RU sqrtl(0x1.0000000000004p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:286: bad fp exception: RU sqrtl(0x1.0000000000005p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:286: RU sqrtl(0x1.0000000000005p+0) want 0x1.0000000000003p+0 got 0x1.0000000000002p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:287: bad fp exception: RU sqrtl(0x1.0000000000006p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:288: bad fp exception: RU sqrtl(0x1.0000000000007p+0)=0x1.0000000000004p+0, want INEXACT got 0
src/math/ucb/sqrt.h:288: RU sqrtl(0x1.0000000000007p+0) want 0x1.0000000000004p+0 got 0x1.0000000000003p+0 ulperr -0.500 = -0x1p+0 + 0x1p-1
src/math/ucb/sqrt.h:289: bad fp exception: RU sqrtl(0x1.ffffffffffffep+1021)=0x1.fffffffffffffp+510, want INEXACT got 0
src/math/ucb/sqrt.h:290: bad fp exception: RU sqrtl(0x1.0000000000002p+1022)=0x1.0000000000001p+511, want INEXACT got 0
src/math/ucb/sqrt.h:344: bad fp exception: RZ sqrtl(0x1.ffffffffffffep-1023)=0x1.ffffffffffffep-512, want INEXACT got 0
src/math/ucb/sqrt.h:344: RZ sqrtl(0x1.ffffffffffffep-1023) want 0x1.ffffffffffffep-512 got 0x1.fffffffffffffp-512 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:345: bad fp exception: RZ sqrtl(0x1.0000000000002p-1022)=0x1p-511, want INEXACT got 0
src/math/ucb/sqrt.h:345: RZ sqrtl(0x1.0000000000002p-1022) want 0x1p-511 got 0x1.0000000000001p-511 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:346: bad fp exception: RZ sqrtl(0x1.ffffffffffff7p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:347: bad fp exception: RZ sqrtl(0x1.ffffffffffff8p-1)=0x1.ffffffffffffbp-1, want INEXACT got 0
src/math/ucb/sqrt.h:347: RZ sqrtl(0x1.ffffffffffff8p-1) want 0x1.ffffffffffffbp-1 got 0x1.ffffffffffffcp-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:348: bad fp exception: RZ sqrtl(0x1.ffffffffffff9p-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:349: bad fp exception: RZ sqrtl(0x1.ffffffffffffap-1)=0x1.ffffffffffffcp-1, want INEXACT got 0
src/math/ucb/sqrt.h:349: RZ sqrtl(0x1.ffffffffffffap-1) want 0x1.ffffffffffffcp-1 got 0x1.ffffffffffffdp-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:350: bad fp exception: RZ sqrtl(0x1.ffffffffffffbp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:351: bad fp exception: RZ sqrtl(0x1.ffffffffffffcp-1)=0x1.ffffffffffffdp-1, want INEXACT got 0
src/math/ucb/sqrt.h:351: RZ sqrtl(0x1.ffffffffffffcp-1) want 0x1.ffffffffffffdp-1 got 0x1.ffffffffffffep-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:352: bad fp exception: RZ sqrtl(0x1.ffffffffffffdp-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:353: bad fp exception: RZ sqrtl(0x1.ffffffffffffep-1)=0x1.ffffffffffffep-1, want INEXACT got 0
src/math/ucb/sqrt.h:353: RZ sqrtl(0x1.ffffffffffffep-1) want 0x1.ffffffffffffep-1 got 0x1.fffffffffffffp-1 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:354: bad fp exception: RZ sqrtl(0x1.0000000000002p+0)=0x1p+0, want INEXACT got 0
src/math/ucb/sqrt.h:354: RZ sqrtl(0x1.0000000000002p+0) want 0x1p+0 got 0x1.0000000000001p+0 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:355: bad fp exception: RZ sqrtl(0x1.0000000000003p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:356: bad fp exception: RZ sqrtl(0x1.0000000000004p+0)=0x1.0000000000001p+0, want INEXACT got 0
src/math/ucb/sqrt.h:356: RZ sqrtl(0x1.0000000000004p+0) want 0x1.0000000000001p+0 got 0x1.0000000000002p+0 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:357: bad fp exception: RZ sqrtl(0x1.0000000000005p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:358: bad fp exception: RZ sqrtl(0x1.0000000000006p+0)=0x1.0000000000002p+0, want INEXACT got 0
src/math/ucb/sqrt.h:358: RZ sqrtl(0x1.0000000000006p+0) want 0x1.0000000000002p+0 got 0x1.0000000000003p+0 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:359: bad fp exception: RZ sqrtl(0x1.0000000000007p+0)=0x1.0000000000003p+0, want INEXACT got 0
src/math/ucb/sqrt.h:360: bad fp exception: RZ sqrtl(0x1.ffffffffffffep+1021)=0x1.ffffffffffffep+510, want INEXACT got 0
src/math/ucb/sqrt.h:360: RZ sqrtl(0x1.ffffffffffffep+1021) want 0x1.ffffffffffffep+510 got 0x1.fffffffffffffp+510 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/ucb/sqrt.h:361: bad fp exception: RZ sqrtl(0x1.0000000000002p+1022)=0x1p+511, want INEXACT got 0
src/math/ucb/sqrt.h:361: RZ sqrtl(0x1.0000000000002p+1022) want 0x1p+511 got 0x1.0000000000001p+511 ulperr 0.000 = 0x1p+0 + -0x1p+0
src/math/sanity/sqrt.h:2: bad fp exception: RN sqrtl(0x1.161868e18bc67p+2)=0x1.0ad1adc856f29p+1, want INEXACT got 0
src/math/sanity/sqrt.h:5: bad fp exception: RN sqrtl(0x1.288bbb0d6a1e6p+3)=0x1.85a7d346e8c13p+1, want INEXACT got 0
src/math/sanity/sqrt.h:6: bad fp exception: RN sqrtl(0x1.52efd0cd80497p-1)=0x1.a0937a0b92ccbp-1, want INEXACT got 0
src/math/sanity/sqrt.h:8: bad fp exception: RN sqrtl(0x1.1f9ef934745cbp-1)=0x1.7fbf4b5a076bcp-1, want INEXACT got 0
src/math/sanity/sqrt.h:9: bad fp exception: RN sqrtl(0x1.8c5db097f7442p-1)=0x1.c27ce94ff39c5p-1, want INEXACT got 0
src/math/special/sqrt.h:9: bad fp exception: RN sqrtl(0x1p-1073)=0x1.6a09e667f3bcdp-537, want INEXACT got 0
src/math/special/sqrt.h:10: bad fp exception: RN sqrtl(0x1.8p-1073)=0x1.bb67ae8584caap-537, want INEXACT got 0
src/math/special/sqrt.h:13: bad fp exception: RN sqrtl(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/special/sqrt.h:14: bad fp exception: RN sqrtl(0x1.fffffffffffffp+0)=0x1.6a09e667f3bccp+0, want INEXACT got 0
src/math/special/sqrt.h:15: bad fp exception: RN sqrtl(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/special/sqrt.h:16: bad fp exception: RN sqrtl(0x1.0000000000001p+1)=0x1.6a09e667f3bcdp+0, want INEXACT got 0
src/math/special/sqrt.h:17: bad fp exception: RN sqrtl(0x1.0000000000001p+0)=0x1p+0, want INEXACT got 0
src/math/special/sqrt.h:18: bad fp exception: RN sqrtl(0x1.fffffffffffffp-1)=0x1.fffffffffffffp-1, want INEXACT got 0
src/math/special/sqrt.h:20: bad fp exception: RN sqrtl(0x1.fffffffffffffp+1023)=0x1.fffffffffffffp+511, want INEXACT got 0
src/math/special/sqrt.h:21: bad fp exception: RN sqrtl(0x1.ffffffffffffbp+1023)=0x1.ffffffffffffdp+511, want INEXACT got 0
src/math/special/sqrt.h:22: bad fp exception: RN sqrtl(0x1.ffffffffffff7p+1023)=0x1.ffffffffffffbp+511, want INEXACT got 0
src/math/special/sqrt.h:23: bad fp exception: RN sqrtl(0x1.ffffffffffff3p+1023)=0x1.ffffffffffff9p+511, want INEXACT got 0
src/math/special/sqrt.h:24: bad fp exception: RN sqrtl(0x1.fffffffffffefp+1023)=0x1.ffffffffffff7p+511, want INEXACT got 0
src/math/special/sqrt.h:25: bad fp exception: RN sqrtl(0x1.fffffffffffebp+1023)=0x1.ffffffffffff5p+511, want INEXACT got 0
src/math/special/sqrt.h:26: bad fp exception: RN sqrtl(0x1.fffffffffffe7p+1023)=0x1.ffffffffffff3p+511, want INEXACT got 0
src/math/special/sqrt.h:27: bad fp exception: RN sqrtl(0x1.fffffffffffe3p+1023)=0x1.ffffffffffff1p+511, want INEXACT got 0
src/math/special/sqrt.h:28: bad fp exception: RN sqrtl(0x1.fffffffffffdfp+1023)=0x1.fffffffffffefp+511, want INEXACT got 0
src/math/special/sqrt.h:29: bad fp exception: RN sqrtl(0x1.fffffffffffdbp+1023)=0x1.fffffffffffedp+511, want INEXACT got 0
src/math/special/sqrt.h:30: bad fp exception: RN sqrtl(0x1.fffffffffffd7p+1023)=0x1.fffffffffffebp+511, want INEXACT got 0
src/math/special/sqrt.h:31: bad fp exception: RN sqrtl(0x1.0000000000003p-1022)=0x1.0000000000001p-511, want INEXACT got 0
src/math/special/sqrt.h:32: bad fp exception: RN sqrtl(0x1.0000000000007p-1022)=0x1.0000000000003p-511, want INEXACT got 0
src/math/special/sqrt.h:33: bad fp exception: RN sqrtl(0x1.000000000000bp-1022)=0x1.0000000000005p-511, want INEXACT got 0
src/math/special/sqrt.h:34: bad fp exception: RN sqrtl(0x1.000000000000fp-1022)=0x1.0000000000007p-511, want INEXACT got 0
src/math/special/sqrt.h:35: bad fp exception: RN sqrtl(0x1.0000000000013p-1022)=0x1.0000000000009p-511, want INEXACT got 0
src/math/special/sqrt.h:36: bad fp exception: RN sqrtl(0x1.0000000000017p-1022)=0x1.000000000000bp-511, want INEXACT got 0
src/math/special/sqrt.h:37: bad fp exception: RN sqrtl(0x1.000000000001bp-1022)=0x1.000000000000dp-511, want INEXACT got 0
src/math/special/sqrt.h:38: bad fp exception: RN sqrtl(0x1.000000000001fp-1022)=0x1.000000000000fp-511, want INEXACT got 0
src/math/special/sqrt.h:39: bad fp exception: RN sqrtl(0x1.0000000000023p-1022)=0x1.0000000000011p-511, want INEXACT got 0
src/math/special/sqrt.h:40: bad fp exception: RN sqrtl(0x1.0000000000027p-1022)=0x1.0000000000013p-511, want INEXACT got 0
src/math/special/sqrt.h:41: bad fp exception: RN sqrtl(0x1.000000000002bp-1022)=0x1.0000000000015p-511, want INEXACT got 0
src/math/special/sqrt.h:42: bad fp exception: RN sqrtl(0x1.000000000002fp-1022)=0x1.0000000000017p-511, want INEXACT got 0
src/math/special/sqrt.h:43: bad fp exception: RN sqrtl(0x1.0000000000033p-1022)=0x1.0000000000019p-511, want INEXACT got 0
src/math/special/sqrt.h:44: bad fp exception: RN sqrtl(0x1.0000000000037p-1022)=0x1.000000000001bp-511, want INEXACT got 0
src/math/special/sqrt.h:45: bad fp exception: RN sqrtl(0x1.7167bc36eaa3bp+6)=0x1.3384c7db650cdp+3, want INEXACT got 0
src/math/special/sqrt.h:46: bad fp exception: RN sqrtl(0x1.7570994273ad7p+6)=0x1.353186e89b8ffp+3, want INEXACT got 0
src/math/special/sqrt.h:47: bad fp exception: RN sqrtl(0x1.7dae969442fe6p+6)=0x1.389640fb18b75p+3, want INEXACT got 0
src/math/special/sqrt.h:48: bad fp exception: RN sqrtl(0x1.7f8444fcf67e5p+6)=0x1.395659e94669fp+3, want INEXACT got 0
src/math/special/sqrt.h:49: bad fp exception: RN sqrtl(0x1.8364650e63a54p+6)=0x1.3aea9efe1a3d7p+3, want INEXACT got 0
src/math/special/sqrt.h:50: bad fp exception: RN sqrtl(0x1.85bedd274edd8p+6)=0x1.3bdf20c867057p+3, want INEXACT got 0
src/math/special/sqrt.h:51: bad fp exception: RN sqrtl(0x1.8609cf496ab77p+6)=0x1.3bfd7e14b5eabp+3, want INEXACT got 0
src/math/special/sqrt.h:52: bad fp exception: RN sqrtl(0x1.873849c70a375p+6)=0x1.3c77ed341d27fp+3, want INEXACT got 0
src/math/special/sqrt.h:53: bad fp exception: RN sqrtl(0x1.8919c962cbaaep+6)=0x1.3d3a7113ee82fp+3, want INEXACT got 0
src/math/special/sqrt.h:54: bad fp exception: RN sqrtl(0x1.8de4493e22dc6p+6)=0x1.3f27d448220c3p+3, want INEXACT got 0
src/math/special/sqrt.h:55: bad fp exception: RN sqrtl(0x1.924829a17a288p+6)=0x1.40e9552eec28fp+3, want INEXACT got 0
src/math/special/sqrt.h:56: bad fp exception: RN sqrtl(0x1.92702cd992f12p+6)=0x1.40f94a6fdfddfp+3, want INEXACT got 0
src/math/special/sqrt.h:57: bad fp exception: RN sqrtl(0x1.92b763a8311fdp+6)=0x1.4115af614695fp+3, want INEXACT got 0
src/math/special/sqrt.h:58: bad fp exception: RN sqrtl(0x1.947da013c7293p+6)=0x1.41ca91102940fp+3, want INEXACT got 0
src/math/special/sqrt.h:59: bad fp exception: RN sqrtl(0x1.9536091c494d2p+6)=0x1.4213e334c77adp+3, want INEXACT got 0
src/math/special/sqrt.h:60: bad fp exception: RN sqrtl(0x1.61b04c6p-1019)=0x1.a98b88f18b46dp-510, want INEXACT got 0
src/math/special/sqrt.h:61: bad fp exception: RN sqrtl(0x1.93789f1p-1018)=0x1.4162ae43d5821p-509, want INEXACT got 0
src/math/special/sqrt.h:62: bad fp exception: RN sqrtl(0x1.a1989b4p-1018)=0x1.46f6736eb44bbp-509, want INEXACT got 0
src/math/special/sqrt.h:63: bad fp exception: RN sqrtl(0x1.f93bc9p-1018)=0x1.67a36ec403bafp-509, want INEXACT got 0
src/math/special/sqrt.h:64: bad fp exception: RN sqrtl(0x1.2f675e3p-1017)=0x1.8a22ab6dcfee1p-509, want INEXACT got 0
src/math/special/sqrt.h:65: bad fp exception: RN sqrtl(0x1.a158508p-1017)=0x1.ce418a96cf589p-509, want INEXACT got 0
src/math/special/sqrt.h:66: bad fp exception: RN sqrtl(0x1.cd31f078p-1017)=0x1.e5ef1c65dccebp-509, want INEXACT got 0
src/math/special/sqrt.h:67: bad fp exception: RN sqrtl(0x1.33b43b08p-1016)=0x1.18a9f607e1701p-508, want INEXACT got 0
src/math/special/sqrt.h:68: bad fp exception: RN sqrtl(0x1.6e66a858p-1016)=0x1.324402a00b45fp-508, want INEXACT got 0
src/math/special/sqrt.h:69: bad fp exception: RN sqrtl(0x1.8661cbf8p-1016)=0x1.3c212046bfdffp-508, want INEXACT got 0
src/math/special/sqrt.h:70: bad fp exception: RN sqrtl(0x1.bbb221b4p-1016)=0x1.510681b939931p-508, want INEXACT got 0
src/math/special/sqrt.h:71: bad fp exception: RN sqrtl(0x1.c4942f3cp-1016)=0x1.5461e59227ab5p-508, want INEXACT got 0
src/math/special/sqrt.h:72: bad fp exception: RN sqrtl(0x1.dbb258c8p-1016)=0x1.5cf7b0f78d3afp-508, want INEXACT got 0
src/math/special/sqrt.h:73: bad fp exception: RN sqrtl(0x1.57103ea4p-1015)=0x1.a31ab946d340bp-508, want INEXACT got 0
src/math/special/sqrt.h:74: bad fp exception: RN sqrtl(0x1.9b294f88p-1015)=0x1.cad197e28e85bp-508, want INEXACT got 0
src/math/special/sqrt.h:75: bad fp exception: RN sqrtl(0x1.5b95344972fe2p+105)=0x1.a5db1ce4c605bp+52, want INEXACT got 0
src/math/special/sqrt.h:76: bad fp exception: RN sqrtl(0x1.d407bb3641da5p+104)=0x1.5a24e31b39fa6p+52, want INEXACT got 0
src/math/special/sqrt.h:77: bad fp exception: RN sqrtl(0x1.4eb5f85e783a9p+105)=0x1.9df88f9ecb617p+52, want INEXACT got 0
src/math/special/sqrt.h:78: bad fp exception: RN sqrtl(0x1.e99893042c2cbp+104)=0x1.62077061349eap+52, want INEXACT got 0
src/math/special/sqrt.h:79: bad fp exception: RN sqrtl(0x1.8444088dbdcb5p+105)=0x1.bddc6d1af94e5p+52, want INEXACT got 0
src/math/special/sqrt.h:80: bad fp exception: RN sqrtl(0x1.955d8279a3c0fp+104)=0x1.422392e506b1cp+52, want INEXACT got 0
src/math/special/sqrt.h:81: bad fp exception: RN sqrtl(0x1.92e58e3597929p+105)=0x1.c62f1afef218bp+52, want INEXACT got 0
src/math/special/sqrt.h:82: bad fp exception: RN sqrtl(0x1.80b07a7182913p+104)=0x1.39d0e5010de76p+52, want INEXACT got 0
src/math/special/sqrt.h:83: bad fp exception: RN sqrtl(0x1.e63a86a12a838p+105)=0x1.f2f2ac85941a9p+52, want INEXACT got 0
src/math/special/sqrt.h:84: bad fp exception: RN sqrtl(0x1.1ac50220dc67dp+104)=0x1.0d0d537a6be58p+52, want INEXACT got 0
src/math/special/sqrt.h:85: bad fp exception: RN sqrtl(0x1.004c704e61a6bp+105)=0x1.6a3fef4175ea2p+52, want INEXACT got 0
src/math/special/sqrt.h:86: bad fp exception: RN sqrtl(0x1.d2221598a924ap+105)=0x1.e88750b32d14dp+52, want INEXACT got 0
src/math/special/sqrt.h:87: bad fp exception: RN sqrtl(0x1.311846fe43cc9p+104)=0x1.1778af4cd2eb4p+52, want INEXACT got 0
src/math/special/sqrt.h:88: bad fp exception: RN sqrtl(0x1.0f4057e306261p+105)=0x1.74aabff5dcd77p+52, want INEXACT got 0
src/math/special/sqrt.h:89: bad fp exception: RN sqrtl(0x1.54b152148723p+105)=0x1.a1a75b170c36ep+52, want INEXACT got 0
src/math/special/sqrt.h:90: bad fp exception: RN sqrtl(0x1.df76819ec4fcfp+104)=0x1.5e58a4e8f3c93p+52, want INEXACT got 0
src/math/special/sqrt.h:91: bad fp exception: RN sqrtl(0x1.8cc6767d8db65p+105)=0x1.c2b86f8821e3cp+52, want INEXACT got 0
src/math/special/sqrt.h:92: bad fp exception: RN sqrtl(0x1.893a4fca50165p+104)=0x1.3d479077de1c5p+52, want INEXACT got 0
src/math/special/sqrt.h:93: bad fp exception: RN sqrtl(0x1.2e22e3ec9f181p+105)=0x1.894fb184f34f2p+52, want INEXACT got 0
src/math/special/sqrt.h:94: bad fp exception: RN sqrtl(0x1.c4d4dd56d8601p+105)=0x1.e181fcfc796d1p+52, want INEXACT got 0
src/math/special/sqrt.h:95: bad fp exception: RN sqrtl(0x1.409dccc2d831fp+104)=0x1.1e7e03038693p+52, want INEXACT got 0
src/math/special/sqrt.h:96: bad fp exception: RN sqrtl(0x1.e915af26394a2p+105)=0x1.f469445af52ccp+52, want INEXACT got 0
src/math/special/sqrt.h:97: bad fp exception: RN sqrtl(0x1.17b3c42ab387fp+104)=0x1.0b96bba50ad35p+52, want INEXACT got 0
src/math/special/sqrt.h:98: bad fp exception: RN sqrtl(0x1.408e1bfb27b24p+105)=0x1.951f5a6dc2542p+52, want INEXACT got 0
src/math/special/sqrt.h:99: bad fp exception: RN sqrtl(0x1.e10511b03937ap+105)=0x1.f044a989ca91bp+52, want INEXACT got 0
src/math/special/sqrt.h:100: bad fp exception: RN sqrtl(0x1.206e2a25b3055p+104)=0x1.0fbb5676356e6p+52, want INEXACT got 0
src/math/special/sqrt.h:101: bad fp exception: RN sqrtl(0x1.122d8405a6886p+105)=0x1.76ac0187f47d4p+52, want INEXACT got 0
src/math/special/sqrt.h:102: bad fp exception: RN sqrtl(0x1.e34fa523c7406p+105)=0x1.f172e3572032ap+52, want INEXACT got 0
src/math/special/sqrt.h:103: bad fp exception: RN sqrtl(0x1.1dedf63ccd513p+104)=0x1.0e8d1ca8dfcd7p+52, want INEXACT got 0
src/math/special/sqrt.h:104: bad fp exception: RN sqrtl(0x1.3b94b3f5399c5p+105)=0x1.91f78829a106fp+52, want INEXACT got 0
src/math/special/sqrt.h:105: bad fp exception: RN sqrtl(0x1.26f7a31fd7d81p+105)=0x1.849dfc49fc24bp+52, want INEXACT got 0
src/math/special/sqrt.h:106: bad fp exception: RN sqrtl(0x1.1af23bc3c2ecap+105)=0x1.7c9dabee35f64p+52, want INEXACT got 0
src/math/special/sqrt.h:107: bad fp exception: RN sqrtl(0x1.2da51b80dd183p+105)=0x1.88fdca416a27ap+52, want INEXACT got 0
src/math/special/sqrt.h:108: bad fp exception: RN sqrtl(0x1.5834bb88d555p+105)=0x1.a3cd3c09ea385p+52, want INEXACT got 0
src/math/special/sqrt.h:109: bad fp exception: RN sqrtl(0x1.d99a0ed62d585p+104)=0x1.5c32c3f615c7cp+52, want INEXACT got 0
src/math/special/sqrt.h:110: bad fp exception: RN sqrtl(0x1.b3f8fa06a2ccbp+105)=0x1.d875a00071232p+52, want INEXACT got 0
src/math/special/sqrt.h:111: bad fp exception: RN sqrtl(0x1.5530340a9ec6dp+104)=0x1.278a5fff8edcfp+52, want INEXACT got 0
src/math/special/sqrt.h:112: bad fp exception: RN sqrtl(0x1.0e56ba9f7aed7p+105)=0x1.740a22b30117p+52, want INEXACT got 0
src/math/special/sqrt.h:113: bad fp exception: RN sqrtl(0x1.7113604516542p+105)=0x1.b2b3fbdef6484p+52, want INEXACT got 0
src/math/special/sqrt.h:114: bad fp exception: RN sqrtl(0x1.b1eed95066f6fp+104)=0x1.4d4c042109b7dp+52, want INEXACT got 0
src/math/special/sqrt.h:115: bad fp exception: RN sqrtl(0x1.6bf5355c8c95ap+105)=0x1.afadb8f8bf0e7p+52, want INEXACT got 0
src/math/special/sqrt.h:116: bad fp exception: RN sqrtl(0x1.b9d814e49ed4dp+104)=0x1.5052470740f1ap+52, want INEXACT got 0
src/math/special/sqrt.h:117: bad fp exception: RN sqrtl(0x1.43f8e1433f3c7p+105)=0x1.9746a985244b8p+52, want INEXACT got 0
src/math/special/sqrt.h:118: bad fp exception: RN sqrtl(0x1.fc49c967a4b41p+104)=0x1.68b9567adbb49p+52, want INEXACT got 0
src/math/special/sqrt.h:119: bad fp exception: RN sqrtl(0x1.a466de7840cedp+105)=0x1.cff2224245983p+52, want INEXACT got 0
src/math/special/sqrt.h:120: bad fp exception: RN sqrtl(0x1.6920ef62e00cbp+104)=0x1.300dddbdba67ep+52, want INEXACT got 0
src/math/special/sqrt.h:121: bad fp exception: RN sqrtl(0x1.4cc05fcb09836p+105)=0x1.9cc1eb16ea6f5p+52, want INEXACT got 0
src/math/special/sqrt.h:122: bad fp exception: RN sqrtl(0x1.ecf53d0c946b1p+104)=0x1.633e14e91590cp+52, want INEXACT got 0
src/math/special/sqrt.h:123: bad fp exception: RN sqrtl(0x1.e582e3d428926p+105)=0x1.f2946b565ea82p+52, want INEXACT got 0
src/math/special/sqrt.h:124: bad fp exception: RN sqrtl(0x1.1b8b43a219343p+104)=0x1.0d6b94a9a157fp+52, want INEXACT got 0
src/math/special/sqrt.h:125: bad fp exception: RN sqrtl(0x1.106ce24747471p+105)=0x1.7578fafbfbf81p+52, want INEXACT got 0
src/math/special/sqrt.h:126: bad fp exception: RN sqrtl(0x1.b2a13cbfcfb81p+105)=0x1.d7bb3a4fbae26p+52, want INEXACT got 0
src/math/special/sqrt.h:127: bad fp exception: RN sqrtl(0x1.56df1ba13e221p+104)=0x1.2844c5b0451dbp+52, want INEXACT got 0
src/math/special/sqrt.h:128: bad fp exception: RN sqrtl(0x1.e82e1ff49a7cfp+105)=0x1.f3f2c0504d214p+52, want INEXACT got 0
src/math/special/sqrt.h:129: bad fp exception: RN sqrtl(0x1.18abbe0766329p+104)=0x1.0c0d3fafb2dedp+52, want INEXACT got 0
src/math/special/sqrt.h:130: bad fp exception: RN sqrtl(0x1.867111aa6ea58p+105)=0x1.bf1bcffb3a397p+52, want INEXACT got 0
src/math/special/sqrt.h:131: bad fp exception: RN sqrtl(0x1.923b43717ff29p+104)=0x1.40e43004c5c6ap+52, want INEXACT got 0
src/math/special/sqrt.h:132: bad fp exception: RN sqrtl(0x1.4397d6aceee18p+105)=0x1.9709a5bc51865p+52, want INEXACT got 0
src/math/special/sqrt.h:133: bad fp exception: RN sqrtl(0x1.fcf5caeff49d5p+104)=0x1.68f65a43ae79cp+52, want INEXACT got 0
src/math/special/sqrt.h:134: bad fp exception: RN sqrtl(0x1.d539343604b1cp+105)=0x1.ea2531e60719p+52, want INEXACT got 0
src/math/special/sqrt.h:135: bad fp exception: RN sqrtl(0x1.2d933d07decdbp+104)=0x1.15dace19f8e71p+52, want INEXACT got 0
src/math/special/sqrt.h:136: bad fp exception: RN sqrtl(0x1.0ceb7a037208dp+105)=0x1.730fda68bc30bp+52, want INEXACT got 0
src/math/special/sqrt.h:137: bad fp exception: RN sqrtl(0x1.1080513139899p+105)=0x1.75864cd829c47p+52, want INEXACT got 0
src/math/special/sqrt.h:138: bad fp exception: RN sqrtl(0x1.c9de43a39a0a8p+105)=0x1.e42d9e73dd6d8p+52, want INEXACT got 0
src/math/special/sqrt.h:139: bad fp exception: RN sqrtl(0x1.3aaad09003843p+104)=0x1.1bd2618c22929p+52, want INEXACT got 0
src/math/special/sqrt.h:140: bad fp exception: RN sqrtl(0x1.b3ec881cb96fdp+105)=0x1.d86ee1ae4c82cp+52, want INEXACT got 0
src/math/special/sqrt.h:141: bad fp exception: RN sqrtl(0x1.553fc623a7cf5p+104)=0x1.27911e51b37d5p+52, want INEXACT got 0
src/math/special/sqrt.h:142: bad fp exception: RN sqrtl(0x1.4ff5bc007e6c9p+105)=0x1.9ebe1e8cdea3bp+52, want INEXACT got 0
src/math/special/sqrt.h:143: bad fp exception: RN sqrtl(0x1.e776c0b3c5033p+104)=0x1.6141e173215c6p+52, want INEXACT got 0
src/math/special/sqrt.h:144: bad fp exception: RN sqrtl(0x1.cd2a19fffb1cep+105)=0x1.e5eafb54dbabcp+52, want INEXACT got 0
src/math/special/sqrt.h:145: bad fp exception: RN sqrtl(0x1.36d25002d0337p+104)=0x1.1a1504ab24545p+52, want INEXACT got 0
src/math/special/sqrt.h:146: bad fp exception: RN sqrtl(0x1.1066b4e45e49p+105)=0x1.7574befc42651p+52, want INEXACT got 0
src/math/special/sqrt.h:147: bad fp exception: RN sqrtl(0x1.ab2da631d3a34p+105)=0x1.d3ab89fd4393dp+52, want INEXACT got 0
src/math/special/sqrt.h:148: bad fp exception: RN sqrtl(0x1.6056107411cfdp+104)=0x1.2c547602bc6c4p+52, want INEXACT got 0
src/math/special/sqrt.h:149: bad fp exception: RN sqrtl(0x1.3999aa6650897p+105)=0x1.90b41b8c1f0f8p+52, want INEXACT got 0
src/math/special/sqrt.h:150: bad fp exception: RN sqrtl(0x1.1517f1291b7f8p+105)=0x1.78a8a9f0969bep+52, want INEXACT got 0
src/math/special/sqrt.h:151: bad fp exception: RN sqrtl(0x1.1afedabae41bfp+105)=0x1.7ca628f6c7f4cp+52, want INEXACT got 0
src/math/special/sqrt.h:152: bad fp exception: RN sqrtl(0x1.050a544bf6295p+105)=0x1.6d95da6eca566p+52, want INEXACT got 0
src/math/special/sqrt.h:153: bad fp exception: RN sqrtl(0x1.e086dfcb31497p+105)=0x1.f0038c4497c54p+52, want INEXACT got 0
src/math/special/sqrt.h:154: bad fp exception: RN sqrtl(0x1.20f875fad3f39p+104)=0x1.0ffc73bb683adp+52, want INEXACT got 0
src/math/special/sqrt.h:155: bad fp exception: RN sqrtl(0x1.481169fc8aefap+105)=0x1.99d7aa56daa57p+52, want INEXACT got 0
src/math/special/sqrt.h:156: bad fp exception: RN sqrtl(0x1.f514d5eff5fedp+104)=0x1.662855a9255aap+52, want INEXACT got 0
src/math/special/sqrt.h:157: bad fp exception: RN sqrtl(0x1.d1b4372a774b2p+105)=0x1.e84dba6bdeef9p+52, want INEXACT got 0
src/math/special/sqrt.h:158: bad fp exception: RN sqrtl(0x1.31960fcdb4f91p+104)=0x1.17b2459421108p+52, want INEXACT got 0
src/math/special/sqrt.h:159: bad fp exception: RN sqrtl(0x1.efe37bcdd7621p+105)=0x1.f7e14202b15efp+52, want INEXACT got 0
src/math/special/sqrt.h:160: bad fp exception: RN sqrtl(0x1.107f6b8b868abp+104)=0x1.081ebdfd4ea12p+52, want INEXACT got 0
src/math/special/sqrt.h:161: bad fp exception: RN sqrtl(0x1.e625b487e7145p+105)=0x1.f2e7fda4849dp+52, want INEXACT got 0
src/math/special/sqrt.h:162: bad fp exception: RN sqrtl(0x1.1adb7734b27adp+104)=0x1.0d18025b7b631p+52, want INEXACT got 0
src/math/special/sqrt.h:163: bad fp exception: RN sqrtl(0x1.e6d250d4590b8p+105)=0x1.f34087cbcdc36p+52, want INEXACT got 0
src/math/special/sqrt.h:164: bad fp exception: RN sqrtl(0x1.1a2172e1df82fp+104)=0x1.0cbf7834323cbp+52, want INEXACT got 0
src/math/special/sqrt.h:165: bad fp exception: RN sqrtl(0x1.c138e21d2d40cp+105)=0x1.df95c22b7dc1dp+52, want INEXACT got 0
src/math/special/sqrt.h:166: bad fp exception: RN sqrtl(0x1.44ef373567f6dp+104)=0x1.206a3dd4823e4p+52, want INEXACT got 0
src/math/special/sqrt.h:167: bad fp exception: RN sqrtl(0x1.b4aea5678d612p+105)=0x1.d8d80590bc4fap+52, want INEXACT got 0
src/math/special/sqrt.h:168: bad fp exception: RN sqrtl(0x1.544d296ab0e4bp+104)=0x1.2727fa6f43b07p+52, want INEXACT got 0
src/math/special/sqrt.h:169: bad fp exception: RN sqrtl(0x1.db4670ed5c584p+105)=0x1.ed4bc29449318p+52, want INEXACT got 0
src/math/special/sqrt.h:170: bad fp exception: RN sqrtl(0x1.26c652610187bp+104)=0x1.12b43d6bb6ce9p+52, want INEXACT got 0
src/math/special/sqrt.h:171: bad fp exception: RN sqrtl(0x1.1d70daf24b2f3p+105)=0x1.7e4a43221475ep+52, want INEXACT got 0
src/math/special/sqrt.h:172: bad fp exception: RN sqrtl(0x1.cd8f896bdbe15p+105)=0x1.e62069048e19fp+52, want INEXACT got 0
src/math/special/sqrt.h:173: bad fp exception: RN sqrtl(0x1.365c9cbc63273p+104)=0x1.19df96fb71e62p+52, want INEXACT got 0
src/math/special/sqrt.h:174: bad fp exception: RN sqrtl(0x1.3a0c77ff9e212p+105)=0x1.90fd6d286a2fbp+52, want INEXACT got 0
src/math/special/sqrt.h:175: bad fp exception: RN sqrtl(0x1.6a0fb44de32e8p+105)=0x1.ae8d6d175828dp+52, want INEXACT got 0
src/math/special/sqrt.h:176: bad fp exception: RN sqrtl(0x1.bcceda0fb5685p+104)=0x1.517292e8a7d74p+52, want INEXACT got 0
src/math/special/sqrt.h:177: bad fp exception: RN sqrtl(0x1.46a1c8f457c6ap+105)=0x1.98f1c8048ae4ap+52, want INEXACT got 0
src/math/special/sqrt.h:178: bad fp exception: RN sqrtl(0x1.f798e1cd6e31bp+104)=0x1.670e37fb751b7p+52, want INEXACT got 0
src/math/special/sqrt.h:179: bad fp exception: RN sqrtl(0x1.aecec8b785d0ep+105)=0x1.d5a7110823728p+52, want INEXACT got 0
src/math/special/sqrt.h:180: bad fp exception: RN sqrtl(0x1.5bb32b3e36f2fp+104)=0x1.2a58eef7dc8d9p+52, want INEXACT got 0
src/math/special/sqrt.h:181: bad fp exception: RN sqrtl(0x1.506f082d9f44bp+105)=0x1.9f08f6c296ad3p+52, want INEXACT got 0
src/math/special/sqrt.h:182: bad fp exception: RN sqrtl(0x1.e6a847cbb67a7p+104)=0x1.60f7093d6952ep+52, want INEXACT got 0
src/math/special/sqrt.h:183: bad fp exception: RN sqrtl(0x1.71b747570cd0dp+105)=0x1.b314772f738fcp+52, want INEXACT got 0
src/math/special/sqrt.h:184: bad fp exception: RN sqrtl(0x1.b0f3c39164435p+104)=0x1.4ceb88d08c705p+52, want INEXACT got 0
src/math/special/sqrt.h:185: bad fp exception: RN sqrtl(0x1.c7b2b1cb67e06p+105)=0x1.e30785ed8182bp+52, want INEXACT got 0
src/math/special/sqrt.h:186: bad fp exception: RN sqrtl(0x1.3d384005c6b0dp+104)=0x1.1cf87a127e7d6p+52, want INEXACT got 0
src/math/special/sqrt.h:187: bad fp exception: RN sqrtl(0x1.6ace3a1b30035p+105)=0x1.aefea65f32e67p+52, want INEXACT got 0
src/math/special/sqrt.h:188: bad fp exception: RN sqrtl(0x1.bba48dfb2ea03p+104)=0x1.510159a0cd19ap+52, want INEXACT got 0
src/math/special/sqrt.h:189: bad fp exception: RN sqrtl(0x1.1d434042e01ccp+105)=0x1.7e2bb7fa1ccfep+52, want INEXACT got 0
src/math/special/sqrt.h:190: bad fp exception: RN sqrtl(0x1.ffffffffffffbp+105)=0x1.ffffffffffffdp+52, want INEXACT got 0
src/math/special/sqrt.h:191: bad fp exception: RN sqrtl(0x1.0000000000005p+104)=0x1.0000000000002p+52, want INEXACT got 0
src/math/special/sqrt.h:192: bad fp exception: RN sqrtl(0x1.77483d37ce205p+105)=0x1.b657c6d214c37p+52, want INEXACT got 0
src/math/special/sqrt.h:193: bad fp exception: RN sqrtl(0x1.a881d1831fabdp+104)=0x1.49a8392deb3c8p+52, want INEXACT got 0
src/math/special/sqrt.h:194: bad fp exception: RN sqrtl(0x1.ffffffffffff9p+105)=0x1.ffffffffffffcp+52, want INEXACT got 0
src/math/special/sqrt.h:195: bad fp exception: RN sqrtl(0x1.0000000000007p+104)=0x1.0000000000003p+52, want INEXACT got 0
src/math/special/sqrt.h:196: bad fp exception: RN sqrtl(0x1.1ac9955fd90d2p+105)=0x1.7c8253abfead5p+52, want INEXACT got 0
src/math/special/sqrt.h:197: bad fp exception: RN sqrtl(0x1.69ca8fa07c526p+105)=0x1.ae644e924e0efp+52, want INEXACT got 0
src/math/special/sqrt.h:198: bad fp exception: RN sqrtl(0x1.bd3b47d3244afp+104)=0x1.519bb16db1f1p+52, want INEXACT got 0
src/math/special/sqrt.h:199: bad fp exception: RN sqrtl(0x1.e4054716ef6ap+105)=0x1.f1d0539c8f7b1p+52, want INEXACT got 0
src/math/special/sqrt.h:200: bad fp exception: RN sqrtl(0x1.1d28988281f17p+104)=0x1.0e2fac637084ep+52, want INEXACT got 0
src/math/special/sqrt.h:201: bad fp exception: RN sqrtl(0x1.ffffffffffff7p+105)=0x1.ffffffffffffbp+52, want INEXACT got 0
src/math/special/sqrt.h:202: bad fp exception: RN sqrtl(0x1.0000000000009p+104)=0x1.0000000000004p+52, want INEXACT got 0
src/math/special/sqrt.h:203: bad fp exception: RN sqrtl(0x1.0d4cef742baf7p+105)=0x1.7353113c1682dp+52, want INEXACT got 0
src/math/special/sqrt.h:204: bad fp exception: RN sqrtl(0x1.f974b2f9b9fd3p+105)=0x1.fcb7a7dc3ab8cp+52, want INEXACT got 0
src/math/special/sqrt.h:205: bad fp exception: RN sqrtl(0x1.069b76ca13a5bp+104)=0x1.03485823c5473p+52, want INEXACT got 0
src/math/special/sqrt.h:206: bad fp exception: RN sqrtl(0x1.ffffffffffff5p+105)=0x1.ffffffffffffap+52, want INEXACT got 0
src/math/special/sqrt.h:207: bad fp exception: RN sqrtl(0x1.000000000000bp+104)=0x1.0000000000005p+52, want INEXACT got 0
src/math/special/sqrt.h:208: bad fp exception: RN sqrtl(0x1.3ac226a62efabp+105)=0x1.917159bb0fc2p+52, want INEXACT got 0
src/math/special/sqrt.h:209: bad fp exception: RN sqrtl(0x1.202a5c6165a5ep+105)=0x1.801c3c8c7f69ep+52, want INEXACT got 0
src/math/special/sqrt.h:210: bad fp exception: RN sqrtl(0x1.a903217634cb4p+105)=0x1.d27b9ce7e656bp+52, want INEXACT got 0
src/math/special/sqrt.h:211: bad fp exception: RN sqrtl(0x1.6320957d038e3p+104)=0x1.2d84631819a94p+52, want INEXACT got 0
src/math/special/sqrt.h:212: bad fp exception: RN sqrtl(0x1.ffffffffffff3p+105)=0x1.ffffffffffff9p+52, want INEXACT got 0
src/math/special/sqrt.h:213: bad fp exception: RN sqrtl(0x1.000000000000dp+104)=0x1.0000000000006p+52, want INEXACT got 0
src/math/special/sqrt.h:214: bad fp exception: RN sqrtl(0x1.906249f1ac465p+105)=0x1.c4c3f656b1ae3p+52, want INEXACT got 0
src/math/special/sqrt.h:215: bad fp exception: RN sqrtl(0x1.842ccddb2e775p+104)=0x1.3b3c09a94e51cp+52, want INEXACT got 0
src/math/special/sqrt.h:216: bad fp exception: RN sqrtl(0x1.86114026e1d57p+105)=0x1.bee4efcdfc972p+52, want INEXACT got 0
src/math/special/sqrt.h:217: bad fp exception: RN sqrtl(0x1.92c4e179d81ffp+104)=0x1.411b10320368dp+52, want INEXACT got 0
src/math/special/sqrt.h:218: bad fp exception: RN sqrtl(0x1.ffffffffffff1p+105)=0x1.ffffffffffff8p+52, want INEXACT got 0
src/math/special/sqrt.h:219: bad fp exception: RN sqrtl(0x1.000000000000fp+104)=0x1.0000000000007p+52, want INEXACT got 0
src/math/special/sqrt.h:220: bad fp exception: RN sqrtl(0x1.bd38b7f5a2e32p+105)=0x1.dd71d78f19353p+52, want INEXACT got 0
src/math/special/sqrt.h:221: bad fp exception: RN sqrtl(0x1.49c66290ae86fp+104)=0x1.228e2870e6cacp+52, want INEXACT got 0
src/math/special/sqrt.h:222: bad fp exception: RN sqrtl(0x1.41f10ef33393fp+105)=0x1.95ff6801e853ep+52, want INEXACT got 0
src/math/special/sqrt.h:223: bad fp exception: RN sqrtl(0x1.ffe5addaf5307p+104)=0x1.6a0097fe17ac1p+52, want INEXACT got 0
src/math/special/sqrt.h:224: bad fp exception: RN sqrtl(0x1.3373d07e38531p+105)=0x1.8cc1a26e959b4p+52, want INEXACT got 0
src/math/special/sqrt.h:225: bad fp exception: RN sqrtl(0x1.0ba47e5d96a17p+105)=0x1.722dfec721cbdp+52, want INEXACT got 0
src/math/special/sqrt.h:226: bad fp exception: RN sqrtl(0x1.fffffffffffefp+105)=0x1.ffffffffffff7p+52, want INEXACT got 0
src/math/special/sqrt.h:227: bad fp exception: RN sqrtl(0x1.0000000000011p+104)=0x1.0000000000008p+52, want INEXACT got 0
src/math/special/sqrt.h:228: bad fp exception: RN sqrtl(0x1.2dd951d9fc451p+105)=0x1.891fcbcecfdc3p+52, want INEXACT got 0
src/math/special/sqrt.h:229: bad fp exception: RN sqrtl(0x1.aaac304200df4p+105)=0x1.d364a6e7a846ap+52, want INEXACT got 0
src/math/special/sqrt.h:230: bad fp exception: RN sqrtl(0x1.60fc771610169p+104)=0x1.2c9b591857b95p+52, want INEXACT got 0
src/math/special/sqrt.h:231: bad fp exception: RN sqrtl(0x1.5ccb5b03f4034p+105)=0x1.a697297c578afp+52, want INEXACT got 0
src/math/special/sqrt.h:232: bad fp exception: RN sqrtl(0x1.d20bbd1ddac4bp+104)=0x1.5968d683a875p+52, want INEXACT got 0
src/math/special/sqrt.h:233: bad fp exception: RN sqrtl(0x1.a64a0786c5018p+105)=0x1.d0fc70090acedp+52, want INEXACT got 0
src/math/special/sqrt.h:234: bad fp exception: RN sqrtl(0x1.66a96ed74929fp+104)=0x1.2f038ff6f5312p+52, want INEXACT got 0
src/math/special/sqrt.h:235: bad fp exception: RN sqrtl(0x1.27f0f3892e966p+105)=0x1.854215b8a5e18p+52, want INEXACT got 0
src/math/special/sqrt.h:236: bad fp exception: RN sqrtl(0x1.fffffffffffedp+105)=0x1.ffffffffffff6p+52, want INEXACT got 0
src/math/special/sqrt.h:237: bad fp exception: RN sqrtl(0x1.0000000000013p+104)=0x1.0000000000009p+52, want INEXACT got 0
src/math/special/sqrt.h:238: bad fp exception: RN sqrtl(0x1.9cf37dc067513p+105)=0x1.cbd0f5aa4c73ap+52, want INEXACT got 0
src/math/special/sqrt.h:239: bad fp exception: RN sqrtl(0x1.7301398303ec7p+104)=0x1.342f0a55b38c5p+52, want INEXACT got 0
src/math/special/sqrt.h:240: bad fp exception: RN sqrtl(0x1.2de7d612d1581p+105)=0x1.89293facadc6p+52, want INEXACT got 0
src/math/special/sqrt.h:241: bad fp exception: RN sqrtl(0x1.91e2e1888fb81p+105)=0x1.c59d36661abdep+52, want INEXACT got 0
src/math/special/sqrt.h:242: bad fp exception: RN sqrtl(0x1.82167cac7efcbp+104)=0x1.3a62c999e5421p+52, want INEXACT got 0
src/math/special/sqrt.h:243: bad fp exception: RN sqrtl(0x1.66fe83bf9d389p+105)=0x1.acb9923c92f2bp+52, want INEXACT got 0
src/math/special/sqrt.h:244: bad fp exception: RN sqrtl(0x1.c1a39a13c8c0dp+104)=0x1.53466dc36d0d4p+52, want INEXACT got 0
src/math/special/sqrt.h:245: bad fp exception: RN sqrtl(0x1.08013920711f5p+105)=0x1.6fa7c41e7da28p+52, want INEXACT got 0
src/math/special/sqrt.h:246: bad fp exception: RN sqrtl(0x1.fffffffffffebp+105)=0x1.ffffffffffff5p+52, want INEXACT got 0
src/math/special/sqrt.h:247: bad fp exception: RN sqrtl(0x1.0000000000015p+104)=0x1.000000000000ap+52, want INEXACT got 0
src/math/special/sqrt.h:248: bad fp exception: RN sqrtl(0x1.2e23b951167f3p+105)=0x1.89503c69a508fp+52, want INEXACT got 0
src/math/special/sqrt.h:249: bad fp exception: RN sqrtl(0x1.8448f9061c55p+105)=0x1.bddf431dfa7d1p+52, want INEXACT got 0
src/math/special/sqrt.h:250: bad fp exception: RN sqrtl(0x1.95565f5859bb7p+104)=0x1.4220bce20582ep+52, want INEXACT got 0
src/math/special/sqrt.h:251: bad fp exception: RN sqrtl(0x1.49871c81c0e73p+105)=0x1.9ac0d43859164p+52, want INEXACT got 0
src/math/special/sqrt.h:252: bad fp exception: RN sqrtl(0x1.f2893fb16b48bp+104)=0x1.653f2bc7a6e9bp+52, want INEXACT got 0
src/math/special/sqrt.h:253: bad fp exception: RN sqrtl(0x1.585a518f34574p+105)=0x1.a3e427096cbc7p+52, want INEXACT got 0
src/math/special/sqrt.h:254: bad fp exception: RN sqrtl(0x1.d95bb8e5dc43bp+104)=0x1.5c1bd8f693438p+52, want INEXACT got 0
src/math/special/sqrt.h:255: bad fp exception: RN sqrtl(0x1.4640c61a107d3p+105)=0x1.98b508d7696ecp+52, want INEXACT got 0
src/math/special/sqrt.h:256: bad fp exception: RN sqrtl(0x1.f8435727a861bp+104)=0x1.674af72896913p+52, want INEXACT got 0
src/math/special/sqrt.h:257: bad fp exception: RN sqrtl(0x1.109491841853dp+105)=0x1.75942dbb1eedap+52, want INEXACT got 0
src/math/special/sqrt.h:258: bad fp exception: RN sqrtl(0x1.2fec5e46b945fp+105)=0x1.8a7904fc03f7fp+52, want INEXACT got 0
src/math/special/sqrt.h:259: bad fp exception: RN sqrtl(0x1.fffffffffffe9p+105)=0x1.ffffffffffff4p+52, want INEXACT got 0
src/math/special/sqrt.h:260: bad fp exception: RN sqrtl(0x1.0000000000017p+104)=0x1.000000000000bp+52, want INEXACT got 0
src/math/special/sqrt.h:261: bad fp exception: RN sqrtl(0x1.128b05f79555cp+105)=0x1.76ebe008ed97dp+52, want INEXACT got 0
src/math/special/sqrt.h:262: bad fp exception: RN sqrtl(0x1.fb6ad7a73a0cbp+105)=0x1.fdb41a4dd1b83p+52, want INEXACT got 0
src/math/special/sqrt.h:263: bad fp exception: RN sqrtl(0x1.049d117b89c81p+104)=0x1.024be5b22e47cp+52, want INEXACT got 0
src/math/special/sqrt.h:264: bad fp exception: RN sqrtl(0x1.6b287cde410f1p+105)=0x1.af343fdf7ac55p+52, want INEXACT got 0
src/math/special/sqrt.h:265: bad fp exception: RN sqrtl(0x1.bb177a7fa17e1p+104)=0x1.50cbc020853aap+52, want INEXACT got 0
src/math/special/sqrt.h:266: bad fp exception: RN sqrtl(0x1.1705e87e6572cp+105)=0x1.79f7cf7bd7da7p+52, want INEXACT got 0
src/math/special/sqrt.h:267: bad fp exception: RN sqrtl(0x1.a0857af57261ep+105)=0x1.cdccb8f9c56c9p+52, want INEXACT got 0
src/math/special/sqrt.h:268: bad fp exception: RN sqrtl(0x1.6e3ea01044383p+104)=0x1.323347063a936p+52, want INEXACT got 0
src/math/special/sqrt.h:269: bad fp exception: RN sqrtl(0x1.fffffffffffe7p+105)=0x1.ffffffffffff3p+52, want INEXACT got 0
src/math/special/sqrt.h:270: bad fp exception: RN sqrtl(0x1.0000000000019p+104)=0x1.000000000000cp+52, want INEXACT got 0
src/math/special/sqrt.h:271: bad fp exception: RN sqrtl(0x1.8b19714a4836dp+105)=0x1.c1c480c871185p+52, want INEXACT got 0
src/math/special/sqrt.h:272: bad fp exception: RN sqrtl(0x1.8b97dde1e9db9p+104)=0x1.3e3b7f378ee7ap+52, want INEXACT got 0
src/math/special/sqrt.h:273: bad fp exception: RN sqrtl(0x1.a0caf669ea303p+105)=0x1.cdf33be5a3ee1p+52, want INEXACT got 0
src/math/special/sqrt.h:274: bad fp exception: RN sqrtl(0x1.6de28571fccbdp+104)=0x1.320cc41a5c11ep+52, want INEXACT got 0
src/math/special/sqrt.h:275: bad fp exception: RN sqrtl(0x1.ae6b9477b0f4ep+105)=0x1.d570fad5ae714p+52, want INEXACT got 0
src/math/special/sqrt.h:276: bad fp exception: RN sqrtl(0x1.5c3147ed4b421p+104)=0x1.2a8f052a518ebp+52, want INEXACT got 0
src/math/special/sqrt.h:277: bad fp exception: RN sqrtl(0x1.c9c9ea9823206p+105)=0x1.e422dc265cc22p+52, want INEXACT got 0
src/math/special/sqrt.h:278: bad fp exception: RN sqrtl(0x1.3ac2ac4a19b3dp+104)=0x1.1bdd23d9a33ddp+52, want INEXACT got 0
src/math/special/sqrt.h:279: bad fp exception: RN sqrtl(0x1.8e513e0c5bbddp+105)=0x1.c39871e63f668p+52, want INEXACT got 0
src/math/special/sqrt.h:280: bad fp exception: RN sqrtl(0x1.870fd0b33b147p+104)=0x1.3c678e19c0997p+52, want INEXACT got 0
src/math/special/sqrt.h:281: bad fp exception: RN sqrtl(0x1.80448ded551a3p+105)=0x1.bb8f4135f5663p+52, want INEXACT got 0
src/math/special/sqrt.h:282: bad fp exception: RN sqrtl(0x1.9b2d9496e9cf1p+104)=0x1.4470beca0a99cp+52, want INEXACT got 0
src/math/special/sqrt.h:283: bad fp exception: RN sqrtl(0x1.962c00ed2f202p+105)=0x1.c806bd1a17f4ap+52, want INEXACT got 0
src/math/special/sqrt.h:284: bad fp exception: RN sqrtl(0x1.7c2f933dce845p+104)=0x1.37f942e5e80b5p+52, want INEXACT got 0
src/math/special/sqrt.h:285: bad fp exception: RN sqrtl(0x1.fffffffffffe5p+105)=0x1.ffffffffffff2p+52, want INEXACT got 0
src/math/special/sqrt.h:286: bad fp exception: RN sqrtl(0x1.000000000001bp+104)=0x1.000000000000dp+52, want INEXACT got 0
src/math/special/sqrt.h:287: bad fp exception: RN sqrtl(0x1.e986e9749149ep+105)=0x1.f4a32dcc3b787p+52, want INEXACT got 0
src/math/special/sqrt.h:288: bad fp exception: RN sqrtl(0x1.173ac01fbdc0fp+104)=0x1.0b5cd233c4878p+52, want INEXACT got 0
src/math/special/sqrt.h:289: bad fp exception: RN sqrtl(0x1.b90968dfbd58ep+105)=0x1.db321028321d6p+52, want INEXACT got 0
src/math/special/sqrt.h:290: bad fp exception: RN sqrtl(0x1.4ee670ce4e015p+104)=0x1.24cdefd7cde29p+52, want INEXACT got 0
src/math/special/sqrt.h:291: bad fp exception: RN sqrtl(0x1.adf3a892c378p+105)=0x1.d52f90bb839e5p+52, want INEXACT got 0
src/math/special/sqrt.h:292: bad fp exception: RN sqrtl(0x1.5cc9ecc07139fp+104)=0x1.2ad06f447c61ap+52, want INEXACT got 0
src/math/special/sqrt.h:293: bad fp exception: RN sqrtl(0x1.21f25ca11cdefp+105)=0x1.814bae81d5041p+52, want INEXACT got 0
src/math/special/sqrt.h:294: bad fp exception: RN sqrtl(0x1.dcd8582acf913p+105)=0x1.ee1c28bdd8634p+52, want INEXACT got 0
src/math/special/sqrt.h:295: bad fp exception: RN sqrtl(0x1.2507bbe28ccebp+104)=0x1.11e3d742279cbp+52, want INEXACT got 0
src/math/special/sqrt.h:296: bad fp exception: RN sqrtl(0x1.5bdd34dbf3f7cp+105)=0x1.a606cc4bbc777p+52, want INEXACT got 0
src/math/special/sqrt.h:297: bad fp exception: RN sqrtl(0x1.d3919ff17d22bp+104)=0x1.59f933b443888p+52, want INEXACT got 0
src/math/special/sqrt.h:298: bad fp exception: RN sqrtl(0x1.6a4d09ea19a7dp+105)=0x1.aeb1e37cf98d9p+52, want INEXACT got 0
src/math/special/sqrt.h:299: bad fp exception: RN sqrtl(0x1.bc6ebee659fe1p+104)=0x1.514e1c8306726p+52, want INEXACT got 0
src/math/special/sqrt.h:300: bad fp exception: RN sqrtl(0x1.991f1e263175ap+105)=0x1.c9addf0205943p+52, want INEXACT got 0
src/math/special/sqrt.h:301: bad fp exception: RN sqrtl(0x1.782b02404171fp+104)=0x1.365220fdfa6bcp+52, want INEXACT got 0
src/math/special/sqrt.h:302: bad fp exception: RN sqrtl(0x1.08e9256b12fa6p+105)=0x1.70491de5982eap+52, want INEXACT got 0
src/math/special/sqrt.h:303: bad fp exception: RN sqrtl(0x1.1da509e4fd3bdp+105)=0x1.7e6d33563082fp+52, want INEXACT got 0
src/math/special/sqrt.h:304: bad fp exception: RN sqrtl(0x1.fffffffffffe3p+105)=0x1.ffffffffffff1p+52, want INEXACT got 0
src/math/special/sqrt.h:305: bad fp exception: RN sqrtl(0x1.000000000001dp+104)=0x1.000000000000ep+52, want INEXACT got 0
src/math/special/sqrt.h:306: bad fp exception: RN sqrtl(0x1.1c8fba5105937p+105)=0x1.7db363c14e992p+52, want INEXACT got 0
src/math/special/sqrt.h:307: bad fp exception: RN sqrtl(0x1.12307f6aa1598p+105)=0x1.76ae0b2037967p+52, want INEXACT got 0
src/math/special/sqrt.h:308: bad fp exception: RN sqrtl(0x1.350b181f61a1bp+105)=0x1.8dc815e13b276p+52, want INEXACT got 0
src/math/special/sqrt.h:309: bad fp exception: RN sqrtl(0x1.1a2f79400dc0ap+105)=0x1.7c1a96d138a45p+52, want INEXACT got 0
src/math/special/sqrt.h:310: bad fp exception: RN sqrtl(0x1.a4005a0d21cc4p+105)=0x1.cfb98d7063cep+52, want INEXACT got 0
src/math/special/sqrt.h:311: bad fp exception: RN sqrtl(0x1.69a76377ecc45p+104)=0x1.3046728f9c31fp+52, want INEXACT got 0
src/math/special/sqrt.h:312: bad fp exception: RN sqrtl(0x1.17fcdcccc3eb2p+105)=0x1.7a9eee07bc9a1p+52, want INEXACT got 0
src/math/special/sqrt.h:313: bad fp exception: RN sqrtl(0x1.1a4b4ce34b56fp+105)=0x1.7c2d54204e09dp+52, want INEXACT got 0
src/math/special/sqrt.h:314: bad fp exception: RN sqrtl(0x1.c5edba7fe6b83p+105)=0x1.e217391120d57p+52, want INEXACT got 0
src/math/special/sqrt.h:315: bad fp exception: RN sqrtl(0x1.3f501e99086f9p+104)=0x1.1de8c6eedf2a8p+52, want INEXACT got 0
src/math/special/sqrt.h:316: bad fp exception: RN sqrtl(0x1.cf9db38790aa3p+105)=0x1.e7352fd68c3c6p+52, want INEXACT got 0
src/math/special/sqrt.h:317: bad fp exception: RN sqrtl(0x1.33fc4807d7e9fp+104)=0x1.18cad02973c39p+52, want INEXACT got 0
src/math/special/sqrt.h:318: bad fp exception: RN sqrtl(0x1.fc2018f397d65p+105)=0x1.fe0f1b5c1a175p+52, want INEXACT got 0
src/math/special/sqrt.h:319: bad fp exception: RN sqrtl(0x1.03e58dbe93209p+104)=0x1.01f0e4a3e5e8ap+52, want INEXACT got 0
src/math/special/sqrt.h:320: bad fp exception: RN sqrtl(0x1.fffffffffffe1p+105)=0x1.ffffffffffffp+52, want INEXACT got 0
src/math/special/sqrt.h:321: bad fp exception: RN sqrtl(0x1.000000000001fp+104)=0x1.000000000000fp+52, want INEXACT got 0
src/math/special/sqrt.h:322: bad fp exception: RN sqrtl(0x1.6015db7c6744cp+105)=0x1.a894573ff12aep+52, want INEXACT got 0
src/math/special/sqrt.h:323: bad fp exception: RN sqrtl(0x1.ccb1ab7927881p+104)=0x1.576ba8c00ed51p+52, want INEXACT got 0
src/math/special/sqrt.h:324: bad fp exception: RN sqrtl(0x1.2095fab55f69fp+105)=0x1.8063ef77e2b32p+52, want INEXACT got 0
src/math/special/sqrt.h:325: bad fp exception: RN sqrtl(0x1.dbb7a32c9c655p+105)=0x1.ed867d956c347p+52, want INEXACT got 0
src/math/special/sqrt.h:326: bad fp exception: RN sqrtl(0x1.264854d8af8fdp+104)=0x1.1279826a93cb8p+52, want INEXACT got 0
FAIL src/math/sqrtl.exe [status 1]
X src/math/sanity/tgamma.h:4: RN tgamma(-0x1.a206f0a19dcc4p+2) want -0x1.9fd0c1ce12f14p-10 got -0x1.9fd0c1ce12f12p-10 ulperr 1.597 = 0x1p+1 + -0x1.9c637p-2
X src/math/sanity/tgamma.h:7: RN tgamma(-0x1.a05cc754481d1p-2) want -0x1.d9a22b2f3f253p+1 got -0x1.d9a22b2f3f251p+1 ulperr 1.674 = 0x1p+1 + -0x1.4d79f4p-2
src/math/special/tgamma.h:5: bad fp exception: RN tgamma(-0x1p+0)=nan, want INVALID got 0
src/math/special/tgamma.h:7: bad fp exception: RN tgamma(-0x1p+1)=nan, want INVALID got 0
X src/math/special/tgamma.h:47: RN tgamma(0x1p-53) want 0x1.fffffffffffffp+52 got 0x1.ffffffffffffdp+52 ulperr -2.423 = -0x1p+1 + -0x1.b0ee6p-2
X src/math/special/tgamma.h:60: RN tgamma(-0x1.0000000000001p+0) want 0x1.fffffffffffffp+51 got 0x1.ffffffffffffdp+51 ulperr -2.154 = -0x1p+1 + -0x1.3c467ep-3
X src/math/special/tgamma.h:62: RN tgamma(-0x1.0000000000003p+0) want 0x1.5555555555554p+50 got 0x1.5555555555552p+50 ulperr -1.642 = -0x1p+1 + 0x1.6e642cp-2
X src/math/special/tgamma.h:66: RN tgamma(-0x1.ffffffffffffep+0) want 0x1.0000000000002p+50 got 0x1.0000000000004p+50 ulperr 2.154 = 0x1p+1 + 0x1.3c467ep-3
X src/math/special/tgamma.h:68: RN tgamma(-0x1.0000000000001p+1) want -0x1.ffffffffffffcp+49 got -0x1.ffffffffffff7p+49 ulperr 5.309 = 0x1.4p+2 + 0x1.3c467ep-2
X src/math/special/tgamma.h:72: RN tgamma(-0x1.7fffffffffffdp+1) want -0x1.c71c71c71c72ap+46 got -0x1.c71c71c71c72cp+46 ulperr -2.157 = -0x1p+1 + -0x1.4177f6p-3
X src/math/special/tgamma.h:82: RN tgamma(-0x1.59fffffffffffp+7) want -0x1.46b1fa841aaa6p-997 got -0x1.46b1fa841aaa8p-997 ulperr -1.801 = -0x1p+1 + 0x1.979e28p-3
X src/math/special/tgamma.h:83: RN tgamma(-0x1.5a00000000001p+7) want 0x1.46b1fa841a412p-997 got 0x1.46b1fa841a41p-997 ulperr -1.700 = -0x1p+1 + 0x1.333de2p-2
X src/math/special/tgamma.h:84: RN tgamma(-0x1.5bfffffffffffp+7) want 0x1.e0a7b14f99fdbp-1005 got 0x1.e0a7b14f99fddp-1005 ulperr 1.579 = 0x1p+1 + -0x1.af416ap-2
X src/math/special/tgamma.h:85: RN tgamma(-0x1.5c00000000001p+7) want -0x1.e0a7b14f9962ap-1005 got -0x1.e0a7b14f9962cp-1005 ulperr -1.685 = -0x1p+1 + 0x1.42ddc4p-2
X src/math/special/tgamma.h:88: RN tgamma(-0x1.5ffffffffffffp+7) want 0x1.ff5df5f533fd3p-1020 got 0x1.ff5df5f533fd6p-1020 ulperr 2.513 = 0x1.8p+1 + -0x1.f234a4p-2
X src/math/special/tgamma.h:119: RN tgamma(-0x1.8p+0) want 0x1.2e7fb0bcdf4f2p+1 got 0x1.2e7fb0bcdf4fp+1 ulperr -1.770 = -0x1p+1 + 0x1.d7697p-3
X src/math/special/tgamma.h:136: RN tgamma(-0x1.02p+6) want -0x1.912276590832ep-298 got -0x1.912276590833p-298 ulperr -1.662 = -0x1p+1 + 0x1.59f79ap-2
X src/math/special/tgamma.h:141: RN tgamma(-0x1.55p+7) want -0x1.7d2374dfcda7ap-1022 got -0x1.7d2374dfcda78p-1022 ulperr 1.778 = 0x1p+1 + -0x1.c68fa4p-3
FAIL src/math/tgamma.exe [status 1]
src/math/special/tgammaf.h:4: bad fp exception: RN tgammaf(-0x1p+0)=-nan, want INVALID got 0
src/math/special/tgammaf.h:6: bad fp exception: RN tgammaf(-0x1p+1)=-nan, want INVALID got 0
FAIL src/math/tgammaf.exe [status 1]
src/math/special/tgamma.h:5: bad fp exception: RN tgammal(-0x1p+0)=nan, want INVALID got 0
src/math/special/tgamma.h:7: bad fp exception: RN tgammal(-0x1p+1)=nan, want INVALID got 0
src/math/special/tgamma.h:47: RN tgammal(0x1p-53) want 0x1.fffffffffffffp+52 got 0x1.ffffffffffffdp+52 ulperr -2.423 = -0x1p+1 + -0x1.b0ee6p-2
src/math/special/tgamma.h:60: RN tgammal(-0x1.0000000000001p+0) want 0x1.fffffffffffffp+51 got 0x1.ffffffffffffdp+51 ulperr -2.154 = -0x1p+1 + -0x1.3c467ep-3
src/math/special/tgamma.h:66: RN tgammal(-0x1.ffffffffffffep+0) want 0x1.0000000000002p+50 got 0x1.0000000000004p+50 ulperr 2.154 = 0x1p+1 + 0x1.3c467ep-3
src/math/special/tgamma.h:68: RN tgammal(-0x1.0000000000001p+1) want -0x1.ffffffffffffcp+49 got -0x1.ffffffffffff7p+49 ulperr 5.309 = 0x1.4p+2 + 0x1.3c467ep-2
src/math/special/tgamma.h:72: RN tgammal(-0x1.7fffffffffffdp+1) want -0x1.c71c71c71c72ap+46 got -0x1.c71c71c71c72cp+46 ulperr -2.157 = -0x1p+1 + -0x1.4177f6p-3
src/math/special/tgamma.h:88: RN tgammal(-0x1.5ffffffffffffp+7) want 0x1.ff5df5f533fd3p-1020 got 0x1.ff5df5f533fd6p-1020 ulperr 2.513 = 0x1.8p+1 + -0x1.f234a4p-2
FAIL src/math/tgammal.exe [status 1]
src/math/sanity/y0.h:1: bad fp exception: RN y0(-0x1.02239f3c6a8f1p+3)=nan, want INVALID got 0
src/math/sanity/y0.h:3: bad fp exception: RN y0(-0x1.0c34b3e01e6e7p+3)=nan, want INVALID got 0
src/math/sanity/y0.h:4: bad fp exception: RN y0(-0x1.a206f0a19dcc4p+2)=nan, want INVALID got 0
src/math/sanity/y0.h:7: bad fp exception: RN y0(-0x1.a05cc754481d1p-2)=nan, want INVALID got 0
src/math/sanity/y0.h:10: bad fp exception: RN y0(-0x1.5b86ea8118a0ep-1)=nan, want INVALID got 0
src/math/special/y0.h:1: bad fp exception: RN y0(0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y0.h:2: bad fp exception: RN y0(-0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y0.h:3: bad fp exception: RN y0(-0x1p+0)=nan, want INVALID got 0
src/math/special/y0.h:5: bad fp exception: RN y0(-inf)=nan, want INVALID got 0
X src/math/special/y0.h:8: RN y0(0x1.c982eb8d417eap-1) want -0x1.af74bfa0f1304p-56 got -0x1p-55 ulperr -1416944204906496.000 = -0x1.422d02p+50 + 0x1.11721cp-2
X src/math/special/y0.h:9: RN y0(0x1.c982eb8d417ebp-1) want 0x1.5666419c0f3c9p-54 got 0x1.2p-54 ulperr -957005015547904.000 = -0x1.b3320cp+49 + 0x1.dc02a8p-2
X src/math/special/y0.h:10: RN y0(0x1.fa9534d98569bp+1) want 0x1.384a000f3fcecp-53 got 0x1.3004a968fceadp-53 ulperr -145502385471488.000 = -0x1.08aad4p+47 + 0x1.58e17p-6
X src/math/special/y0.h:11: RN y0(0x1.fa9534d98569cp+1) want -0x1.8fa8956b4b481p-55 got -0x1.8f4eb84cc2a33p-55 ulperr 6175389646848.000 = 0x1.67747ap+42 + 0x1.54cfbep-2
X src/math/special/y0.h:12: RN y0(0x1.c581dc4e72102p+2) want -0x1.14bb186dc408dp-52 got -0x1.16eb61aad4cacp-52 ulperr -38502565675008.000 = -0x1.18249ep+45 + -0x1.163cfp-2
X src/math/special/y0.h:13: RN y0(0x1.c581dc4e72103p+2) want 0x1.e91b198d39ce2p-56 got 0x1.dac1abb064c09p-56 ulperr -252436132397056.000 = -0x1.cb2dbcp+47 + -0x1.ee1b6ep-2
FAIL src/math/y0.exe [status 1]
src/math/sanity/y0f.h:1: bad fp exception: RN y0f(-0x1.0223ap+3)=-nan, want INVALID got 0
X src/math/sanity/y0f.h:2: RN y0f(0x1.161868p+2) want -0x1.293dbep-3 got -0x1.293dc2p-3 ulperr -1.910 = -0x1p+1 + 0x1.6ffc42p-4
src/math/sanity/y0f.h:3: bad fp exception: RN y0f(-0x1.0c34b4p+3)=-nan, want INVALID got 0
src/math/sanity/y0f.h:4: bad fp exception: RN y0f(-0x1.a206fp+2)=-nan, want INVALID got 0
src/math/sanity/y0f.h:7: bad fp exception: RN y0f(-0x1.a05cc8p-2)=-nan, want INVALID got 0
src/math/sanity/y0f.h:10: bad fp exception: RN y0f(-0x1.5b86eap-1)=-nan, want INVALID got 0
src/math/special/y0f.h:1: bad fp exception: RN y0f(0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y0f.h:2: bad fp exception: RN y0f(-0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y0f.h:3: bad fp exception: RN y0f(-0x1p+0)=-nan, want INVALID got 0
src/math/special/y0f.h:5: bad fp exception: RN y0f(-inf)=-nan, want INVALID got 0
X src/math/special/y0f.h:7: RN y0f(0x1.0c4a3ap+0) want 0x1.ff138ep-4 got 0x1.ff1386p-4 ulperr -4.180 = -0x1.fffffep+1 + -0x1.71585ap-3
X src/math/special/y0f.h:8: RN y0f(0x1.8ae5d4p-1) want -0x1.d88a5ap-4 got -0x1.d88a5p-4 ulperr 4.919 = 0x1.4p+2 + -0x1.4d601ap-4
X src/math/special/y0f.h:9: RN y0f(0x1.fa9536p+1) want -0x1.da2946p-25 got -0x1.c5c23p-25 ulperr 668554.625 = 0x1.46716p+19 + -0x1.88a2bcp-2
FAIL src/math/y0f.exe [status 1]
src/math/sanity/y1.h:1: bad fp exception: RN y1(-0x1.02239f3c6a8f1p+3)=nan, want INVALID got 0
src/math/sanity/y1.h:3: bad fp exception: RN y1(-0x1.0c34b3e01e6e7p+3)=nan, want INVALID got 0
src/math/sanity/y1.h:4: bad fp exception: RN y1(-0x1.a206f0a19dcc4p+2)=nan, want INVALID got 0
src/math/sanity/y1.h:7: bad fp exception: RN y1(-0x1.a05cc754481d1p-2)=nan, want INVALID got 0
src/math/sanity/y1.h:10: bad fp exception: RN y1(-0x1.5b86ea8118a0ep-1)=nan, want INVALID got 0
src/math/special/y1.h:1: bad fp exception: RN y1(0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y1.h:2: bad fp exception: RN y1(-0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y1.h:3: bad fp exception: RN y1(-0x1p+0)=nan, want INVALID got 0
src/math/special/y1.h:5: bad fp exception: RN y1(-inf)=nan, want INVALID got 0
FAIL src/math/y1.exe [status 1]
src/math/sanity/y1f.h:1: bad fp exception: RN y1f(-0x1.0223ap+3)=-nan, want INVALID got 0
src/math/sanity/y1f.h:3: bad fp exception: RN y1f(-0x1.0c34b4p+3)=-nan, want INVALID got 0
src/math/sanity/y1f.h:4: bad fp exception: RN y1f(-0x1.a206fp+2)=-nan, want INVALID got 0
src/math/sanity/y1f.h:7: bad fp exception: RN y1f(-0x1.a05cc8p-2)=-nan, want INVALID got 0
src/math/sanity/y1f.h:10: bad fp exception: RN y1f(-0x1.5b86eap-1)=-nan, want INVALID got 0
src/math/special/y1f.h:1: bad fp exception: RN y1f(0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y1f.h:2: bad fp exception: RN y1f(-0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y1f.h:3: bad fp exception: RN y1f(-0x1p+0)=-nan, want INVALID got 0
src/math/special/y1f.h:5: bad fp exception: RN y1f(-inf)=-nan, want INVALID got 0
FAIL src/math/y1f.exe [status 1]
src/math/sanity/yn.h:1: bad fp exception: RN yn(-2, -0x1.02239f3c6a8f1p+3)=nan, want INVALID got 0
src/math/sanity/yn.h:3: bad fp exception: RN yn(0, -0x1.0c34b3e01e6e7p+3)=nan, want INVALID got 0
src/math/sanity/yn.h:4: bad fp exception: RN yn(1, -0x1.a206f0a19dcc4p+2)=nan, want INVALID got 0
src/math/sanity/yn.h:7: bad fp exception: RN yn(4, -0x1.a05cc754481d1p-2)=nan, want INVALID got 0
src/math/sanity/yn.h:10: bad fp exception: RN yn(7, -0x1.5b86ea8118a0ep-1)=nan, want INVALID got 0
src/math/special/yn.h:1: bad fp exception: RN yn(0, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:2: bad fp exception: RN yn(0, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:3: bad fp exception: RN yn(0, -0x1p+0)=nan, want INVALID got 0
src/math/special/yn.h:5: bad fp exception: RN yn(0, -inf)=nan, want INVALID got 0
src/math/special/yn.h:7: bad fp exception: RN yn(1, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:8: bad fp exception: RN yn(1, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:9: bad fp exception: RN yn(1, -0x1p+0)=nan, want INVALID got 0
src/math/special/yn.h:11: bad fp exception: RN yn(1, -inf)=nan, want INVALID got 0
src/math/special/yn.h:13: bad fp exception: RN yn(-1, 0x0p+0)=inf, want DIVBYZERO got 0
src/math/special/yn.h:14: bad fp exception: RN yn(-1, -0x0p+0)=inf, want DIVBYZERO got 0
src/math/special/yn.h:15: bad fp exception: RN yn(-1, -0x1p+0)=nan, want INVALID got 0
src/math/special/yn.h:17: bad fp exception: RN yn(-1, -inf)=nan, want INVALID got 0
src/math/special/yn.h:19: bad fp exception: RN yn(2, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:20: bad fp exception: RN yn(2, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:21: bad fp exception: RN yn(2, -0x1p+0)=nan, want INVALID got 0
src/math/special/yn.h:23: bad fp exception: RN yn(2, -inf)=nan, want INVALID got 0
FAIL src/math/yn.exe [status 1]
src/math/sanity/ynf.h:1: bad fp exception: RN ynf(-2, -0x1.0223ap+3)=-nan, want INVALID got 0
src/math/sanity/ynf.h:3: bad fp exception: RN ynf(0, -0x1.0c34b4p+3)=-nan, want INVALID got 0
src/math/sanity/ynf.h:4: bad fp exception: RN ynf(1, -0x1.a206fp+2)=-nan, want INVALID got 0
X src/math/sanity/ynf.h:6: RN ynf(3, 0x1.52efdp-1) want -0x1.2935d2p+4 got -0x1.2935d6p+4, ulperr -1.920 = -0x1p+1 + 0x1.47d13p-4
src/math/sanity/ynf.h:7: bad fp exception: RN ynf(4, -0x1.a05cc8p-2)=-nan, want INVALID got 0
X src/math/sanity/ynf.h:9: RN ynf(6, 0x1.8c5dbp-1) want -0x1.6dbc1cp+13 got -0x1.6dbc18p+13, ulperr 2.115 = 0x1p+1 + 0x1.d597eep-4
src/math/sanity/ynf.h:10: bad fp exception: RN ynf(7, -0x1.5b86eap-1)=-nan, want INVALID got 0
src/math/special/ynf.h:1: bad fp exception: RN ynf(0, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:2: bad fp exception: RN ynf(0, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:3: bad fp exception: RN ynf(0, -0x1p+0)=-nan, want INVALID got 0
src/math/special/ynf.h:5: bad fp exception: RN ynf(0, -inf)=-nan, want INVALID got 0
src/math/special/ynf.h:7: bad fp exception: RN ynf(1, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:8: bad fp exception: RN ynf(1, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:9: bad fp exception: RN ynf(1, -0x1p+0)=-nan, want INVALID got 0
src/math/special/ynf.h:11: bad fp exception: RN ynf(1, -inf)=-nan, want INVALID got 0
src/math/special/ynf.h:13: bad fp exception: RN ynf(-1, 0x0p+0)=inf, want DIVBYZERO got 0
src/math/special/ynf.h:14: bad fp exception: RN ynf(-1, -0x0p+0)=inf, want DIVBYZERO got 0
src/math/special/ynf.h:15: bad fp exception: RN ynf(-1, -0x1p+0)=-nan, want INVALID got 0
src/math/special/ynf.h:17: bad fp exception: RN ynf(-1, -inf)=-nan, want INVALID got 0
src/math/special/ynf.h:19: bad fp exception: RN ynf(2, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:20: bad fp exception: RN ynf(2, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:21: bad fp exception: RN ynf(2, -0x1p+0)=-nan, want INVALID got 0
src/math/special/ynf.h:23: bad fp exception: RN ynf(2, -inf)=-nan, want INVALID got 0
FAIL src/math/ynf.exe [status 1]
src/regression/malloc-brk-fail.c:31: malloc(10000) succeeded after memory is filled
FAIL src/regression/malloc-brk-fail.exe [status 1]
src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==0) got 38 "Function not implemented" want 0 "No error information"
src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==0) got 110 "Operation timed out" want 130 "Previous owner died"
src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==1) got 38 "Function not implemented" want 0 "No error information"
src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==1) got 110 "Operation timed out" want 130 "Previous owner died"
FAIL src/regression/pthread-robust-detach-static.exe [status 1]
src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==0) got 38 "Function not implemented" want 0 "No error information"
src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==0) got 110 "Operation timed out" want 130 "Previous owner died"
src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==1) got 38 "Function not implemented" want 0 "No error information"
src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==1) got 110 "Operation timed out" want 130 "Previous owner died"
FAIL src/regression/pthread-robust-detach.exe [status 1]

^ permalink raw reply	[flat|nested] 43+ messages in thread

* Re: [musl] Hexagon DSP support
  2020-07-20 21:26                                 ` sidneym
@ 2020-07-23 21:56                                   ` Szabolcs Nagy
  2020-07-24 17:49                                     ` sidneym
  2020-09-16 20:49                                     ` sidneym
  0 siblings, 2 replies; 43+ messages in thread
From: Szabolcs Nagy @ 2020-07-23 21:56 UTC (permalink / raw)
  To: sidneym; +Cc: 'Rich Felker', musl

* sidneym@codeaurora.org <sidneym@codeaurora.org> [2020-07-20 16:26:58 -0500]:
> I removed fma/fmal/fmax/fmin/fabs from compiler-rt-builtins,
> https://reviews.llvm.org/D82263
> The comparison with musl can be found here:
> https://github.com/quic/musl/compare/hexagon but I've also attached the
> patch.
> 
> An assert in clang when building both musl and libc-test for hexagon was
> fixed by, https://reviews.llvm.org/D80952 prior to this change
> -frounding-math had to be used.
> 
> The test-results are also attached.  Everything is built with the
> tip-of-tree llvm so sometimes results vary but these are the results I got
> from this morning's clone.  The only notable difference in the results would
> be that both fma and fmal fail and this is because of the compiler-rt
> change.  I didn't add fma to musl because it require more complex assembly,
> along the lines you saw in an earlier version with sqrt. 


the fma and sqrt failures are still not fully explained,
e.g. this looks wrong:

src/math/special/fma.h:42: RN fma(0x1p+0,0x1p+0,-0x1p-1074) want 0x1p+0 got -0x1.fffffp-43 ulperr -4503599627370496.000 = -0x1p+52 + 0x0p+0

the only target specific bit in fma is a_clz_64 so i would
check that.

e.g. a_clz_64(1ULL << 42) should give 21
(this computation happens during the fma test case above).

^ permalink raw reply	[flat|nested] 43+ messages in thread

* RE: [musl] Hexagon DSP support
  2020-07-23 21:56                                   ` Szabolcs Nagy
@ 2020-07-24 17:49                                     ` sidneym
  2020-09-16 20:49                                     ` sidneym
  1 sibling, 0 replies; 43+ messages in thread
From: sidneym @ 2020-07-24 17:49 UTC (permalink / raw)
  To: 'Szabolcs Nagy'; +Cc: 'Rich Felker', musl



> -----Original Message-----
> From: Szabolcs Nagy <nsz@port70.net>
> Sent: Thursday, July 23, 2020 4:56 PM
> To: sidneym@codeaurora.org
> Cc: 'Rich Felker' <dalias@libc.org>; musl@lists.openwall.com
> Subject: Re: [musl] Hexagon DSP support
> 
> * sidneym@codeaurora.org <sidneym@codeaurora.org> [2020-07-20
> 16:26:58 -0500]:
> > I removed fma/fmal/fmax/fmin/fabs from compiler-rt-builtins,
> > https://reviews.llvm.org/D82263
> > The comparison with musl can be found here:
> > https://github.com/quic/musl/compare/hexagon but I've also attached
> > the patch.
> >
> > An assert in clang when building both musl and libc-test for hexagon
> > was fixed by, https://reviews.llvm.org/D80952 prior to this change
> > -frounding-math had to be used.
> >
> > The test-results are also attached.  Everything is built with the
> > tip-of-tree llvm so sometimes results vary but these are the results I
> > got from this morning's clone.  The only notable difference in the
> > results would be that both fma and fmal fail and this is because of
> > the compiler-rt change.  I didn't add fma to musl because it require
> > more complex assembly, along the lines you saw in an earlier version
with
> sqrt.
> 
> 
> the fma and sqrt failures are still not fully explained, e.g. this looks
wrong:
> 
> src/math/special/fma.h:42: RN fma(0x1p+0,0x1p+0,-0x1p-1074) want 0x1p+0
> got -0x1.fffffp-43 ulperr -4503599627370496.000 = -0x1p+52 + 0x0p+0
> 
> the only target specific bit in fma is a_clz_64 so i would check that.
> 
> e.g. a_clz_64(1ULL << 42) should give 21 (this computation happens during
> the fma test case above).

Hexagon didn't have a_clz_64 implemented however I added this morning it and
noticed no differences.  I will update the patch with that routine included.

I did notice a compiler regression in how it compiled fma and have asked a
compiler person to take a look.  An older version of our internally
maintained compiler does produce the expected results for the values I used
but later versions do not.  Unfortunately changing optimization levels will
produce different results as well.

Thanks,




^ permalink raw reply	[flat|nested] 43+ messages in thread

* RE: [musl] Hexagon DSP support
  2020-07-23 21:56                                   ` Szabolcs Nagy
  2020-07-24 17:49                                     ` sidneym
@ 2020-09-16 20:49                                     ` sidneym
  2020-09-17  1:32                                       ` 'Rich Felker'
  1 sibling, 1 reply; 43+ messages in thread
From: sidneym @ 2020-09-16 20:49 UTC (permalink / raw)
  To: 'Szabolcs Nagy'; +Cc: 'Rich Felker', musl

[-- Attachment #1: Type: text/plain, Size: 3051 bytes --]



> -----Original Message-----
> From: sidneym@codeaurora.org <sidneym@codeaurora.org>
> Sent: Friday, July 24, 2020 12:50 PM
> To: 'Szabolcs Nagy' <nsz@port70.net>
> Cc: 'Rich Felker' <dalias@libc.org>; 'musl@lists.openwall.com'
> <musl@lists.openwall.com>
> Subject: RE: [musl] Hexagon DSP support
> 
> 
> 
> > -----Original Message-----
> > From: Szabolcs Nagy <nsz@port70.net>
> > Sent: Thursday, July 23, 2020 4:56 PM
> > To: sidneym@codeaurora.org
> > Cc: 'Rich Felker' <dalias@libc.org>; musl@lists.openwall.com
> > Subject: Re: [musl] Hexagon DSP support
> >
> > * sidneym@codeaurora.org <sidneym@codeaurora.org> [2020-07-20
> > 16:26:58 -0500]:
> > > I removed fma/fmal/fmax/fmin/fabs from compiler-rt-builtins,
> > > https://reviews.llvm.org/D82263
> > > The comparison with musl can be found here:
> > > https://github.com/quic/musl/compare/hexagon but I've also attached
> > > the patch.
> > >
> > > An assert in clang when building both musl and libc-test for hexagon
> > > was fixed by, https://reviews.llvm.org/D80952 prior to this change
> > > -frounding-math had to be used.
> > >
> > > The test-results are also attached.  Everything is built with the
> > > tip-of-tree llvm so sometimes results vary but these are the results
> > > I got from this morning's clone.  The only notable difference in the
> > > results would be that both fma and fmal fail and this is because of
> > > the compiler-rt change.  I didn't add fma to musl because it require
> > > more complex assembly, along the lines you saw in an earlier version
> > > with
> > sqrt.
> >
> >
> > the fma and sqrt failures are still not fully explained, e.g. this looks
wrong:
> >
> > src/math/special/fma.h:42: RN fma(0x1p+0,0x1p+0,-0x1p-1074) want
> > 0x1p+0 got -0x1.fffffp-43 ulperr -4503599627370496.000 = -0x1p+52 +
> > 0x0p+0
> >
> > the only target specific bit in fma is a_clz_64 so i would check that.
> >
> > e.g. a_clz_64(1ULL << 42) should give 21 (this computation happens
> > during the fma test case above).
> 
> Hexagon didn't have a_clz_64 implemented however I added this morning it
> and noticed no differences.  I will update the patch with that routine
> included.
> 
> I did notice a compiler regression in how it compiled fma and have asked a
> compiler person to take a look.  An older version of our internally
maintained
> compiler does produce the expected results for the values I used but later
> versions do not.  Unfortunately changing optimization levels will produce
> different results as well.

I've attached updated test results and patch.  The patch doesn't change much
other than adding the above mentioned a_clz_64.  The only other change was
an update to pthread_arch.h for an api update so hexagon conforms with the
rest of musl.

Between updates to llvm and musl both fma and sqrt issues are resolved
provided I compile the library without optimization enabled.  No new tests
fail.

I guess I also need to know what the thoughts are about adding hexagon to
the mainline base.  There are no issues adding from this end.

Thanks,

[-- Attachment #2: add-hexagon.diff --]
[-- Type: application/octet-stream, Size: 43448 bytes --]

diff --git a/arch/hexagon/atomic_arch.h b/arch/hexagon/atomic_arch.h
new file mode 100644
index 00000000..ede55956
--- /dev/null
+++ b/arch/hexagon/atomic_arch.h
@@ -0,0 +1,194 @@
+#define a_ctz_32 a_ctz_32
+static inline int a_ctz_32(unsigned long x)
+{
+	__asm__(
+		"%0 = ct0(%0)\n\t"
+		: "+r"(x));
+	return x;
+}
+
+#define a_ctz_64 a_ctz_64
+static inline int a_ctz_64(uint64_t x)
+{
+	int count;
+	__asm__(
+		"%0 = ct0(%1)\n\t"
+		: "=r"(count) : "r"(x));
+	return count;
+}
+#define a_clz_64 a_clz_64
+static inline int a_clz_64(uint64_t x)
+{
+        int count;
+        __asm__(
+                "%1 = brev(%1)\n\t"
+                "%0 = ct0(%1)\n\t"
+                : "=r"(count) : "r"(x));
+        return count;
+}
+
+#define a_cas a_cas
+static inline int a_cas(volatile int *p, int t, int s)
+{
+	int dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%1)\n\t"
+		"	{ p0 = cmp.eq(%0, %2)\n\t"
+		"	  if (!p0.new) jump:nt 2f }\n\t"
+		"	memw_locked(%1, p0) = %3\n\t"
+		"	if (!p0) jump 1b\n\t"
+		"2:	\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(t), "r"(s)
+		: "p0", "memory" );
+        return dummy;
+}
+
+#define a_cas_p a_cas_p
+static inline void *a_cas_p(volatile void *p, void *t, void *s)
+{
+	return (void *)a_cas(p, (int)t, (int)s);
+}
+
+#define a_swap a_swap
+static inline int a_swap(volatile int *x, int v)
+{
+	int old, dummy;
+	__asm__ __volatile__(
+		"	%1 = %3\n\t"
+		"1:	%0 = memw_locked(%2)\n\t"
+		"	memw_locked(%2, p0) = %1\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(old), "=&r"(dummy)
+		: "r"(x), "r"(v)
+		: "p0", "memory" );
+        return old;
+}
+
+#define a_fetch_add a_fetch_add
+static inline int a_fetch_add(volatile int *x, int v)
+{
+	int old, dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%2)\n\t"
+		"	%1 = add(%0, %3)\n\t"
+		"	memw_locked(%2, p0) = %1\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(old), "=&r"(dummy)
+		: "r"(x), "r"(v)
+		: "p0", "memory" );
+        return old;
+}
+
+#define a_inc a_inc
+static inline void a_inc(volatile int *x)
+{
+	a_fetch_add(x, 1);
+}
+
+#define a_dec a_dec
+static inline void a_dec(volatile int *x)
+{
+	int dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%1)\n\t"
+		"	%0 = add(%0, #-1)\n\t"
+		"	memw_locked(%1, p0) = %0\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(x)
+		: "p0", "memory" );
+}
+
+#define a_store a_store
+static inline void a_store(volatile int *p, int x)
+{
+	int dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%1)\n\t"
+		"	memw_locked(%1, p0) = %2\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(x)
+		: "p0", "memory" );
+}
+
+#define a_barrier a_barrier
+static inline void a_barrier()
+{
+	__asm__ __volatile__ ("barrier" ::: "memory");
+}
+#define a_spin a_spin
+static inline void a_spin()
+{
+	__asm__ __volatile__ ("pause(#255)" :::);
+}
+
+#define a_crash a_crash
+static inline void a_crash()
+{
+	*(volatile char *)0=0;
+}
+
+#define a_and a_and
+static inline void a_and(volatile int *p, int v)
+{
+	int dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%1)\n\t"
+		"	%0 = and(%0, %2)\n\t"
+		"	memw_locked(%1, p0) = %0\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(v)
+		: "p0", "memory" );
+}
+
+#define  a_or a_or
+static inline void a_or(volatile int *p, int v)
+{
+	int dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%1)\n\t"
+		"	%0 = or(%0, %2)\n\t"
+		"	memw_locked(%1, p0) = %0\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(v)
+		: "p0", "memory" );
+}
+
+#define a_or_l a_or_l
+static inline void a_or_l(volatile void *p, long v)
+{
+	a_or(p, v);
+}
+
+#define a_and_64 a_and_64
+static inline void a_and_64(volatile uint64_t *p, uint64_t v)
+{
+	uint64_t dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memd_locked(%1)\n\t"
+		"	%0 = and(%0, %2)\n\t"
+		"	memd_locked(%1, p0) = %0\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(v)
+		: "p0", "memory" );
+}
+
+#define  a_or_64 a_or_64
+static inline void a_or_64(volatile uint64_t *p, uint64_t v)
+{
+	uint64_t dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memd_locked(%1)\n\t"
+		"	%0 = or(%0, %2)\n\t"
+		"	memd_locked(%1, p0) = %0\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(v)
+		: "p0", "memory" );
+}
+
diff --git a/arch/hexagon/bits/alltypes.h.in b/arch/hexagon/bits/alltypes.h.in
new file mode 100644
index 00000000..9d770c7e
--- /dev/null
+++ b/arch/hexagon/bits/alltypes.h.in
@@ -0,0 +1,26 @@
+#define _Addr int
+#define _Int64 long long
+#define _Reg int
+
+#define __BYTE_ORDER 1234
+#define __LONG_MAX 0x7fffffffL
+
+#ifndef __cplusplus
+#ifdef __WCHAR_TYPE__
+TYPEDEF __WCHAR_TYPE__ wchar_t;
+#else
+TYPEDEF long wchar_t;
+#endif
+#endif
+
+TYPEDEF float float_t;
+TYPEDEF double double_t;
+
+#if !defined(__cplusplus)
+TYPEDEF struct { _Alignas(8) long long __ll; long double __ld; } max_align_t;
+#elif defined(__GNUC__)
+TYPEDEF struct { __attribute__((__aligned__(8))) long long __ll; long double __ld; } max_align_t;
+#else
+TYPEDEF struct { alignas(8) long long __ll; long double __ld; } max_align_t;
+#endif
+
diff --git a/arch/hexagon/bits/fenv.h b/arch/hexagon/bits/fenv.h
new file mode 100644
index 00000000..d3349306
--- /dev/null
+++ b/arch/hexagon/bits/fenv.h
@@ -0,0 +1,20 @@
+#define FE_INVALID    (1 << 1)
+#define FE_DIVBYZERO  (1 << 2)
+#define FE_OVERFLOW   (1 << 3)
+#define FE_UNDERFLOW  (1 << 4)
+#define FE_INEXACT    (1 << 5)
+#define FE_ALL_EXCEPT (FE_DIVBYZERO | FE_INEXACT | FE_INVALID | \
+                       FE_OVERFLOW | FE_UNDERFLOW)
+
+#define FE_TONEAREST  0x00
+#define FE_TOWARDZERO 0x01
+#define FE_DOWNWARD   0x02
+#define FE_UPWARD     0x03
+
+typedef unsigned long fexcept_t;
+
+typedef struct {
+	unsigned long __cw;
+} fenv_t;
+
+#define FE_DFL_ENV      ((const fenv_t *) -1)
diff --git a/arch/hexagon/bits/float.h b/arch/hexagon/bits/float.h
new file mode 100644
index 00000000..c4a655e7
--- /dev/null
+++ b/arch/hexagon/bits/float.h
@@ -0,0 +1,16 @@
+#define FLT_EVAL_METHOD 0
+
+#define LDBL_TRUE_MIN 4.94065645841246544177e-324L
+#define LDBL_MIN 2.22507385850720138309e-308L
+#define LDBL_MAX 1.79769313486231570815e+308L
+#define LDBL_EPSILON 2.22044604925031308085e-16L
+
+#define LDBL_MANT_DIG 53
+#define LDBL_MIN_EXP (-1021)
+#define LDBL_MAX_EXP 1024
+
+#define LDBL_DIG 15
+#define LDBL_MIN_10_EXP (-307)
+#define LDBL_MAX_10_EXP 308
+
+#define DECIMAL_DIG 17
diff --git a/arch/hexagon/bits/ipcstat.h b/arch/hexagon/bits/ipcstat.h
new file mode 100644
index 00000000..4f4fcb0c
--- /dev/null
+++ b/arch/hexagon/bits/ipcstat.h
@@ -0,0 +1 @@
+#define IPC_STAT 0x102
diff --git a/arch/hexagon/bits/msg.h b/arch/hexagon/bits/msg.h
new file mode 100644
index 00000000..7bbbb2bf
--- /dev/null
+++ b/arch/hexagon/bits/msg.h
@@ -0,0 +1,18 @@
+struct msqid_ds {
+	struct ipc_perm msg_perm;
+	unsigned long __msg_stime_lo;
+	unsigned long __msg_stime_hi;
+	unsigned long __msg_rtime_lo;
+	unsigned long __msg_rtime_hi;
+	unsigned long __msg_ctime_lo;
+	unsigned long __msg_ctime_hi;
+	unsigned long msg_cbytes;
+	msgqnum_t msg_qnum;
+	msglen_t msg_qbytes;
+	pid_t msg_lspid;
+	pid_t msg_lrpid;
+	unsigned long __unused[2];
+	time_t msg_stime;
+	time_t msg_rtime;
+	time_t msg_ctime;
+};
diff --git a/arch/hexagon/bits/posix.h b/arch/hexagon/bits/posix.h
new file mode 100644
index 00000000..30a38714
--- /dev/null
+++ b/arch/hexagon/bits/posix.h
@@ -0,0 +1,2 @@
+#define _POSIX_V6_ILP32_OFFBIG  1
+#define _POSIX_V7_ILP32_OFFBIG  1
diff --git a/arch/hexagon/bits/sem.h b/arch/hexagon/bits/sem.h
new file mode 100644
index 00000000..65661542
--- /dev/null
+++ b/arch/hexagon/bits/sem.h
@@ -0,0 +1,13 @@
+struct semid_ds {
+	struct ipc_perm sem_perm;
+	unsigned long __sem_otime_lo;
+	unsigned long __sem_otime_hi;
+	unsigned long __sem_ctime_lo;
+	unsigned long __sem_ctime_hi;
+	unsigned short sem_nsems;
+	char __sem_nsems_pad[sizeof(long)-sizeof(short)];
+	long __unused3;
+	long __unused4;
+	time_t sem_otime;
+	time_t sem_ctime;
+};
diff --git a/arch/hexagon/bits/setjmp.h b/arch/hexagon/bits/setjmp.h
new file mode 100644
index 00000000..5ee5e49f
--- /dev/null
+++ b/arch/hexagon/bits/setjmp.h
@@ -0,0 +1,4 @@
+
+typedef struct {
+	long regs[16];
+} __jmp_buf[1] __attribute__((aligned (8)));
diff --git a/arch/hexagon/bits/shm.h b/arch/hexagon/bits/shm.h
new file mode 100644
index 00000000..725fb469
--- /dev/null
+++ b/arch/hexagon/bits/shm.h
@@ -0,0 +1,31 @@
+#define SHMLBA 4096
+
+struct shmid_ds {
+	struct ipc_perm shm_perm;
+	size_t shm_segsz;
+	unsigned long __shm_atime_lo;
+	unsigned long __shm_atime_hi;
+	unsigned long __shm_dtime_lo;
+	unsigned long __shm_dtime_hi;
+	unsigned long __shm_ctime_lo;
+	unsigned long __shm_ctime_hi;
+	pid_t shm_cpid;
+	pid_t shm_lpid;
+	unsigned long shm_nattch;
+	unsigned long __pad1;
+	unsigned long __pad2;
+	unsigned long __pad3;
+	time_t shm_atime;
+	time_t shm_dtime;
+	time_t shm_ctime;
+};
+
+struct shminfo {
+	unsigned long shmmax, shmmin, shmmni, shmseg, shmall, __unused[4];
+};
+
+struct shm_info {
+	int __used_ids;
+	unsigned long shm_tot, shm_rss, shm_swp;
+	unsigned long __swap_attempts, __swap_successes;
+};
diff --git a/arch/hexagon/bits/signal.h b/arch/hexagon/bits/signal.h
new file mode 100644
index 00000000..7a3b36d0
--- /dev/null
+++ b/arch/hexagon/bits/signal.h
@@ -0,0 +1,105 @@
+#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
+
+#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
+#define MINSIGSTKSZ 2048
+#define SIGSTKSZ 8192
+#endif
+
+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
+typedef int greg_t, gregset_t[18];
+typedef struct sigcontext
+{
+	unsigned long  r0,  r1,  r2,  r3;
+	unsigned long  r4,  r5,  r6,  r7;
+	unsigned long  r8,  r9, r10, r11;
+	unsigned long r12, r13, r14, r15;
+	unsigned long r16, r17, r18, r19;
+	unsigned long r20, r21, r22, r23;
+	unsigned long r24, r25, r26, r27;
+	unsigned long r28, r29, r30, r31;
+	unsigned long sa0;
+	unsigned long lc0;
+	unsigned long sa1;
+	unsigned long lc1;
+	unsigned long m0;
+	unsigned long m1;
+	unsigned long usr;
+	unsigned long p3_0;
+	unsigned long gp;
+	unsigned long ugp;
+	unsigned long pc;
+	unsigned long cause;
+	unsigned long badva;
+	unsigned long pad1;
+	unsigned long pad2;
+	unsigned long pad3;
+} __attribute__((__aligned__(8))) mcontext_t;
+#else
+typedef struct {
+	unsigned long __regs[48];
+} __attribute__((__aligned__(8))) mcontext_t;
+#endif
+
+struct sigaltstack {
+	void *ss_sp;
+	int ss_flags;
+	size_t ss_size;
+};
+
+typedef struct __ucontext {
+	unsigned long uc_flags;
+	struct __ucontext *uc_link;
+	stack_t uc_stack;
+	mcontext_t uc_mcontext;
+	sigset_t uc_sigmask;
+//	unsigned long long uc_regspace[64];
+} ucontext_t;
+
+#define SA_NOCLDSTOP  1
+#define SA_NOCLDWAIT  2
+#define SA_SIGINFO    4
+#define SA_ONSTACK    0x08000000
+#define SA_RESTART    0x10000000
+#define SA_NODEFER    0x40000000
+#define SA_RESETHAND  0x80000000
+#define SA_RESTORER   0x04000000
+
+#endif
+
+#define SIGHUP    1
+#define SIGINT    2
+#define SIGQUIT   3
+#define SIGILL    4
+#define SIGTRAP   5
+#define SIGABRT   6
+#define SIGIOT    SIGABRT
+#define SIGBUS    7
+#define SIGFPE    8
+#define SIGKILL   9
+#define SIGUSR1   10
+#define SIGSEGV   11
+#define SIGUSR2   12
+#define SIGPIPE   13
+#define SIGALRM   14
+#define SIGTERM   15
+#define SIGSTKFLT 16
+#define SIGCHLD   17
+#define SIGCONT   18
+#define SIGSTOP   19
+#define SIGTSTP   20
+#define SIGTTIN   21
+#define SIGTTOU   22
+#define SIGURG    23
+#define SIGXCPU   24
+#define SIGXFSZ   25
+#define SIGVTALRM 26
+#define SIGPROF   27
+#define SIGWINCH  28
+#define SIGIO     29
+#define SIGPOLL   29
+#define SIGPWR    30
+#define SIGSYS    31
+#define SIGUNUSED SIGSYS
+
+#define _NSIG 65
diff --git a/arch/hexagon/bits/stat.h b/arch/hexagon/bits/stat.h
new file mode 100644
index 00000000..55e81fd9
--- /dev/null
+++ b/arch/hexagon/bits/stat.h
@@ -0,0 +1,20 @@
+/* copied from kernel definition, but with padding replaced
+ * by the corresponding correctly-sized userspace types. */
+struct stat {
+	dev_t st_dev;
+	ino_t st_ino;
+	mode_t st_mode;
+	nlink_t st_nlink;
+	uid_t st_uid;
+	gid_t st_gid;
+	dev_t st_rdev;
+	unsigned long __pad;
+	off_t st_size;
+	blksize_t st_blksize;
+	int __pad2;
+	blkcnt_t st_blocks;
+	struct timespec st_atim;
+	struct timespec st_mtim;
+	struct timespec st_ctim;
+	unsigned __unused[2];
+};
diff --git a/arch/hexagon/bits/stdint.h b/arch/hexagon/bits/stdint.h
new file mode 100644
index 00000000..d1b27121
--- /dev/null
+++ b/arch/hexagon/bits/stdint.h
@@ -0,0 +1,20 @@
+typedef int32_t int_fast16_t;
+typedef int32_t int_fast32_t;
+typedef uint32_t uint_fast16_t;
+typedef uint32_t uint_fast32_t;
+
+#define INT_FAST16_MIN  INT32_MIN
+#define INT_FAST32_MIN  INT32_MIN
+
+#define INT_FAST16_MAX  INT32_MAX
+#define INT_FAST32_MAX  INT32_MAX
+
+#define UINT_FAST16_MAX UINT32_MAX
+#define UINT_FAST32_MAX UINT32_MAX
+
+#define INTPTR_MIN      INT32_MIN
+#define INTPTR_MAX      INT32_MAX
+#define UINTPTR_MAX     UINT32_MAX
+#define PTRDIFF_MIN     INT32_MIN
+#define PTRDIFF_MAX     INT32_MAX
+#define SIZE_MAX        UINT32_MAX
diff --git a/arch/hexagon/bits/syscall.h.in b/arch/hexagon/bits/syscall.h.in
new file mode 100644
index 00000000..77ca3fa0
--- /dev/null
+++ b/arch/hexagon/bits/syscall.h.in
@@ -0,0 +1,317 @@
+#define __NR_io_setup 0
+#define __NR_io_destroy 1
+#define __NR_io_submit 2
+#define __NR_io_cancel 3
+#define __NR_io_getevents 4
+#define __NR_setxattr 5
+#define __NR_lsetxattr 6
+#define __NR_fsetxattr 7
+#define __NR_getxattr 8
+#define __NR_lgetxattr 9
+#define __NR_fgetxattr 10
+#define __NR_listxattr 11
+#define __NR_llistxattr 12
+#define __NR_flistxattr 13
+#define __NR_removexattr 14
+#define __NR_lremovexattr 15
+#define __NR_fremovexattr 16
+#define __NR_getcwd 17
+#define __NR_lookup_dcookie 18
+#define __NR_eventfd2 19
+#define __NR_epoll_create1 20
+#define __NR_epoll_ctl 21
+#define __NR_epoll_pwait 22
+#define __NR_dup 23
+#define __NR_dup3 24
+#define __NR3264_fcntl 25
+#define __NR_inotify_init1 26
+#define __NR_inotify_add_watch 27
+#define __NR_inotify_rm_watch 28
+#define __NR_ioctl 29
+#define __NR_ioprio_set 30
+#define __NR_ioprio_get 31
+#define __NR_flock 32
+#define __NR_mknodat 33
+#define __NR_mkdirat 34
+#define __NR_unlinkat 35
+#define __NR_symlinkat 36
+#define __NR_linkat 37
+#define __NR_renameat 38
+#define __NR_umount2 39
+#define __NR_mount 40
+#define __NR_pivot_root 41
+#define __NR_nfsservctl 42
+#define __NR3264_statfs 43
+#define __NR3264_fstatfs 44
+#define __NR3264_truncate 45
+#define __NR3264_ftruncate 46
+#define __NR_fallocate 47
+#define __NR_faccessat 48
+#define __NR_chdir 49
+#define __NR_fchdir 50
+#define __NR_chroot 51
+#define __NR_fchmod 52
+#define __NR_fchmodat 53
+#define __NR_fchownat 54
+#define __NR_fchown 55
+#define __NR_openat 56
+#define __NR_close 57
+#define __NR_vhangup 58
+#define __NR_pipe2 59
+#define __NR_quotactl 60
+#define __NR_getdents64 61
+#define __NR3264_lseek 62
+#define __NR_read 63
+#define __NR_write 64
+#define __NR_readv 65
+#define __NR_writev 66
+#define __NR_pread64 67
+#define __NR_pwrite64 68
+#define __NR_preadv 69
+#define __NR_pwritev 70
+#define __NR3264_sendfile 71
+#define __NR_pselect6 72
+#define __NR_ppoll 73
+#define __NR_signalfd4 74
+#define __NR_vmsplice 75
+#define __NR_splice 76
+#define __NR_tee 77
+#define __NR_readlinkat 78
+#define __NR3264_fstatat 79
+#define __NR3264_fstat 80
+#define __NR_sync 81
+#define __NR_fsync 82
+#define __NR_fdatasync 83
+#define __NR_sync_file_range2 84
+#define __NR_sync_file_range 84
+#define __NR_timerfd_create 85
+#define __NR_timerfd_settime 86
+#define __NR_timerfd_gettime 87
+#define __NR_utimensat 88
+#define __NR_acct 89
+#define __NR_capget 90
+#define __NR_capset 91
+#define __NR_personality 92
+#define __NR_exit 93
+#define __NR_exit_group 94
+#define __NR_waitid 95
+#define __NR_set_tid_address 96
+#define __NR_unshare 97
+#define __NR_futex 98
+#define __NR_set_robust_list 99
+#define __NR_get_robust_list 100
+#define __NR_nanosleep 101
+#define __NR_getitimer 102
+#define __NR_setitimer 103
+#define __NR_kexec_load 104
+#define __NR_init_module 105
+#define __NR_delete_module 106
+#define __NR_timer_create 107
+#define __NR_timer_gettime 108
+#define __NR_timer_getoverrun 109
+#define __NR_timer_settime 110
+#define __NR_timer_delete 111
+#define __NR_clock_settime 112
+#define __NR_clock_gettime 113
+#define __NR_clock_getres 114
+#define __NR_clock_nanosleep 115
+#define __NR_syslog 116
+#define __NR_ptrace 117
+#define __NR_sched_setparam 118
+#define __NR_sched_setscheduler 119
+#define __NR_sched_getscheduler 120
+#define __NR_sched_getparam 121
+#define __NR_sched_setaffinity 122
+#define __NR_sched_getaffinity 123
+#define __NR_sched_yield 124
+#define __NR_sched_get_priority_max 125
+#define __NR_sched_get_priority_min 126
+#define __NR_sched_rr_get_interval 127
+#define __NR_restart_syscall 128
+#define __NR_kill 129
+#define __NR_tkill 130
+#define __NR_tgkill 131
+#define __NR_sigaltstack 132
+#define __NR_rt_sigsuspend 133
+#define __NR_rt_sigaction 134
+#define __NR_rt_sigprocmask 135
+#define __NR_rt_sigpending 136
+#define __NR_rt_sigtimedwait 137
+#define __NR_rt_sigqueueinfo 138
+#define __NR_rt_sigreturn 139
+#define __NR_setpriority 140
+#define __NR_getpriority 141
+#define __NR_reboot 142
+#define __NR_setregid 143
+#define __NR_setgid 144
+#define __NR_setreuid 145
+#define __NR_setuid 146
+#define __NR_setresuid 147
+#define __NR_getresuid 148
+#define __NR_setresgid 149
+#define __NR_getresgid 150
+#define __NR_setfsuid 151
+#define __NR_setfsgid 152
+#define __NR_times 153
+#define __NR_setpgid 154
+#define __NR_getpgid 155
+#define __NR_getsid 156
+#define __NR_setsid 157
+#define __NR_getgroups 158
+#define __NR_setgroups 159
+#define __NR_uname 160
+#define __NR_sethostname 161
+#define __NR_setdomainname 162
+#define __NR_getrlimit 163
+#define __NR_setrlimit 164
+#define __NR_getrusage 165
+#define __NR_umask 166
+#define __NR_prctl 167
+#define __NR_getcpu 168
+#define __NR_gettimeofday 169
+#define __NR_settimeofday 170
+#define __NR_adjtimex 171
+#define __NR_getpid 172
+#define __NR_getppid 173
+#define __NR_getuid 174
+#define __NR_geteuid 175
+#define __NR_getgid 176
+#define __NR_getegid 177
+#define __NR_gettid 178
+#define __NR_sysinfo 179
+#define __NR_mq_open 180
+#define __NR_mq_unlink 181
+#define __NR_mq_timedsend 182
+#define __NR_mq_timedreceive 183
+#define __NR_mq_notify 184
+#define __NR_mq_getsetattr 185
+#define __NR_msgget 186
+#define __NR_msgctl 187
+#define __NR_msgrcv 188
+#define __NR_msgsnd 189
+#define __NR_semget 190
+#define __NR_semctl 191
+#define __NR_semtimedop 192
+#define __NR_semop 193
+#define __NR_shmget 194
+#define __NR_shmctl 195
+#define __NR_shmat 196
+#define __NR_shmdt 197
+#define __NR_socket 198
+#define __NR_socketpair 199
+#define __NR_bind 200
+#define __NR_listen 201
+#define __NR_accept 202
+#define __NR_connect 203
+#define __NR_getsockname 204
+#define __NR_getpeername 205
+#define __NR_sendto 206
+#define __NR_recvfrom 207
+#define __NR_setsockopt 208
+#define __NR_getsockopt 209
+#define __NR_shutdown 210
+#define __NR_sendmsg 211
+#define __NR_recvmsg 212
+#define __NR_readahead 213
+#define __NR_brk 214
+#define __NR_munmap 215
+#define __NR_mremap 216
+#define __NR_add_key 217
+#define __NR_request_key 218
+#define __NR_keyctl 219
+#define __NR_clone 220
+#define __NR_execve 221
+#define __NR3264_mmap 222
+#define __NR3264_fadvise64 223
+#define __NR_swapon 224
+#define __NR_swapoff 225
+#define __NR_mprotect 226
+#define __NR_msync 227
+#define __NR_mlock 228
+#define __NR_munlock 229
+#define __NR_mlockall 230
+#define __NR_munlockall 231
+#define __NR_mincore 232
+#define __NR_madvise 233
+#define __NR_remap_file_pages 234
+#define __NR_mbind 235
+#define __NR_get_mempolicy 236
+#define __NR_set_mempolicy 237
+#define __NR_migrate_pages 238
+#define __NR_move_pages 239
+#define __NR_rt_tgsigqueueinfo 240
+#define __NR_perf_event_open 241
+#define __NR_accept4 242
+#define __NR_recvmmsg 243
+#define __NR_arch_specific_syscall 244
+#define __NR_wait4 260
+#define __NR_prlimit64 261
+#define __NR_fanotify_init 262
+#define __NR_fanotify_mark 263
+#define __NR_name_to_handle_at 264
+#define __NR_open_by_handle_at 265
+#define __NR_clock_adjtime 266
+#define __NR_syncfs 267
+#define __NR_setns 268
+#define __NR_sendmmsg 269
+#define __NR_process_vm_readv 270
+#define __NR_process_vm_writev 271
+#define __NR_kcmp 272
+#define __NR_finit_module 273
+#define __NR_sched_setattr 274
+#define __NR_sched_getattr 275
+#define __NR_renameat2 276
+#define __NR_seccomp 277
+#define __NR_getrandom 278
+#define __NR_memfd_create 279
+#define __NR_bpf 280
+#define __NR_execveat 281
+#define __NR_userfaultfd 282
+#define __NR_membarrier 283
+#define __NR_mlock2 284
+#define __NR_copy_file_range 285
+#define __NR_preadv2 286
+#define __NR_pwritev2 287
+#define __NR_pkey_mprotect 288
+#define __NR_pkey_alloc 289
+#define __NR_pkey_free 290
+#define __NR_statx 291
+#define __NR_clock_gettime64 403
+#define __NR_clock_settime64 404
+#define __NR_clock_adjtime64 405
+#define __NR_clock_getres_time64 406
+#define __NR_clock_nanosleep_time64 407
+#define __NR_timer_gettime64 408
+#define __NR_timer_settime64 409
+#define __NR_timerfd_gettime64 410
+#define __NR_timerfd_settime64 411
+#define __NR_utimensat_time64 412
+#define __NR_pselect6_time64 413
+#define __NR_ppoll_time64 414
+#define __NR_io_pgetevents_time64 416
+#define __NR_recvmmsg_time64 417
+#define __NR_mq_timedsend_time64 418
+#define __NR_mq_timedreceive_time64 419
+#define __NR_semtimedop_time64 420
+#define __NR_rt_sigtimedwait_time64 421
+#define __NR_futex_time64 422
+#define __NR_sched_rr_get_interval_time64 423
+#define __NR_syscalls (__NR_sched_rr_get_interval_time64+1)
+#define __NR_fcntl  __NR3264_fcntl
+#define __NR_fstatfs  __NR3264_fstatfs
+#define __NR_truncate  __NR3264_truncate
+#define __NR_ftruncate  __NR3264_ftruncate
+#define __NR_lseek  __NR3264_lseek
+#define __NR_sendfile  __NR3264_sendfile
+#define __NR_newfstatat  __NR3264_fstatat
+#define __NR_fcntl64  __NR3264_fcntl
+#define __NR_statfs64  __NR3264_statfs
+#define __NR_fstatfs64  __NR3264_fstatfs
+#define __NR_truncate64  __NR3264_truncate
+#define __NR_ftruncate64  __NR3264_ftruncate
+#define __NR__llseek  __NR3264_lseek
+#define __NR_sendfile64  __NR3264_sendfile
+#define __NR_fstatat64  __NR3264_fstatat
+#define __NR_fstat64  __NR3264_fstat
+#define __NR_mmap2  __NR3264_mmap
+#define __NR_fadvise64_64  __NR3264_fadvise64
diff --git a/arch/hexagon/crt_arch.h b/arch/hexagon/crt_arch.h
new file mode 100644
index 00000000..331a797e
--- /dev/null
+++ b/arch/hexagon/crt_arch.h
@@ -0,0 +1,35 @@
+__asm__(
+".weak _DYNAMIC \n"
+".hidden _DYNAMIC \n"
+".text \n"
+".global " START " \n"
+".type " START ", %function \n"
+START ": \n"
+"                                       // Find _DYNAMIC\n"
+"       jump 1f\n"
+".word  _DYNAMIC - .\n"
+"1:     r2 = pc\n"
+"       r2 = add(r2, #-4)\n"
+"       r1 = memw(r2)\n"
+"       r1 = add(r2, r1)\n"
+"	r30 = #0			// Signals the end of backtrace\n"
+"	r0 = r29			// Pointer to argc/argv\n"
+"	r29 = and(r29, #-16)		// Align\n"
+"	memw(r29+#-8) = r29\n"
+"	r29 = add(r29, #-8)\n"
+"	call " START "_c \n"
+".size " START ", .-" START "\n"
+);
+
+__asm__(
+".section \".note.ABI-tag\", \"a\" \n"
+".align 4 \n"
+".long 1f - 0f		/* name length */ \n"
+".long 3f - 2f		/* data length */ \n"
+".long  1		/* note type */ \n"
+"0:	.asciz \"GNU\"	/* vendor name seems like this should be MUSL but lldb doesn't agree.*/ \n"
+"1:	.align 4		 \n"
+"2:	.long 0	/* linux */ \n"
+"	.long 3,0,0 \n"
+"3:	.align 4 \n"
+);
diff --git a/arch/hexagon/kstat.h b/arch/hexagon/kstat.h
new file mode 100644
index 00000000..92625f36
--- /dev/null
+++ b/arch/hexagon/kstat.h
@@ -0,0 +1,21 @@
+struct kstat {
+	dev_t st_dev;
+	ino_t st_ino;
+	mode_t st_mode;
+	nlink_t st_nlink;
+	uid_t st_uid;
+	gid_t st_gid;
+	dev_t st_rdev;
+	unsigned long __pad;
+	off_t st_size;
+	blksize_t st_blksize;
+	int __pad2;
+	blkcnt_t st_blocks;
+	long st_atime_sec;
+	long st_atime_nsec;
+	long st_mtime_sec;
+	long st_mtime_nsec;
+	long st_ctime_sec;
+	long st_ctime_nsec;
+	unsigned __unused[2];
+};
diff --git a/arch/hexagon/pthread_arch.h b/arch/hexagon/pthread_arch.h
new file mode 100644
index 00000000..b614fdd1
--- /dev/null
+++ b/arch/hexagon/pthread_arch.h
@@ -0,0 +1,13 @@
+// Hexagon supports variant 2 TLS.
+static inline uintptr_t __get_tp()
+{
+  uintptr_t tp;
+  __asm__ ( "%0 = ugp" : "=r"(tp));
+  return tp;
+}
+
+#define TP_ADJ(p) (p)
+
+#define CANCEL_REG_IP 43
+
+#define MC_PC pc
diff --git a/arch/hexagon/reloc.h b/arch/hexagon/reloc.h
new file mode 100644
index 00000000..14085872
--- /dev/null
+++ b/arch/hexagon/reloc.h
@@ -0,0 +1,25 @@
+#include <endian.h>
+
+#if __BYTE_ORDER == __LITTLE_ENDIAN
+#define ENDIAN_SUFFIX "el"
+#else
+#define ENDIAN_SUFFIX ""
+#endif
+
+#define FP_SUFFIX ""
+
+#define LDSO_ARCH "hexagon" ENDIAN_SUFFIX FP_SUFFIX
+
+#define TPOFF_K 0
+
+#define REL_SYMBOLIC    R_HEX_32
+#define REL_GOT         R_HEX_GLOB_DAT
+#define REL_PLT         R_HEX_JMP_SLOT
+#define REL_RELATIVE    R_HEX_RELATIVE
+#define REL_COPY        R_HEX_COPY
+#define REL_DTPMOD      R_HEX_DTPMOD_32
+#define REL_TPOFF       R_HEX_TPREL_32
+#define REL_DTPOFF      R_HEX_DTPREL_32
+
+#define CRTJMP(pc,sp) __asm__ __volatile__( \
+	"r29 = %1 ; jumpr %0" : : "r"(pc), "r"(sp) : "memory" )
diff --git a/arch/hexagon/syscall_arch.h b/arch/hexagon/syscall_arch.h
new file mode 100644
index 00000000..e6defe41
--- /dev/null
+++ b/arch/hexagon/syscall_arch.h
@@ -0,0 +1,77 @@
+
+#define __SYSCALL_LL_E(x) \
+((union { long long ll; long l[2]; }){ .ll = x }).l[0], \
+((union { long long ll; long l[2]; }){ .ll = x }).l[1]
+#define __SYSCALL_LL_O(x) 0, __SYSCALL_LL_E((x))
+
+#define __asm_syscall(...) do { \
+    __asm__ __volatile__ ( "trap0(#1)" \
+    : "=r"(r0) : __VA_ARGS__ : "memory"); \
+    return r0; \
+    } while (0)
+
+static inline long __syscall0(long n)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0");
+  __asm_syscall("r"(r6));
+}
+
+static inline long __syscall1(long n, long a)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  __asm_syscall("r"(r6), "0"(r0));
+}
+
+static inline long __syscall2(long n, long a, long b)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  register long r1 __asm__("r1") = b;
+  __asm_syscall("r"(r6), "0"(r0), "r"(r1));
+}
+
+static inline long __syscall3(long n, long a, long b, long c)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  register long r1 __asm__("r1") = b;
+  register long r2 __asm__("r2") = c;
+  __asm_syscall("r"(r6), "0"(r0), "r"(r1), "r"(r2));
+}
+
+static inline long __syscall4(long n, long a, long b, long c, long d)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  register long r1 __asm__("r1") = b;
+  register long r2 __asm__("r2") = c;
+  register long r3 __asm__("r3") = d;
+  __asm_syscall("r"(r6), "0"(r0), "r"(r1), "r"(r2), "r"(r3));
+}
+
+static inline long __syscall5(long n, long a, long b, long c, long d, long e)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  register long r1 __asm__("r1") = b;
+  register long r2 __asm__("r2") = c;
+  register long r3 __asm__("r3") = d;
+  register long r4 __asm__("r4") = e;
+  __asm_syscall("r"(r6), "0"(r0), "r"(r1), "r"(r2), "r"(r3), "r"(r4));
+}
+
+static inline long __syscall6(long n, long a, long b, long c, long d, long e, long f)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  register long r1 __asm__("r1") = b;
+  register long r2 __asm__("r2") = c;
+  register long r3 __asm__("r3") = d;
+  register long r4 __asm__("r4") = e;
+  register long r5 __asm__("r5") = f;
+  __asm_syscall("r"(r6), "0"(r0), "r"(r1), "r"(r2), "r"(r3), "r"(r4), "r"(r5));
+}
+
+#define SYSCALL_FADVISE_6_ARG
diff --git a/configure b/configure
index 947adf41..edbee0b5 100755
--- a/configure
+++ b/configure
@@ -323,6 +323,7 @@ case "$target" in
 # Catch these early to simplify matching for 32-bit archs
 arm*) ARCH=arm ;;
 aarch64*) ARCH=aarch64 ;;
+hexagon*) ARCH=hexagon ;;
 i?86-nt32*) ARCH=nt32 ;;
 i?86*) ARCH=i386 ;;
 x86_64-x32*|x32*|x86_64*x32) ARCH=x32 ;;
diff --git a/include/elf.h b/include/elf.h
index 549f92c1..54251c24 100644
--- a/include/elf.h
+++ b/include/elf.h
@@ -3284,6 +3284,107 @@ enum
 #define R_RISCV_SET32           56
 #define R_RISCV_32_PCREL        57
 
+#define R_HEX_NONE               0
+#define R_HEX_B22_PCREL          1
+#define R_HEX_B15_PCREL          2
+#define R_HEX_B7_PCREL           3
+#define R_HEX_LO16               4
+#define R_HEX_HI16               5
+#define R_HEX_32                 6
+#define R_HEX_16                 7
+#define R_HEX_8                  8
+#define R_HEX_GPREL16_0          9
+#define R_HEX_GPREL16_1         10
+#define R_HEX_GPREL16_2         11
+#define R_HEX_GPREL16_3         12
+#define R_HEX_HL16              13
+#define R_HEX_B13_PCREL         14
+#define R_HEX_B9_PCREL          15
+#define R_HEX_B32_PCREL_X       16
+#define R_HEX_32_6_X            17
+#define R_HEX_B22_PCREL_X       18
+#define R_HEX_B15_PCREL_X       19
+#define R_HEX_B13_PCREL_X       20
+#define R_HEX_B9_PCREL_X        21
+#define R_HEX_B7_PCREL_X        22
+#define R_HEX_16_X              23
+#define R_HEX_12_X              24
+#define R_HEX_11_X              25
+#define R_HEX_10_X              26
+#define R_HEX_9_X               27
+#define R_HEX_8_X               28
+#define R_HEX_7_X               29
+#define R_HEX_6_X               30
+#define R_HEX_32_PCREL          31
+#define R_HEX_COPY              32
+#define R_HEX_GLOB_DAT          33
+#define R_HEX_JMP_SLOT          34
+#define R_HEX_RELATIVE          35
+#define R_HEX_PLT_B22_PCREL     36
+#define R_HEX_GOTOFF_LO16       37
+#define R_HEX_GOTOFF_HI16       38
+#define R_HEX_GOTOFF_32         39
+#define R_HEX_GOT_LO16          40
+#define R_HEX_GOT_HI16          41
+#define R_HEX_GOT_32            42
+#define R_HEX_GOT_16            43
+#define R_HEX_DTPMOD_32         44
+#define R_HEX_DTPREL_LO16       45
+#define R_HEX_DTPREL_HI16       46
+#define R_HEX_DTPREL_32         47
+#define R_HEX_DTPREL_16         48
+#define R_HEX_GD_PLT_B22_PCREL  49
+#define R_HEX_GD_GOT_LO16       50
+#define R_HEX_GD_GOT_HI16       51
+#define R_HEX_GD_GOT_32         52
+#define R_HEX_GD_GOT_16         53
+#define R_HEX_IE_LO16           54
+#define R_HEX_IE_HI16           55
+#define R_HEX_IE_32             56
+#define R_HEX_IE_GOT_LO16       57
+#define R_HEX_IE_GOT_HI16       58
+#define R_HEX_IE_GOT_32         59
+#define R_HEX_IE_GOT_16         60
+#define R_HEX_TPREL_LO16        61
+#define R_HEX_TPREL_HI16        62
+#define R_HEX_TPREL_32          63
+#define R_HEX_TPREL_16          64
+#define R_HEX_6_PCREL_X         65
+#define R_HEX_GOTREL_32_6_X     66
+#define R_HEX_GOTREL_16_X       67
+#define R_HEX_GOTREL_11_X       68
+#define R_HEX_GOT_32_6_X        69
+#define R_HEX_GOT_16_X          70
+#define R_HEX_GOT_11_X          71
+#define R_HEX_DTPREL_32_6_X     72
+#define R_HEX_DTPREL_16_X       73
+#define R_HEX_DTPREL_11_X       74
+#define R_HEX_GD_GOT_32_6_X     75
+#define R_HEX_GD_GOT_16_X       76
+#define R_HEX_GD_GOT_11_X       77
+#define R_HEX_IE_32_6_X         78
+#define R_HEX_IE_16_X           79
+#define R_HEX_IE_GOT_32_6_X     80
+#define R_HEX_IE_GOT_16_X       81
+#define R_HEX_IE_GOT_11_X       82
+#define R_HEX_TPREL_32_6_X      83
+#define R_HEX_TPREL_16_X        84
+#define R_HEX_TPREL_11_X        85
+#define R_HEX_LD_PLT_B22_PCREL  86
+#define R_HEX_LD_GOT_LO16       87
+#define R_HEX_LD_GOT_HI16       88
+#define R_HEX_LD_GOT_32         89
+#define R_HEX_LD_GOT_16         90
+#define R_HEX_LD_GOT_32_6_X     91
+#define R_HEX_LD_GOT_16_X       92
+#define R_HEX_LD_GOT_11_X       93
+#define R_HEX_23_REG            94
+#define R_HEX_GD_PLT_B22_PCREL_X 95
+#define R_HEX_GD_PLT_B32_PCREL_X 96
+#define R_HEX_LD_PLT_B22_PCREL_X 97
+#define R_HEX_LD_PLT_B32_PCREL_X 98
+
+
 #ifdef __cplusplus
 }
 #endif
diff --git a/src/fenv/hexagon/fenv.S b/src/fenv/hexagon/fenv.S
new file mode 100644
index 00000000..07b89764
--- /dev/null
+++ b/src/fenv/hexagon/fenv.S
@@ -0,0 +1,143 @@
+/*
+The Hexagon user status register includes five status fields which work as
+sticky flags for the five IEEE-defined exception conditions: inexact, overflow, underflow,
+divide by zero, and invalid. A sticky flag is set when the corresponding exception occurs,
+and remains set until explicitly cleared.
+
+  usr:23:22 - Rounding Mode
+  00: Round toward nearest
+  01: Round toward zero
+  10: Downward Round toward negative infinity
+  11: Upward Round toward positive infinity
+
+  usr:5 - Floating-point IEEE Inexact Sticky Flag.
+  usr:4 - Floating-point IEEE Underflow Sticky Flag.
+  usr:3 - Floating-point IEEE Overflow Sticky Flag.
+  usr:2 - Floating-point IEEE Divide-By-Zero Sticky Flag.
+  usr:1 - Floating-point IEEE Invalid Sticky Flag.
+  usr:0 - Sticky Saturation Overflow, when 1 saturation occurred.
+*/
+
+#define FE_ALL_EXCEPT 0x3f
+
+#define USR_FE_MASK 0x3fc0003f
+#define RND_MASK    (0x3 << 22)
+#define RND_NEAR    (0x0 << 22)
+#define RND_ZERO    (0x1 << 22)
+#define RND_DOWN    (0x2 << 22)
+#define RND_UP      (0x3 << 22)
+
+/*
+int feclearexcept(int mask)
+*/
+.global feclearexcept
+.type feclearexcept,@function
+feclearexcept:
+  {
+    r0 = and(r0, #FE_ALL_EXCEPT) // Only touch the IEEE flag bits.
+    r1 = usr
+  }
+  r1 = and(r1, ~r0)
+  {
+    usr = r1
+    r0 = #0
+    jumpr r31
+  }
+
+/*
+int feraiseexcept(int mask)
+*/
+.global feraiseexcept
+.type feraiseexcept,@function
+feraiseexcept:
+  {
+    r0 = and(r0, #FE_ALL_EXCEPT) // Only touch the IEEE flag bits.
+    r1 = usr
+  }
+  r1 = or(r1, r0)
+  {
+    usr = r1
+    r0 = #0
+    jumpr r31
+  }
+
+
+/*
+int fetestexcept(int mask)
+*/
+.global fetestexcept
+.type fetestexcept,@function
+fetestexcept:
+  {
+    r0 = and(r0, #FE_ALL_EXCEPT) // Only touch the IEEE flag bits.
+    r1 = usr
+  }
+  {
+    r0 = and(r1, r0)
+    jumpr r31
+  }
+
+/*
+int fegetround(void)
+*/
+.global fegetround
+.type fegetround,@function
+fegetround:
+  r0 = usr
+  r0 = and(r0, ##RND_MASK)
+  r0 = lsr(r0, #22);
+  jumpr r31
+
+/*
+int __fesetround(int r)
+*/
+.global __fesetround
+.type __fesetround,@function
+__fesetround:
+  {
+    r0 = and(r0, #0x3) // Can only be 0,1,2, or 3
+    r1 = usr
+    r2 = ##RND_MASK
+  }
+  {
+    r1 = and (r1, ~r2)  // Clear the current rounding bits.
+    r0 = asl (r0, #22)
+  }
+  r1 = or(r1, r0)
+  usr = r1
+  {
+    r0 = #0; jumpr r31
+  }
+
+/*
+int fegetenv(fenv_t *envp)
+*/
+.global fegetenv
+.type fegetenv,@function
+fegetenv:
+  r1 = usr
+  memw(r0) = r1
+  {
+    r0 = #0
+    jumpr r31
+  }
+
+/*
+int fesetenv(const fenv_t *envp)
+*/
+.global fesetenv
+.type fesetenv,@function
+fesetenv:
+  { p0 = cmp.eq(r0, #-1); if (p0.new) r1 = #0 }  /* The default mode */
+  if (!p0) r1 = memw(r0)                         /* stored in fenv_t */
+
+  r2 = ##USR_FE_MASK // USR:FE bit mask
+  r1 = and(r1, r2)   // MASK the input bits with the FE bits
+  r3 = usr
+  r3 = and(r3, ~r2)  // Clear any currently set FE bits
+  r3 = or(r3, r1)   // Set the newbits
+  usr = r3
+  {
+    r0 = #0
+    jumpr r31
+  }
diff --git a/src/math/hexagon/fmaf.c b/src/math/hexagon/fmaf.c
new file mode 100644
index 00000000..7ce1996c
--- /dev/null
+++ b/src/math/hexagon/fmaf.c
@@ -0,0 +1,8 @@
+#include <math.h>
+
+float fmaf(float x, float y, float z)
+{
+	__asm__ ("%[z]+=sfmpy(%[x], %[y])"
+                 : [z]"+r"(z) : [x]"r"(x), [y]"r"(y));
+	return z;
+}
diff --git a/src/math/hexagon/fmaxf.c b/src/math/hexagon/fmaxf.c
new file mode 100644
index 00000000..0dc52b25
--- /dev/null
+++ b/src/math/hexagon/fmaxf.c
@@ -0,0 +1,8 @@
+#include <math.h>
+
+float fmaxf(float x, float y)
+{
+	__asm__ ("%[x]=sfmax(%[x], %[y])"
+                : [x]"+r"(x) : [y]"r"(y));
+	return x;
+}
diff --git a/src/math/hexagon/fminf.c b/src/math/hexagon/fminf.c
new file mode 100644
index 00000000..aeb20ae0
--- /dev/null
+++ b/src/math/hexagon/fminf.c
@@ -0,0 +1,8 @@
+#include <math.h>
+
+float fminf(float x, float y)
+{
+	__asm__ ("%[x]=sfmin(%[x], %[y])"
+                : [x]"+r"(x) : [y]"r"(y));
+	return x;
+}
diff --git a/src/setjmp/hexagon/longjmp.s b/src/setjmp/hexagon/longjmp.s
new file mode 100644
index 00000000..691b67dd
--- /dev/null
+++ b/src/setjmp/hexagon/longjmp.s
@@ -0,0 +1,25 @@
+.text
+.global _longjmp
+.global longjmp
+.type _longjmp,%function
+.type longjmp,%function
+_longjmp:
+longjmp:
+    { r17:16=memd(r0+#0)
+      r19:18=memd(r0+#8) }
+    { r21:20=memd(r0+#16)
+      r23:22=memd(r0+#24) }
+    { r25:24=memd(r0+#32)
+      r27:26=memd(r0+#40) }
+    { r29:28=memd(r0+#48)
+      r31:30=memd(r0+#56) }
+
+    r0 = r1
+    r1 = #0
+    p0 = cmp.eq(r0,r1)
+    if (!p0) jumpr r31
+    r0 = #1
+
+    jumpr r31
+.size _longjmp, .-_longjmp
+.size longjmp, .-longjmp
diff --git a/src/setjmp/hexagon/setjmp.s b/src/setjmp/hexagon/setjmp.s
new file mode 100644
index 00000000..d29f036e
--- /dev/null
+++ b/src/setjmp/hexagon/setjmp.s
@@ -0,0 +1,24 @@
+.text
+.global __setjmp
+.global _setjmp
+.global setjmp
+.type __setjmp,@function
+.type _setjmp,@function
+.type setjmp,@function
+__setjmp:
+_setjmp:
+setjmp:
+    { memd(r0+#0)=r17:16
+      memd(r0+#8)=r19:18 }
+    { memd(r0+#16)=r21:20
+      memd(r0+#24)=r23:22 }
+    { memd(r0+#32)=r25:24
+      memd(r0+#40)=r27:26 }
+    { memd(r0+#48)=r29:28
+      memd(r0+#56)=r31:30 }
+
+    r0 = #0
+    jumpr r31
+.size __setjmp, .-__setjmp
+.size _setjmp, .-_setjmp
+.size setjmp, .-setjmp
diff --git a/src/signal/hexagon/restore.s b/src/signal/hexagon/restore.s
new file mode 100644
index 00000000..f43f5e02
--- /dev/null
+++ b/src/signal/hexagon/restore.s
@@ -0,0 +1,11 @@
+// TODO - Test this if sa_restorer is ever supported in our kernel
+.global __restore
+.type __restore,%function
+.global __restore_rt
+.type __restore_rt,%function
+__restore:
+__restore_rt:
+	r6 = #139				// SYS_rt_sigreturn
+	trap0(#0)
+.size __restore, .-__restore
+.size __restore_rt, .-__restore_rt
diff --git a/src/signal/hexagon/sigsetjmp.s b/src/signal/hexagon/sigsetjmp.s
new file mode 100644
index 00000000..f1aaf165
--- /dev/null
+++ b/src/signal/hexagon/sigsetjmp.s
@@ -0,0 +1,28 @@
+.global sigsetjmp
+.global __sigsetjmp
+.type sigsetjmp,@function
+.type __sigsetjmp,@function
+.balign 4
+sigsetjmp:
+__sigsetjmp:
+	// if savemask is 0 sigsetjmp behaves like setjmp
+	{
+		p0 = cmp.eq(r1, #0)
+		if (p0.new) jump:t ##setjmp
+	}
+	{
+		memw(r0+#64+4+8) = r16  // save r16 in __ss[2]
+		memw(r0+#64)   = r31  // save linkregister in __fl
+		r16 = r0
+	}
+		call ##setjmp
+	{
+		r1 = r0;
+		r0  = r16             // restore r0
+		r31 = memw(r16+#64)   // restore linkregister
+		r16 = memw(r16+#64+4+8) // restore r16 from __ss[2]
+	}
+.hidden __sigsetjmp_tail
+	jump ##__sigsetjmp_tail
+
+.size	sigsetjmp, .-sigsetjmp
diff --git a/src/thread/hexagon/__set_thread_area.s b/src/thread/hexagon/__set_thread_area.s
new file mode 100644
index 00000000..87a991b7
--- /dev/null
+++ b/src/thread/hexagon/__set_thread_area.s
@@ -0,0 +1,7 @@
+.global __set_thread_area
+.type   __set_thread_area,@function
+__set_thread_area:
+	{ ugp = r0
+	  r0 = #0
+	  jumpr r31 }
+.size __set_thread_area, .-__set_thread_area
diff --git a/src/thread/hexagon/__unmapself.s b/src/thread/hexagon/__unmapself.s
new file mode 100644
index 00000000..c47dce21
--- /dev/null
+++ b/src/thread/hexagon/__unmapself.s
@@ -0,0 +1,11 @@
+#include <syscall.h>
+
+.global __unmapself
+.type   __unmapself,%function
+__unmapself:
+	r6 = #215			// SYS_munmap
+	trap0(#1)
+	r6 = #93			// SYS_exit
+	trap0(#1)
+	jumpr r31
+.size __unmapself, .-__unmapself
diff --git a/src/thread/hexagon/clone.s b/src/thread/hexagon/clone.s
new file mode 100644
index 00000000..42aab67a
--- /dev/null
+++ b/src/thread/hexagon/clone.s
@@ -0,0 +1,37 @@
+// __clone(func, stack, flags, arg, ptid, tls, ctid)
+//         r0,   r1,    r2,    r3,  r4,   r5,  stack
+
+// tid = syscall(SYS_clone, flags, stack, ptid, ctid, tls)
+//               r6,        r0,    r1,    r2,   r3,   r4
+// if (tid != 0) return
+// func(arg)
+// syscall(SYS_exit)
+
+.text
+.global __clone
+.type   __clone,%function
+__clone:
+	allocframe(#8)
+	// Save pointers for later
+	{ r11 = r0
+	  r10 = r3 }
+
+	// Set up syscall args - The stack must be 8 byte aligned.
+	{ r0 = r2
+	  r1 = and(r1, ##0xfffffff8)
+	  r2 = r4 }
+	{
+	  r3 = memw(r30+#8)
+	  r4 = r5 }
+	r6 = #220			// SYS_clone
+	trap0(#1)
+
+	p0 = cmp.eq(r0, #0)
+	if (!p0) dealloc_return
+
+	{ r0 = r10
+	  callr r11 }
+
+	r6 = #93			// SYS_exit
+	trap0(#1)
+.size __clone, .-__clone
diff --git a/src/thread/hexagon/syscall_cp.s b/src/thread/hexagon/syscall_cp.s
new file mode 100644
index 00000000..50383cad
--- /dev/null
+++ b/src/thread/hexagon/syscall_cp.s
@@ -0,0 +1,35 @@
+// __syscall_cp_asm(&self->cancel, nr,  u, v, w, x, y,    z)
+//                  r0             r1  r2 r3 r4 r5  stack stack
+
+// syscall(nr,  u, v, w, x, y, z)
+//         r6  r0 r1 r2 r3 r4 r5
+
+.text
+.global __cp_begin
+.hidden __cp_begin
+.global __cp_end
+.hidden __cp_end
+.global __cp_cancel
+.hidden __cp_cancel
+.hidden __cancel
+.global __syscall_cp_asm
+.hidden __syscall_cp_asm
+.type __syscall_cp_asm,%function
+__syscall_cp_asm:
+__cp_begin:
+	r0 = memw(r0+#0)
+	{
+	  p0 = cmp.eq(r0, #0); if (!p0.new) jump:nt __cancel
+	}
+	{ r6 = r1
+	  r1:0 = combine(r3, r2)
+	  r3:2 = combine(r5, r4) }
+	{ r4 = memw(r29+#0)
+	  r5 = memw(r29+#4) }
+	trap0(#1)
+__cp_end:
+	jumpr r31
+.size __syscall_cp_asm, .-__syscall_cp_asm
+__cp_cancel:
+        jump __cancel
+.size __cp_cancel, .-__cp_cancel

[-- Attachment #3: libc_test_REPORT --]
[-- Type: application/octet-stream, Size: 42187 bytes --]

FAIL src/api/main.exe [status 1]
clang-12: error: no such file or directory: 'src/api/unistd.o'
src/api/unistd.c:87:3: error: use of undeclared identifier '_CS_POSIX_V7_THREADS_CFLAGS'
C(_CS_POSIX_V7_THREADS_CFLAGS)
  ^
src/api/unistd.c:88:3: error: use of undeclared identifier '_CS_POSIX_V7_THREADS_LDFLAGS'
C(_CS_POSIX_V7_THREADS_LDFLAGS)
  ^
src/api/unistd.c:117:3: error: use of undeclared identifier '_PC_TIMESTAMP_RESOLUTION'
C(_PC_TIMESTAMP_RESOLUTION)
  ^
src/api/unistd.c:238:3: error: use of undeclared identifier '_SC_XOPEN_UUCP'
C(_SC_XOPEN_UUCP)
  ^
src/api/unistd.c:87:3: error: use of undeclared identifier '_CS_POSIX_V7_THREADS_CFLAGS'
C(_CS_POSIX_V7_THREADS_CFLAGS)
  ^
src/api/unistd.c:88:3: error: use of undeclared identifier '_CS_POSIX_V7_THREADS_LDFLAGS'
C(_CS_POSIX_V7_THREADS_LDFLAGS)
  ^
src/api/unistd.c:117:3: error: use of undeclared identifier '_PC_TIMESTAMP_RESOLUTION'
C(_PC_TIMESTAMP_RESOLUTION)
  ^
src/api/unistd.c:238:3: error: use of undeclared identifier '_SC_XOPEN_UUCP'
C(_SC_XOPEN_UUCP)
  ^
8 errors generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
src/functional/dlopen.c:39: dlsym main failed: Symbol not found: main
FAIL src/functional/dlopen.exe [status 1]
clang-12: warning: argument unused during compilation: '-rdynamic' [-Wunused-command-line-argument]
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:87: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:87: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:108: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:108: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
FAIL src/functional/pthread_mutex_pi-static.exe [status 1]
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:87: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:87: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:108: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:108: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
FAIL src/functional/pthread_mutex_pi.exe [status 1]
src/functional/pthread_robust.c:39: pthread_mutexattr_setrobust(&mtx_a, PTHREAD_MUTEX_ROBUST) failed: (pshared==0, pi==0) Function not implemented (setting robust attribute)
FAIL src/functional/pthread_robust-static.exe [timed out]
src/functional/pthread_robust.c:39: pthread_mutexattr_setrobust(&mtx_a, PTHREAD_MUTEX_ROBUST) failed: (pshared==0, pi==0) Function not implemented (setting robust attribute)
FAIL src/functional/pthread_robust.exe [timed out]
src/functional/strptime.c:23: "%F": failed to parse "1856-07-10"
src/functional/strptime.c:23: "%s": failed to parse "683078400"
src/functional/strptime.c:47: "%z": failed to parse "+0200"
src/functional/strptime.c:47: "%z": failed to parse "-0530"
src/functional/strptime.c:47: "%z": failed to parse "-06"
FAIL src/functional/strptime-static.exe [status 1]
src/functional/strptime.c:23: "%F": failed to parse "1856-07-10"
src/functional/strptime.c:23: "%s": failed to parse "683078400"
src/functional/strptime.c:47: "%z": failed to parse "+0200"
src/functional/strptime.c:47: "%z": failed to parse "-0530"
src/functional/strptime.c:47: "%z": failed to parse "-06"
FAIL src/functional/strptime.exe [status 1]
src/functional/utime.c:63: futimens(fd, ((struct timespec[2]){{.tv_sec=1LL<<32},{.tv_sec=1LL<<32}})) == 0 failed: Not supported
FAIL src/functional/utime-static.exe [status 1]
src/functional/utime.c:63: futimens(fd, ((struct timespec[2]){{.tv_sec=1LL<<32},{.tv_sec=1LL<<32}})) == 0 failed: Not supported
FAIL src/functional/utime.exe [status 1]
X src/math/special/acosh.h:9: RN acosh(0x1.001f1c62cf304p+0) want 0x1.f8d125ff71ccp-6 got 0x1.f8d125ff71cc2p-6 ulperr 1.853 = 0x1p+1 + -0x1.2d785ap-3
X src/math/special/acosh.h:10: RN acosh(0x1.00788c223616fp+0) want 0x1.f0cb8ee812621p-5 got 0x1.f0cb8ee812623p-5 ulperr 1.724 = 0x1p+1 + -0x1.1b0c1ap-2
X src/math/special/acosh.h:11: RN acosh(0x1.007b7a37c7606p+0) want 0x1.f6cb68859ae3p-5 got 0x1.f6cb68859ae2ep-5 ulperr -1.855 = -0x1p+1 + 0x1.280488p-3
X src/math/special/acosh.h:12: RN acosh(0x1.01d173033243cp+0) want 0x1.e7e1b18d99376p-4 got 0x1.e7e1b18d99378p-4 ulperr 1.930 = 0x1p+1 + -0x1.1f3d3ep-4
X src/math/special/acosh.h:13: RN acosh(0x1.01d8f20e90409p+0) want 0x1.ebca3eea5cda5p-4 got 0x1.ebca3eea5cda3p-4 ulperr -1.652 = -0x1p+1 + 0x1.648602p-2
X src/math/special/acosh.h:14: RN acosh(0x1.01ef6122e68bep+0) want 0x1.f74df150afc94p-4 got 0x1.f74df150afc92p-4 ulperr -1.762 = -0x1p+1 + 0x1.e79556p-3
X src/math/special/acosh.h:15: RN acosh(0x1.06822faf07879p+0) want 0x1.ccd73cbc4af78p-3 got 0x1.ccd73cbc4af7ap-3 ulperr 1.674 = 0x1p+1 + -0x1.4df79ep-2
X src/math/special/acosh.h:17: RN acosh(0x1.069d65411ec51p+0) want 0x1.d0928b08facbap-3 got 0x1.d0928b08facbcp-3 ulperr 1.785 = 0x1p+1 + -0x1.b83338p-3
X src/math/special/acosh.h:18: RN acosh(0x1.071d6b2713d08p+0) want 0x1.e1bc6a6c345fdp-3 got 0x1.e1bc6a6c345ffp-3 ulperr 1.818 = 0x1p+1 + -0x1.74a04ep-3
X src/math/special/acosh.h:19: RN acosh(0x1.0728405f5140cp+0) want 0x1.e328ebe92b32cp-3 got 0x1.e328ebe92b32ep-3 ulperr 1.790 = 0x1p+1 + -0x1.ae89ap-3
X src/math/special/acosh.h:20: RN acosh(0x1.07bd2c5c01bcbp+0) want 0x1.f6513c44c131p-3 got 0x1.f6513c44c1312p-3 ulperr 1.719 = 0x1p+1 + -0x1.203932p-2
X src/math/special/acosh.h:21: RN acosh(0x1.1aae7c452c859p+0) want 0x1.cf8d69288e386p-2 got 0x1.cf8d69288e384p-2 ulperr -1.723 = -0x1p+1 + 0x1.1b325ap-2
X src/math/special/acosh.h:23: RN acosh(0x1.1b50764626f1ep+0) want 0x1.d4ec67c71794p-2 got 0x1.d4ec67c717942p-2 ulperr 1.738 = 0x1p+1 + -0x1.0c09dap-2
src/math/special/acosh.h:9: RN acoshl(0x1.001f1c62cf304p+0) want 0x1.f8d125ff71ccp-6 got 0x1.f8d125ff71cc2p-6 ulperr 1.853 = 0x1p+1 + -0x1.2d785ap-3
src/math/special/acosh.h:10: RN acoshl(0x1.00788c223616fp+0) want 0x1.f0cb8ee812621p-5 got 0x1.f0cb8ee812623p-5 ulperr 1.724 = 0x1p+1 + -0x1.1b0c1ap-2
src/math/special/acosh.h:11: RN acoshl(0x1.007b7a37c7606p+0) want 0x1.f6cb68859ae3p-5 got 0x1.f6cb68859ae2ep-5 ulperr -1.855 = -0x1p+1 + 0x1.280488p-3
src/math/special/acosh.h:12: RN acoshl(0x1.01d173033243cp+0) want 0x1.e7e1b18d99376p-4 got 0x1.e7e1b18d99378p-4 ulperr 1.930 = 0x1p+1 + -0x1.1f3d3ep-4
src/math/special/acosh.h:13: RN acoshl(0x1.01d8f20e90409p+0) want 0x1.ebca3eea5cda5p-4 got 0x1.ebca3eea5cda3p-4 ulperr -1.652 = -0x1p+1 + 0x1.648602p-2
src/math/special/acosh.h:14: RN acoshl(0x1.01ef6122e68bep+0) want 0x1.f74df150afc94p-4 got 0x1.f74df150afc92p-4 ulperr -1.762 = -0x1p+1 + 0x1.e79556p-3
src/math/special/acosh.h:15: RN acoshl(0x1.06822faf07879p+0) want 0x1.ccd73cbc4af78p-3 got 0x1.ccd73cbc4af7ap-3 ulperr 1.674 = 0x1p+1 + -0x1.4df79ep-2
src/math/special/acosh.h:17: RN acoshl(0x1.069d65411ec51p+0) want 0x1.d0928b08facbap-3 got 0x1.d0928b08facbcp-3 ulperr 1.785 = 0x1p+1 + -0x1.b83338p-3
src/math/special/acosh.h:18: RN acoshl(0x1.071d6b2713d08p+0) want 0x1.e1bc6a6c345fdp-3 got 0x1.e1bc6a6c345ffp-3 ulperr 1.818 = 0x1p+1 + -0x1.74a04ep-3
src/math/special/acosh.h:19: RN acoshl(0x1.0728405f5140cp+0) want 0x1.e328ebe92b32cp-3 got 0x1.e328ebe92b32ep-3 ulperr 1.790 = 0x1p+1 + -0x1.ae89ap-3
src/math/special/acosh.h:20: RN acoshl(0x1.07bd2c5c01bcbp+0) want 0x1.f6513c44c131p-3 got 0x1.f6513c44c1312p-3 ulperr 1.719 = 0x1p+1 + -0x1.203932p-2
src/math/special/acosh.h:21: RN acoshl(0x1.1aae7c452c859p+0) want 0x1.cf8d69288e386p-2 got 0x1.cf8d69288e384p-2 ulperr -1.723 = -0x1p+1 + 0x1.1b325ap-2
src/math/special/acosh.h:23: RN acoshl(0x1.1b50764626f1ep+0) want 0x1.d4ec67c71794p-2 got 0x1.d4ec67c717942p-2 ulperr 1.738 = 0x1p+1 + -0x1.0c09dap-2
FAIL src/math/acoshl.exe [status 1]
X src/math/special/asinh.h:7: RN asinh(0x1.fbdd0eedf8143p-3) want 0x1.f6cc20d7a594ap-3 got 0x1.f6cc20d7a594cp-3 ulperr 1.513 = 0x1p+1 + -0x1.f327a8p-2
X src/math/special/asinh.h:8: RN asinh(0x1.df2723491f88fp-3) want 0x1.dae2c8444900cp-3 got 0x1.dae2c8444900ap-3 ulperr -1.551 = -0x1p+1 + 0x1.cb8b86p-2
X src/math/special/asinh.h:9: RN asinh(0x1.ef675c6541305p-3) want 0x1.eab20432c9598p-3 got 0x1.eab20432c959ap-3 ulperr 1.568 = 0x1p+1 + -0x1.ba9e34p-2
X src/math/special/asinh.h:10: RN asinh(0x1.f19df3a1722a9p-3) want 0x1.ecd8a7f621554p-3 got 0x1.ecd8a7f621552p-3 ulperr -1.535 = -0x1p+1 + 0x1.dbc1a8p-2
X src/math/special/asinh.h:11: RN asinh(0x1.f1af09dcfa7d6p-3) want 0x1.ece942815ceccp-3 got 0x1.ece942815cecap-3 ulperr -1.526 = -0x1p+1 + 0x1.e5bb5p-2
X src/math/special/asinh.h:12: RN asinh(0x1.f339ebbeac5bap-3) want 0x1.ee68f10a49c42p-3 got 0x1.ee68f10a49c44p-3 ulperr 1.529 = 0x1p+1 + -0x1.e28cbp-2
X src/math/special/asinh.h:13: RN asinh(0x1.f424275dc8787p-3) want 0x1.ef4c7fcb51c56p-3 got 0x1.ef4c7fcb51c54p-3 ulperr -1.642 = -0x1p+1 + 0x1.6e4e9p-2
X src/math/special/asinh.h:14: RN asinh(0x1.f60d54a133665p-3) want 0x1.f127a8dec0c2p-3 got 0x1.f127a8dec0c1ep-3 ulperr -1.512 = -0x1p+1 + 0x1.f3c9eap-2
X src/math/special/asinh.h:15: RN asinh(0x1.fdccdaf285ffdp-3) want 0x1.f8ad4bed7af4cp-3 got 0x1.f8ad4bed7af4ap-3 ulperr -1.576 = -0x1p+1 + 0x1.b1f1f8p-2
X src/math/special/asinh.h:16: RN asinh(0x1.ff5bec94924c7p-3) want 0x1.fa30836c3949ap-3 got 0x1.fa30836c39498p-3 ulperr -1.533 = -0x1p+1 + 0x1.de989p-2
X src/math/special/asinh.h:17: RN asinh(0x1.028e8fd61c8a5p-2) want 0x1.ffc55bd02e9dep-3 got 0x1.ffc55bd02e9ep-3 ulperr 1.670 = 0x1p+1 + -0x1.523c08p-2
X src/math/special/asinh.h:18: RN asinh(0x1.dc71794e1f137p-2) want 0x1.ccbd41a7d058ap-2 got 0x1.ccbd41a7d0588p-2 ulperr -1.585 = -0x1p+1 + 0x1.a944b8p-2
X src/math/special/asinh.h:19: RN asinh(0x1.df308e177c3cbp-2) want 0x1.cf3a638145d7ap-2 got 0x1.cf3a638145d78p-2 ulperr -1.505 = -0x1p+1 + 0x1.fb3684p-2
X src/math/special/asinh.h:20: RN asinh(0x1.ea94e1e267746p-2) want 0x1.d9862533f65f6p-2 got 0x1.d9862533f65f4p-2 ulperr -1.579 = -0x1p+1 + 0x1.af51ecp-2
X src/math/special/asinh.h:21: RN asinh(0x1.ecd4f07608dc7p-2) want 0x1.db8d6fdcc6d74p-2 got 0x1.db8d6fdcc6d76p-2 ulperr 1.517 = 0x1p+1 + -0x1.eeb48p-2
X src/math/special/asinh.h:22: RN asinh(0x1.f30656c78ee7ep-2) want 0x1.e1204e364a186p-2 got 0x1.e1204e364a188p-2 ulperr 1.576 = 0x1p+1 + -0x1.b23ffp-2
X src/math/special/asinh.h:23: RN asinh(0x1.f5c0c6e41b969p-2) want 0x1.e393d3dc3b70ap-2 got 0x1.e393d3dc3b70cp-2 ulperr 1.562 = 0x1p+1 + -0x1.c06dbep-2
X src/math/special/asinh.h:24: RN asinh(0x1.09c58725300e7p-1) want 0x1.fe2c7f25fb172p-2 got 0x1.fe2c7f25fb174p-2 ulperr 1.579 = 0x1p+1 + -0x1.ae9df6p-2
src/math/special/asinh.h:7: RN asinhl(0x1.fbdd0eedf8143p-3) want 0x1.f6cc20d7a594ap-3 got 0x1.f6cc20d7a594cp-3 ulperr 1.513 = 0x1p+1 + -0x1.f327a8p-2
src/math/special/asinh.h:8: RN asinhl(0x1.df2723491f88fp-3) want 0x1.dae2c8444900cp-3 got 0x1.dae2c8444900ap-3 ulperr -1.551 = -0x1p+1 + 0x1.cb8b86p-2
src/math/special/asinh.h:9: RN asinhl(0x1.ef675c6541305p-3) want 0x1.eab20432c9598p-3 got 0x1.eab20432c959ap-3 ulperr 1.568 = 0x1p+1 + -0x1.ba9e34p-2
src/math/special/asinh.h:10: RN asinhl(0x1.f19df3a1722a9p-3) want 0x1.ecd8a7f621554p-3 got 0x1.ecd8a7f621552p-3 ulperr -1.535 = -0x1p+1 + 0x1.dbc1a8p-2
src/math/special/asinh.h:11: RN asinhl(0x1.f1af09dcfa7d6p-3) want 0x1.ece942815ceccp-3 got 0x1.ece942815cecap-3 ulperr -1.526 = -0x1p+1 + 0x1.e5bb5p-2
src/math/special/asinh.h:12: RN asinhl(0x1.f339ebbeac5bap-3) want 0x1.ee68f10a49c42p-3 got 0x1.ee68f10a49c44p-3 ulperr 1.529 = 0x1p+1 + -0x1.e28cbp-2
src/math/special/asinh.h:13: RN asinhl(0x1.f424275dc8787p-3) want 0x1.ef4c7fcb51c56p-3 got 0x1.ef4c7fcb51c54p-3 ulperr -1.642 = -0x1p+1 + 0x1.6e4e9p-2
src/math/special/asinh.h:14: RN asinhl(0x1.f60d54a133665p-3) want 0x1.f127a8dec0c2p-3 got 0x1.f127a8dec0c1ep-3 ulperr -1.512 = -0x1p+1 + 0x1.f3c9eap-2
src/math/special/asinh.h:15: RN asinhl(0x1.fdccdaf285ffdp-3) want 0x1.f8ad4bed7af4cp-3 got 0x1.f8ad4bed7af4ap-3 ulperr -1.576 = -0x1p+1 + 0x1.b1f1f8p-2
src/math/special/asinh.h:16: RN asinhl(0x1.ff5bec94924c7p-3) want 0x1.fa30836c3949ap-3 got 0x1.fa30836c39498p-3 ulperr -1.533 = -0x1p+1 + 0x1.de989p-2
src/math/special/asinh.h:17: RN asinhl(0x1.028e8fd61c8a5p-2) want 0x1.ffc55bd02e9dep-3 got 0x1.ffc55bd02e9ep-3 ulperr 1.670 = 0x1p+1 + -0x1.523c08p-2
src/math/special/asinh.h:18: RN asinhl(0x1.dc71794e1f137p-2) want 0x1.ccbd41a7d058ap-2 got 0x1.ccbd41a7d0588p-2 ulperr -1.585 = -0x1p+1 + 0x1.a944b8p-2
src/math/special/asinh.h:19: RN asinhl(0x1.df308e177c3cbp-2) want 0x1.cf3a638145d7ap-2 got 0x1.cf3a638145d78p-2 ulperr -1.505 = -0x1p+1 + 0x1.fb3684p-2
src/math/special/asinh.h:20: RN asinhl(0x1.ea94e1e267746p-2) want 0x1.d9862533f65f6p-2 got 0x1.d9862533f65f4p-2 ulperr -1.579 = -0x1p+1 + 0x1.af51ecp-2
src/math/special/asinh.h:21: RN asinhl(0x1.ecd4f07608dc7p-2) want 0x1.db8d6fdcc6d74p-2 got 0x1.db8d6fdcc6d76p-2 ulperr 1.517 = 0x1p+1 + -0x1.eeb48p-2
src/math/special/asinh.h:22: RN asinhl(0x1.f30656c78ee7ep-2) want 0x1.e1204e364a186p-2 got 0x1.e1204e364a188p-2 ulperr 1.576 = 0x1p+1 + -0x1.b23ffp-2
src/math/special/asinh.h:23: RN asinhl(0x1.f5c0c6e41b969p-2) want 0x1.e393d3dc3b70ap-2 got 0x1.e393d3dc3b70cp-2 ulperr 1.562 = 0x1p+1 + -0x1.c06dbep-2
src/math/special/asinh.h:24: RN asinhl(0x1.09c58725300e7p-1) want 0x1.fe2c7f25fb172p-2 got 0x1.fe2c7f25fb174p-2 ulperr 1.579 = 0x1p+1 + -0x1.ae9df6p-2
FAIL src/math/asinhl.exe [status 1]
X src/math/special/erfc.h:6: RN erfc(0x1.5db559fe5c0bap+0) want 0x1.b53cf571d328fp-5 got 0x1.b53cf571d328cp-5 ulperr -2.609 = -0x1.8p+1 + 0x1.900982p-2
src/math/special/erfc.h:6: RN erfcl(0x1.5db559fe5c0bap+0) want 0x1.b53cf571d328fp-5 got 0x1.b53cf571d328cp-5 ulperr -2.609 = -0x1.8p+1 + 0x1.900982p-2
FAIL src/math/erfcl.exe [status 1]
X src/math/special/exp2.h:12: bad fp exception: RN exp2(-0x1.ff8p+9)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/special/exp2.h:18: bad fp exception: RN exp2(-0x1.ff8p+9)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/special/exp2.h:20: bad fp exception: RN exp2(-0x1p+10)=0x1p-1024, want 0 got INEXACT|UNDERFLOW
X src/math/special/exp2.h:21: bad fp exception: RN exp2(-0x1.004p+10)=0x1p-1025, want 0 got INEXACT|UNDERFLOW
X src/math/special/exp2.h:22: bad fp exception: RN exp2(-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:12: bad fp exception: RN exp2l(-0x1.ff8p+9)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:18: bad fp exception: RN exp2l(-0x1.ff8p+9)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:20: bad fp exception: RN exp2l(-0x1p+10)=0x1p-1024, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:21: bad fp exception: RN exp2l(-0x1.004p+10)=0x1p-1025, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:22: bad fp exception: RN exp2l(-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
FAIL src/math/exp2l.exe [status 1]
src/math/special/ilogb.h:1: bad fp exception: RN ilogb(0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogb.h:2: bad fp exception: RN ilogb(-0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogb.h:6: bad fp exception: RN ilogb(inf)=2147483647, want INVALID got 0
src/math/special/ilogb.h:7: bad fp exception: RN ilogb(-inf)=2147483647, want INVALID got 0
src/math/special/ilogb.h:8: bad fp exception: RN ilogb(nan)=-2147483648, want INVALID got 0
FAIL src/math/ilogb.exe [status 1]
src/math/special/ilogbf.h:1: bad fp exception: RN ilogbf(0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogbf.h:2: bad fp exception: RN ilogbf(-0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogbf.h:6: bad fp exception: RN ilogbf(inf)=2147483647, want INVALID got 0
src/math/special/ilogbf.h:7: bad fp exception: RN ilogbf(-inf)=2147483647, want INVALID got 0
src/math/special/ilogbf.h:8: bad fp exception: RN ilogbf(-nan)=-2147483648, want INVALID got 0
FAIL src/math/ilogbf.exe [status 1]
src/math/special/ilogb.h:1: bad fp exception: RN ilogbl(0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogb.h:2: bad fp exception: RN ilogbl(-0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogb.h:6: bad fp exception: RN ilogbl(inf)=2147483647, want INVALID got 0
src/math/special/ilogb.h:7: bad fp exception: RN ilogbl(-inf)=2147483647, want INVALID got 0
src/math/special/ilogb.h:8: bad fp exception: RN ilogbl(nan)=-2147483648, want INVALID got 0
FAIL src/math/ilogbl.exe [status 1]
X src/math/special/j0.h:7: RN j0(-0x1.33d132fd04a92p+1) want 0x1.092b2a541a68ep-19 got 0x1.092b2a541b1ap-19 ulperr 2833.704 = 0x1.624p+11 + -0x1.2ebdbp-2
X src/math/special/j0.h:8: RN j0(-0x1.33d15297be06fp+1) want 0x1.5352913be3275p-26 got 0x1.5352913ddb41bp-26 ulperr 2064806.000 = 0x1.f81a6p+20 + 0x1.c281e2p-7
X src/math/special/j0.h:9: RN j0(0x1.33d152e971b4p+1) want -0x1.19b7921f03c8ep-54 got -0x1.00209921727cbp-54 ulperr 450179413049344.000 = 0x1.996f9p+48 + 0x1.ece5dp-5
X src/math/special/j0.h:10: RN j0(0x1.6148f5b2c2e45p+2) want -0x1.fbb40985f6e34p-56 got -0x1.ebcb069d486ccp-56 ulperr 279895217274880.000 = 0x1.fd205ep+47 + -0x1.1ac8a8p-2
X src/math/special/j0.h:11: RN j0(0x1.14eb56cccdecap+3) want -0x1.6e8eeb22e5818p-54 got -0x1.6d2a820627412p-54 ulperr 24492348801024.000 = 0x1.64691cp+44 + -0x1.63ab44p-2
X src/math/special/j0.h:12: RN j0(0x1.c071b22fbbafap+1023) want -0x1.a348b1f34dd1ap-526 got -0x1.a348b1f34d33dp-526 ulperr 2525.019 = 0x1.3bap+11 + 0x1.3153c2p-6
X src/math/special/j0.h:13: RN j0(0x1.f7350b1701ef7p+0) want 0x1.f32b3a3640292p-3 got 0x1.f32b3a3640296p-3 ulperr 3.947 = 0x1p+2 + -0x1.b3bad8p-5
X src/math/sanity/jn.h:8: RN jn(5, 0x1.1f9ef934745cbp-1) want 0x1.e274364abf2d5p-17 got 0x1.e274364abf2d2p-17, ulperr -2.504 = -0x1.8p+1 + 0x1.fbe5c8p-2
X src/math/sanity/jnf.h:1: RN jnf(-2, -0x1.0223ap+3) want -0x1.863726p-4 got -0x1.86372ap-4, ulperr -2.009 = -0x1p+1 + -0x1.28885p-7
X src/math/sanity/jnf.h:8: RN jnf(5, 0x1.1f9efap-1) want 0x1.e2743cp-17 got 0x1.e27442p-17, ulperr 2.537 = 0x1.8p+1 + -0x1.d9c372p-2
X src/math/sanity/jnf.h:10: RN jnf(7, -0x1.5b86eap-1) want -0x1.b39a9cp-24 got -0x1.b39a98p-24, ulperr 1.621 = 0x1p+1 + -0x1.83c12p-2
X src/math/special/lgamma.h:145: RN lgamma(-0x1.4p+1) want -0x1.ccbf9f5ed0f16p-5,-1 got -0x1.ccbf9f5ed0f2p-5,-1 ulperr -10.465 = -0x1.4p+3 + -0x1.dc4f24p-2
X src/math/sanity/lgammaf.h:3: RN lgammaf(-0x1.0c34b4p+3) want -0x1.46d732p+3,-1 got -0x1.46d736p+3,-1 ulperr -1.621 = -0x1p+1 + 0x1.83dafep-2
X src/math/sanity/lgammaf_r.h:3: RN lgammaf_r(-0x1.0c34b4p+3) want -0x1.46d732p+3,-1 got -0x1.46d736p+3,-1 ulperr -1.621 = -0x1p+1 + 0x1.83dafep-2
src/math/special/lgamma.h:145: RN lgammal(-0x1.4p+1) want -0x1.ccbf9f5ed0f16p-5,-1 got -0x1.ccbf9f5ed0f2p-5,-1 ulperr -10.465 = -0x1.4p+3 + -0x1.dc4f24p-2
FAIL src/math/lgammal.exe [status 1]
X src/math/crlibm/pow.h:13: bad fp exception: RN pow(0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:72: bad fp exception: RN pow(0x1p-1074,0x1p+0)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:73: bad fp exception: RN pow(0x1p-1042,0x1p+0)=0x1p-1042, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:75: bad fp exception: RN pow(-0x1p-1074,0x1p+0)=-0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:76: bad fp exception: RN pow(-0x1p-1042,0x1p+0)=-0x1p-1042, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:284: bad fp exception: RN pow(0x1p-1073,0x1p+0)=0x1p-1073, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:300: bad fp exception: RN pow(0x1p-1024,0x1p+0)=0x1p-1024, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:304: bad fp exception: RN pow(0x1p-1023,0x1p+0)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:310: bad fp exception: RN pow(0x1.ffffffffffffcp-1023,0x1p+0)=0x1.ffffffffffffcp-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:313: bad fp exception: RN pow(0x1.ffffffffffffep-1023,0x1p+0)=0x1.ffffffffffffep-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:338: bad fp exception: RN pow(0x1p-537,0x1p+1)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:437: bad fp exception: RN pow(0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:498: bad fp exception: RN pow(0x1p+350,-0x1.8p+1)=0x1p-1050, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:499: bad fp exception: RN pow(0x1p+700,-0x1.8p+0)=0x1p-1050, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:516: bad fp exception: RN pow(0x1p+1023,-0x1p+0)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:544: bad fp exception: RN pow(-0x1p-1073,0x1p+0)=-0x1p-1073, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:548: bad fp exception: RN pow(-0x1p-1024,0x1p+0)=-0x1p-1024, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:551: bad fp exception: RN pow(-0x1p-1023,0x1p+0)=-0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:557: bad fp exception: RN pow(-0x1.ffffffffffffcp-1023,0x1p+0)=-0x1.ffffffffffffcp-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:560: bad fp exception: RN pow(-0x1.ffffffffffffep-1023,0x1p+0)=-0x1.ffffffffffffep-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:581: bad fp exception: RN pow(-0x1p-537,0x1p+1)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:655: bad fp exception: RN pow(-0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:695: bad fp exception: RN pow(-0x1p+350,-0x1.8p+1)=-0x1p-1050, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:708: bad fp exception: RN pow(-0x1p+1023,-0x1p+0)=-0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/powf.h:103: bad fp exception: RU powf(0x1.fffffep+127,0x1p+0)=0x1.fffffep+127, want 0 got INEXACT|OVERFLOW
X src/math/ucb/powf.h:530: bad fp exception: RN powf(0x1.fffff8p-127,0x1p+0)=0x1.fffff8p-127, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/powf.h:533: bad fp exception: RN powf(0x1.fffffcp-127,0x1p+0)=0x1.fffffcp-127, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/powf.h:719: bad fp exception: RN powf(-0x1.fffff8p-127,0x1p+0)=-0x1.fffff8p-127, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/powf.h:722: bad fp exception: RN powf(-0x1.fffffcp-127,0x1p+0)=-0x1.fffffcp-127, want 0 got INEXACT|UNDERFLOW
FAIL src/math/powf.exe [status 1]
src/math/crlibm/pow.h:13: bad fp exception: RN powl(0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:72: bad fp exception: RN powl(0x1p-1074,0x1p+0)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:73: bad fp exception: RN powl(0x1p-1042,0x1p+0)=0x1p-1042, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:75: bad fp exception: RN powl(-0x1p-1074,0x1p+0)=-0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:76: bad fp exception: RN powl(-0x1p-1042,0x1p+0)=-0x1p-1042, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:284: bad fp exception: RN powl(0x1p-1073,0x1p+0)=0x1p-1073, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:300: bad fp exception: RN powl(0x1p-1024,0x1p+0)=0x1p-1024, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:304: bad fp exception: RN powl(0x1p-1023,0x1p+0)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:310: bad fp exception: RN powl(0x1.ffffffffffffcp-1023,0x1p+0)=0x1.ffffffffffffcp-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:313: bad fp exception: RN powl(0x1.ffffffffffffep-1023,0x1p+0)=0x1.ffffffffffffep-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:338: bad fp exception: RN powl(0x1p-537,0x1p+1)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:437: bad fp exception: RN powl(0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:498: bad fp exception: RN powl(0x1p+350,-0x1.8p+1)=0x1p-1050, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:499: bad fp exception: RN powl(0x1p+700,-0x1.8p+0)=0x1p-1050, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:516: bad fp exception: RN powl(0x1p+1023,-0x1p+0)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:544: bad fp exception: RN powl(-0x1p-1073,0x1p+0)=-0x1p-1073, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:548: bad fp exception: RN powl(-0x1p-1024,0x1p+0)=-0x1p-1024, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:551: bad fp exception: RN powl(-0x1p-1023,0x1p+0)=-0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:557: bad fp exception: RN powl(-0x1.ffffffffffffcp-1023,0x1p+0)=-0x1.ffffffffffffcp-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:560: bad fp exception: RN powl(-0x1.ffffffffffffep-1023,0x1p+0)=-0x1.ffffffffffffep-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:581: bad fp exception: RN powl(-0x1p-537,0x1p+1)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:655: bad fp exception: RN powl(-0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:695: bad fp exception: RN powl(-0x1p+350,-0x1.8p+1)=-0x1p-1050, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:708: bad fp exception: RN powl(-0x1p+1023,-0x1p+0)=-0x1p-1023, want 0 got INEXACT|UNDERFLOW
FAIL src/math/powl.exe [status 1]
X src/math/crlibm/sinh.h:84: RN sinh(0x1.d3e0d2f5d98d6p-2) want 0x1.e45428082fb8cp-2 got 0x1.e45428082fb8ap-2 ulperr -1.500 = -0x1p+1 + 0x1p-1
X src/math/crlibm/sinh.h:84: RN sinhl(0x1.d3e0d2f5d98d6p-2) want 0x1.e45428082fb8cp-2 got 0x1.e45428082fb8ap-2 ulperr -1.500 = -0x1p+1 + 0x1p-1
X src/math/sanity/tgamma.h:4: RN tgamma(-0x1.a206f0a19dcc4p+2) want -0x1.9fd0c1ce12f14p-10 got -0x1.9fd0c1ce12f12p-10 ulperr 1.597 = 0x1p+1 + -0x1.9c637p-2
X src/math/sanity/tgamma.h:7: RN tgamma(-0x1.a05cc754481d1p-2) want -0x1.d9a22b2f3f253p+1 got -0x1.d9a22b2f3f251p+1 ulperr 1.674 = 0x1p+1 + -0x1.4d79f4p-2
src/math/special/tgamma.h:5: bad fp exception: RN tgamma(-0x1p+0)=nan, want INVALID got 0
src/math/special/tgamma.h:7: bad fp exception: RN tgamma(-0x1p+1)=nan, want INVALID got 0
X src/math/special/tgamma.h:47: RN tgamma(0x1p-53) want 0x1.fffffffffffffp+52 got 0x1.ffffffffffffdp+52 ulperr -2.423 = -0x1p+1 + -0x1.b0ee6p-2
X src/math/special/tgamma.h:60: RN tgamma(-0x1.0000000000001p+0) want 0x1.fffffffffffffp+51 got 0x1.ffffffffffffdp+51 ulperr -2.154 = -0x1p+1 + -0x1.3c467ep-3
X src/math/special/tgamma.h:62: RN tgamma(-0x1.0000000000003p+0) want 0x1.5555555555554p+50 got 0x1.5555555555552p+50 ulperr -1.642 = -0x1p+1 + 0x1.6e642cp-2
X src/math/special/tgamma.h:66: RN tgamma(-0x1.ffffffffffffep+0) want 0x1.0000000000002p+50 got 0x1.0000000000004p+50 ulperr 2.154 = 0x1p+1 + 0x1.3c467ep-3
X src/math/special/tgamma.h:68: RN tgamma(-0x1.0000000000001p+1) want -0x1.ffffffffffffcp+49 got -0x1.ffffffffffff7p+49 ulperr 5.309 = 0x1.4p+2 + 0x1.3c467ep-2
X src/math/special/tgamma.h:72: RN tgamma(-0x1.7fffffffffffdp+1) want -0x1.c71c71c71c72ap+46 got -0x1.c71c71c71c72cp+46 ulperr -2.157 = -0x1p+1 + -0x1.4177f6p-3
X src/math/special/tgamma.h:82: RN tgamma(-0x1.59fffffffffffp+7) want -0x1.46b1fa841aaa6p-997 got -0x1.46b1fa841aaa8p-997 ulperr -1.801 = -0x1p+1 + 0x1.979e28p-3
X src/math/special/tgamma.h:83: RN tgamma(-0x1.5a00000000001p+7) want 0x1.46b1fa841a412p-997 got 0x1.46b1fa841a41p-997 ulperr -1.700 = -0x1p+1 + 0x1.333de2p-2
X src/math/special/tgamma.h:84: RN tgamma(-0x1.5bfffffffffffp+7) want 0x1.e0a7b14f99fdbp-1005 got 0x1.e0a7b14f99fddp-1005 ulperr 1.579 = 0x1p+1 + -0x1.af416ap-2
X src/math/special/tgamma.h:85: RN tgamma(-0x1.5c00000000001p+7) want -0x1.e0a7b14f9962ap-1005 got -0x1.e0a7b14f9962cp-1005 ulperr -1.685 = -0x1p+1 + 0x1.42ddc4p-2
X src/math/special/tgamma.h:88: RN tgamma(-0x1.5ffffffffffffp+7) want 0x1.ff5df5f533fd3p-1020 got 0x1.ff5df5f533fd6p-1020 ulperr 2.513 = 0x1.8p+1 + -0x1.f234a4p-2
X src/math/special/tgamma.h:119: RN tgamma(-0x1.8p+0) want 0x1.2e7fb0bcdf4f2p+1 got 0x1.2e7fb0bcdf4fp+1 ulperr -1.770 = -0x1p+1 + 0x1.d7697p-3
X src/math/special/tgamma.h:136: RN tgamma(-0x1.02p+6) want -0x1.912276590832ep-298 got -0x1.912276590833p-298 ulperr -1.662 = -0x1p+1 + 0x1.59f79ap-2
X src/math/special/tgamma.h:141: RN tgamma(-0x1.55p+7) want -0x1.7d2374dfcda7ap-1022 got -0x1.7d2374dfcda78p-1022 ulperr 1.778 = 0x1p+1 + -0x1.c68fa4p-3
FAIL src/math/tgamma.exe [status 1]
src/math/special/tgammaf.h:4: bad fp exception: RN tgammaf(-0x1p+0)=-nan, want INVALID got 0
src/math/special/tgammaf.h:6: bad fp exception: RN tgammaf(-0x1p+1)=-nan, want INVALID got 0
FAIL src/math/tgammaf.exe [status 1]
src/math/special/tgamma.h:5: bad fp exception: RN tgammal(-0x1p+0)=nan, want INVALID got 0
src/math/special/tgamma.h:7: bad fp exception: RN tgammal(-0x1p+1)=nan, want INVALID got 0
src/math/special/tgamma.h:47: RN tgammal(0x1p-53) want 0x1.fffffffffffffp+52 got 0x1.ffffffffffffdp+52 ulperr -2.423 = -0x1p+1 + -0x1.b0ee6p-2
src/math/special/tgamma.h:60: RN tgammal(-0x1.0000000000001p+0) want 0x1.fffffffffffffp+51 got 0x1.ffffffffffffdp+51 ulperr -2.154 = -0x1p+1 + -0x1.3c467ep-3
src/math/special/tgamma.h:66: RN tgammal(-0x1.ffffffffffffep+0) want 0x1.0000000000002p+50 got 0x1.0000000000004p+50 ulperr 2.154 = 0x1p+1 + 0x1.3c467ep-3
src/math/special/tgamma.h:68: RN tgammal(-0x1.0000000000001p+1) want -0x1.ffffffffffffcp+49 got -0x1.ffffffffffff7p+49 ulperr 5.309 = 0x1.4p+2 + 0x1.3c467ep-2
src/math/special/tgamma.h:72: RN tgammal(-0x1.7fffffffffffdp+1) want -0x1.c71c71c71c72ap+46 got -0x1.c71c71c71c72cp+46 ulperr -2.157 = -0x1p+1 + -0x1.4177f6p-3
src/math/special/tgamma.h:88: RN tgammal(-0x1.5ffffffffffffp+7) want 0x1.ff5df5f533fd3p-1020 got 0x1.ff5df5f533fd6p-1020 ulperr 2.513 = 0x1.8p+1 + -0x1.f234a4p-2
FAIL src/math/tgammal.exe [status 1]
src/math/sanity/y0.h:1: bad fp exception: RN y0(-0x1.02239f3c6a8f1p+3)=nan, want INVALID got 0
src/math/sanity/y0.h:3: bad fp exception: RN y0(-0x1.0c34b3e01e6e7p+3)=nan, want INVALID got 0
src/math/sanity/y0.h:4: bad fp exception: RN y0(-0x1.a206f0a19dcc4p+2)=nan, want INVALID got 0
src/math/sanity/y0.h:7: bad fp exception: RN y0(-0x1.a05cc754481d1p-2)=nan, want INVALID got 0
src/math/sanity/y0.h:10: bad fp exception: RN y0(-0x1.5b86ea8118a0ep-1)=nan, want INVALID got 0
src/math/special/y0.h:1: bad fp exception: RN y0(0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y0.h:2: bad fp exception: RN y0(-0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y0.h:3: bad fp exception: RN y0(-0x1p+0)=nan, want INVALID got 0
src/math/special/y0.h:5: bad fp exception: RN y0(-inf)=nan, want INVALID got 0
X src/math/special/y0.h:8: RN y0(0x1.c982eb8d417eap-1) want -0x1.af74bfa0f1304p-56 got -0x1p-55 ulperr -1416944204906496.000 = -0x1.422d02p+50 + 0x1.11721cp-2
X src/math/special/y0.h:9: RN y0(0x1.c982eb8d417ebp-1) want 0x1.5666419c0f3c9p-54 got 0x1.2p-54 ulperr -957005015547904.000 = -0x1.b3320cp+49 + 0x1.dc02a8p-2
X src/math/special/y0.h:10: RN y0(0x1.fa9534d98569bp+1) want 0x1.384a000f3fcecp-53 got 0x1.3004a968fceadp-53 ulperr -145502385471488.000 = -0x1.08aad4p+47 + 0x1.58e17p-6
X src/math/special/y0.h:11: RN y0(0x1.fa9534d98569cp+1) want -0x1.8fa8956b4b481p-55 got -0x1.8f4eb84cc2a33p-55 ulperr 6175389646848.000 = 0x1.67747ap+42 + 0x1.54cfbep-2
X src/math/special/y0.h:12: RN y0(0x1.c581dc4e72102p+2) want -0x1.14bb186dc408dp-52 got -0x1.16eb61aad4cacp-52 ulperr -38502565675008.000 = -0x1.18249ep+45 + -0x1.163cfp-2
X src/math/special/y0.h:13: RN y0(0x1.c581dc4e72103p+2) want 0x1.e91b198d39ce2p-56 got 0x1.dac1abb064c09p-56 ulperr -252436132397056.000 = -0x1.cb2dbcp+47 + -0x1.ee1b6ep-2
FAIL src/math/y0.exe [status 1]
src/math/sanity/y0f.h:1: bad fp exception: RN y0f(-0x1.0223ap+3)=-nan, want INVALID got 0
X src/math/sanity/y0f.h:2: RN y0f(0x1.161868p+2) want -0x1.293dbep-3 got -0x1.293dc2p-3 ulperr -1.910 = -0x1p+1 + 0x1.6ffc42p-4
src/math/sanity/y0f.h:3: bad fp exception: RN y0f(-0x1.0c34b4p+3)=-nan, want INVALID got 0
src/math/sanity/y0f.h:4: bad fp exception: RN y0f(-0x1.a206fp+2)=-nan, want INVALID got 0
src/math/sanity/y0f.h:7: bad fp exception: RN y0f(-0x1.a05cc8p-2)=-nan, want INVALID got 0
src/math/sanity/y0f.h:10: bad fp exception: RN y0f(-0x1.5b86eap-1)=-nan, want INVALID got 0
src/math/special/y0f.h:1: bad fp exception: RN y0f(0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y0f.h:2: bad fp exception: RN y0f(-0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y0f.h:3: bad fp exception: RN y0f(-0x1p+0)=-nan, want INVALID got 0
src/math/special/y0f.h:5: bad fp exception: RN y0f(-inf)=-nan, want INVALID got 0
X src/math/special/y0f.h:7: RN y0f(0x1.0c4a3ap+0) want 0x1.ff138ep-4 got 0x1.ff1386p-4 ulperr -4.180 = -0x1.fffffep+1 + -0x1.71585ap-3
X src/math/special/y0f.h:8: RN y0f(0x1.8ae5d4p-1) want -0x1.d88a5ap-4 got -0x1.d88a5p-4 ulperr 4.919 = 0x1.4p+2 + -0x1.4d601ap-4
X src/math/special/y0f.h:9: RN y0f(0x1.fa9536p+1) want -0x1.da2946p-25 got -0x1.c5c23p-25 ulperr 668554.625 = 0x1.46716p+19 + -0x1.88a2bcp-2
FAIL src/math/y0f.exe [status 1]
src/math/sanity/y1.h:1: bad fp exception: RN y1(-0x1.02239f3c6a8f1p+3)=nan, want INVALID got 0
src/math/sanity/y1.h:3: bad fp exception: RN y1(-0x1.0c34b3e01e6e7p+3)=nan, want INVALID got 0
src/math/sanity/y1.h:4: bad fp exception: RN y1(-0x1.a206f0a19dcc4p+2)=nan, want INVALID got 0
src/math/sanity/y1.h:7: bad fp exception: RN y1(-0x1.a05cc754481d1p-2)=nan, want INVALID got 0
src/math/sanity/y1.h:10: bad fp exception: RN y1(-0x1.5b86ea8118a0ep-1)=nan, want INVALID got 0
src/math/special/y1.h:1: bad fp exception: RN y1(0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y1.h:2: bad fp exception: RN y1(-0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y1.h:3: bad fp exception: RN y1(-0x1p+0)=nan, want INVALID got 0
src/math/special/y1.h:5: bad fp exception: RN y1(-inf)=nan, want INVALID got 0
FAIL src/math/y1.exe [status 1]
src/math/sanity/y1f.h:1: bad fp exception: RN y1f(-0x1.0223ap+3)=-nan, want INVALID got 0
src/math/sanity/y1f.h:3: bad fp exception: RN y1f(-0x1.0c34b4p+3)=-nan, want INVALID got 0
src/math/sanity/y1f.h:4: bad fp exception: RN y1f(-0x1.a206fp+2)=-nan, want INVALID got 0
src/math/sanity/y1f.h:7: bad fp exception: RN y1f(-0x1.a05cc8p-2)=-nan, want INVALID got 0
src/math/sanity/y1f.h:10: bad fp exception: RN y1f(-0x1.5b86eap-1)=-nan, want INVALID got 0
src/math/special/y1f.h:1: bad fp exception: RN y1f(0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y1f.h:2: bad fp exception: RN y1f(-0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y1f.h:3: bad fp exception: RN y1f(-0x1p+0)=-nan, want INVALID got 0
src/math/special/y1f.h:5: bad fp exception: RN y1f(-inf)=-nan, want INVALID got 0
FAIL src/math/y1f.exe [status 1]
src/math/sanity/yn.h:1: bad fp exception: RN yn(-2, -0x1.02239f3c6a8f1p+3)=nan, want INVALID got 0
src/math/sanity/yn.h:3: bad fp exception: RN yn(0, -0x1.0c34b3e01e6e7p+3)=nan, want INVALID got 0
src/math/sanity/yn.h:4: bad fp exception: RN yn(1, -0x1.a206f0a19dcc4p+2)=nan, want INVALID got 0
src/math/sanity/yn.h:7: bad fp exception: RN yn(4, -0x1.a05cc754481d1p-2)=nan, want INVALID got 0
src/math/sanity/yn.h:10: bad fp exception: RN yn(7, -0x1.5b86ea8118a0ep-1)=nan, want INVALID got 0
src/math/special/yn.h:1: bad fp exception: RN yn(0, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:2: bad fp exception: RN yn(0, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:3: bad fp exception: RN yn(0, -0x1p+0)=nan, want INVALID got 0
src/math/special/yn.h:5: bad fp exception: RN yn(0, -inf)=nan, want INVALID got 0
src/math/special/yn.h:7: bad fp exception: RN yn(1, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:8: bad fp exception: RN yn(1, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:9: bad fp exception: RN yn(1, -0x1p+0)=nan, want INVALID got 0
src/math/special/yn.h:11: bad fp exception: RN yn(1, -inf)=nan, want INVALID got 0
src/math/special/yn.h:13: bad fp exception: RN yn(-1, 0x0p+0)=inf, want DIVBYZERO got 0
src/math/special/yn.h:14: bad fp exception: RN yn(-1, -0x0p+0)=inf, want DIVBYZERO got 0
src/math/special/yn.h:15: bad fp exception: RN yn(-1, -0x1p+0)=nan, want INVALID got 0
src/math/special/yn.h:17: bad fp exception: RN yn(-1, -inf)=nan, want INVALID got 0
src/math/special/yn.h:19: bad fp exception: RN yn(2, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:20: bad fp exception: RN yn(2, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:21: bad fp exception: RN yn(2, -0x1p+0)=nan, want INVALID got 0
src/math/special/yn.h:23: bad fp exception: RN yn(2, -inf)=nan, want INVALID got 0
FAIL src/math/yn.exe [status 1]
src/math/sanity/ynf.h:1: bad fp exception: RN ynf(-2, -0x1.0223ap+3)=-nan, want INVALID got 0
src/math/sanity/ynf.h:3: bad fp exception: RN ynf(0, -0x1.0c34b4p+3)=-nan, want INVALID got 0
src/math/sanity/ynf.h:4: bad fp exception: RN ynf(1, -0x1.a206fp+2)=-nan, want INVALID got 0
X src/math/sanity/ynf.h:6: RN ynf(3, 0x1.52efdp-1) want -0x1.2935d2p+4 got -0x1.2935d6p+4, ulperr -1.920 = -0x1p+1 + 0x1.47d13p-4
src/math/sanity/ynf.h:7: bad fp exception: RN ynf(4, -0x1.a05cc8p-2)=-nan, want INVALID got 0
X src/math/sanity/ynf.h:9: RN ynf(6, 0x1.8c5dbp-1) want -0x1.6dbc1cp+13 got -0x1.6dbc18p+13, ulperr 2.115 = 0x1p+1 + 0x1.d597eep-4
src/math/sanity/ynf.h:10: bad fp exception: RN ynf(7, -0x1.5b86eap-1)=-nan, want INVALID got 0
src/math/special/ynf.h:1: bad fp exception: RN ynf(0, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:2: bad fp exception: RN ynf(0, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:3: bad fp exception: RN ynf(0, -0x1p+0)=-nan, want INVALID got 0
src/math/special/ynf.h:5: bad fp exception: RN ynf(0, -inf)=-nan, want INVALID got 0
src/math/special/ynf.h:7: bad fp exception: RN ynf(1, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:8: bad fp exception: RN ynf(1, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:9: bad fp exception: RN ynf(1, -0x1p+0)=-nan, want INVALID got 0
src/math/special/ynf.h:11: bad fp exception: RN ynf(1, -inf)=-nan, want INVALID got 0
src/math/special/ynf.h:13: bad fp exception: RN ynf(-1, 0x0p+0)=inf, want DIVBYZERO got 0
src/math/special/ynf.h:14: bad fp exception: RN ynf(-1, -0x0p+0)=inf, want DIVBYZERO got 0
src/math/special/ynf.h:15: bad fp exception: RN ynf(-1, -0x1p+0)=-nan, want INVALID got 0
src/math/special/ynf.h:17: bad fp exception: RN ynf(-1, -inf)=-nan, want INVALID got 0
src/math/special/ynf.h:19: bad fp exception: RN ynf(2, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:20: bad fp exception: RN ynf(2, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:21: bad fp exception: RN ynf(2, -0x1p+0)=-nan, want INVALID got 0
src/math/special/ynf.h:23: bad fp exception: RN ynf(2, -inf)=-nan, want INVALID got 0
FAIL src/math/ynf.exe [status 1]
src/regression/malloc-brk-fail.c:31: malloc(10000) succeeded after memory is filled
FAIL src/regression/malloc-brk-fail.exe [status 1]
src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==0) got 38 "Function not implemented" want 0 "No error information"
src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==0) got 110 "Operation timed out" want 130 "Previous owner died"
src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==1) got 38 "Function not implemented" want 0 "No error information"
src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==1) got 110 "Operation timed out" want 130 "Previous owner died"
FAIL src/regression/pthread-robust-detach-static.exe [status 1]
src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==0) got 38 "Function not implemented" want 0 "No error information"
src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==0) got 110 "Operation timed out" want 130 "Previous owner died"
src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==1) got 38 "Function not implemented" want 0 "No error information"
src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==1) got 110 "Operation timed out" want 130 "Previous owner died"
FAIL src/regression/pthread-robust-detach.exe [status 1]

^ permalink raw reply	[flat|nested] 43+ messages in thread

* Re: [musl] Hexagon DSP support
  2020-09-16 20:49                                     ` sidneym
@ 2020-09-17  1:32                                       ` 'Rich Felker'
  2020-09-17 22:31                                         ` sidneym
  0 siblings, 1 reply; 43+ messages in thread
From: 'Rich Felker' @ 2020-09-17  1:32 UTC (permalink / raw)
  To: musl

On Wed, Sep 16, 2020 at 03:49:28PM -0500, sidneym@codeaurora.org wrote:
> 
> 
> > -----Original Message-----
> > From: sidneym@codeaurora.org <sidneym@codeaurora.org>
> > Sent: Friday, July 24, 2020 12:50 PM
> > To: 'Szabolcs Nagy' <nsz@port70.net>
> > Cc: 'Rich Felker' <dalias@libc.org>; 'musl@lists.openwall.com'
> > <musl@lists.openwall.com>
> > Subject: RE: [musl] Hexagon DSP support
> > 
> > 
> > 
> > > -----Original Message-----
> > > From: Szabolcs Nagy <nsz@port70.net>
> > > Sent: Thursday, July 23, 2020 4:56 PM
> > > To: sidneym@codeaurora.org
> > > Cc: 'Rich Felker' <dalias@libc.org>; musl@lists.openwall.com
> > > Subject: Re: [musl] Hexagon DSP support
> > >
> > > * sidneym@codeaurora.org <sidneym@codeaurora.org> [2020-07-20
> > > 16:26:58 -0500]:
> > > > I removed fma/fmal/fmax/fmin/fabs from compiler-rt-builtins,
> > > > https://reviews.llvm.org/D82263
> > > > The comparison with musl can be found here:
> > > > https://github.com/quic/musl/compare/hexagon but I've also attached
> > > > the patch.
> > > >
> > > > An assert in clang when building both musl and libc-test for hexagon
> > > > was fixed by, https://reviews.llvm.org/D80952 prior to this change
> > > > -frounding-math had to be used.
> > > >
> > > > The test-results are also attached.  Everything is built with the
> > > > tip-of-tree llvm so sometimes results vary but these are the results
> > > > I got from this morning's clone.  The only notable difference in the
> > > > results would be that both fma and fmal fail and this is because of
> > > > the compiler-rt change.  I didn't add fma to musl because it require
> > > > more complex assembly, along the lines you saw in an earlier version
> > > > with
> > > sqrt.
> > >
> > >
> > > the fma and sqrt failures are still not fully explained, e.g. this looks
> wrong:
> > >
> > > src/math/special/fma.h:42: RN fma(0x1p+0,0x1p+0,-0x1p-1074) want
> > > 0x1p+0 got -0x1.fffffp-43 ulperr -4503599627370496.000 = -0x1p+52 +
> > > 0x0p+0
> > >
> > > the only target specific bit in fma is a_clz_64 so i would check that.
> > >
> > > e.g. a_clz_64(1ULL << 42) should give 21 (this computation happens
> > > during the fma test case above).
> > 
> > Hexagon didn't have a_clz_64 implemented however I added this morning it
> > and noticed no differences.  I will update the patch with that routine
> > included.
> > 
> > I did notice a compiler regression in how it compiled fma and have asked a
> > compiler person to take a look.  An older version of our internally
> maintained
> > compiler does produce the expected results for the values I used but later
> > versions do not.  Unfortunately changing optimization levels will produce
> > different results as well.
> 
> I've attached updated test results and patch.  The patch doesn't change much
> other than adding the above mentioned a_clz_64.  The only other change was
> an update to pthread_arch.h for an api update so hexagon conforms with the
> rest of musl.
> 
> Between updates to llvm and musl both fma and sqrt issues are resolved
> provided I compile the library without optimization enabled.  No new tests
> fail.
> 
> I guess I also need to know what the thoughts are about adding hexagon to
> the mainline base.  There are no issues adding from this end.

I'll post some review with the hope that this can move forward
upstream in musl soon. I might need some help figuring out how to get
a cross build environment to check things, but I'll follow up when I
do.

The review that follows is not 100% thorough but I think it's more
detailed than I've done for hexagon so far. Most of it's open to
discussion if you think anything I say is wrong.

> diff --git a/arch/hexagon/atomic_arch.h b/arch/hexagon/atomic_arch.h
> new file mode 100644
> index 00000000..ede55956
> --- /dev/null
> +++ b/arch/hexagon/atomic_arch.h
> @@ -0,0 +1,194 @@
> +#define a_ctz_32 a_ctz_32
> +static inline int a_ctz_32(unsigned long x)
> +{
> +	__asm__(
> +		"%0 = ct0(%0)\n\t"
> +		: "+r"(x));
> +	return x;
> +}
> +
> +#define a_ctz_64 a_ctz_64
> +static inline int a_ctz_64(uint64_t x)
> +{
> +	int count;
> +	__asm__(
> +		"%0 = ct0(%1)\n\t"
> +		: "=r"(count) : "r"(x));
> +	return count;
> +}
> +#define a_clz_64 a_clz_64
> +static inline int a_clz_64(uint64_t x)
> +{
> +        int count;
> +        __asm__(
> +                "%1 = brev(%1)\n\t"
> +                "%0 = ct0(%1)\n\t"
> +                : "=r"(count) : "r"(x));
> +        return count;
> +}

This should probably do just the brev in asm then return
a_ctz_64(result) so that the compiler has the freedom to schedule the
insns independently, unless there's a reason not to want it to do
that.

> +#define a_cas a_cas
> +static inline int a_cas(volatile int *p, int t, int s)
> +{
> +	int dummy;
> +	__asm__ __volatile__(
> +		"1:	%0 = memw_locked(%1)\n\t"
> +		"	{ p0 = cmp.eq(%0, %2)\n\t"
> +		"	  if (!p0.new) jump:nt 2f }\n\t"
> +		"	memw_locked(%1, p0) = %3\n\t"
> +		"	if (!p0) jump 1b\n\t"
> +		"2:	\n\t"
> +		: "=&r"(dummy)
> +		: "r"(p), "r"(t), "r"(s)
> +		: "p0", "memory" );
> +        return dummy;
> +}

I don't know the hexagon atomic model, but as far as I can tell these
at least "look right" in the sense of having right asm constraints.

> [...]
> +#define a_barrier a_barrier
> +static inline void a_barrier()
> +{
> +	__asm__ __volatile__ ("barrier" ::: "memory");
> +}

Is the barrier implied in memw_locked? If not, there need to be
explicit barriers in all the atomic functions.

> diff --git a/arch/hexagon/bits/alltypes.h.in b/arch/hexagon/bits/alltypes.h.in
> new file mode 100644
> index 00000000..9d770c7e
> --- /dev/null
> +++ b/arch/hexagon/bits/alltypes.h.in
> @@ -0,0 +1,26 @@
> +#define _Addr int
> +#define _Int64 long long
> +#define _Reg int
> +
> +#define __BYTE_ORDER 1234
> +#define __LONG_MAX 0x7fffffffL
> +
> +#ifndef __cplusplus
> +#ifdef __WCHAR_TYPE__
> +TYPEDEF __WCHAR_TYPE__ wchar_t;
> +#else
> +TYPEDEF long wchar_t;
> +#endif
> +#endif
> +
> +TYPEDEF float float_t;
> +TYPEDEF double double_t;
> +
> +#if !defined(__cplusplus)
> +TYPEDEF struct { _Alignas(8) long long __ll; long double __ld; } max_align_t;
> +#elif defined(__GNUC__)
> +TYPEDEF struct { __attribute__((__aligned__(8))) long long __ll; long double __ld; } max_align_t;
> +#else
> +TYPEDEF struct { alignas(8) long long __ll; long double __ld; } max_align_t;
> +#endif

As I understand, the Hexagon ABI has all scalar types aligned to their
size, so I don't think the alignas mess is needed here. It should just
work as unconditional:

TYPEDEF struct { long long __ll; long double __ld; } max_align_t;

> diff --git a/arch/hexagon/bits/setjmp.h b/arch/hexagon/bits/setjmp.h
> new file mode 100644
> index 00000000..5ee5e49f
> --- /dev/null
> +++ b/arch/hexagon/bits/setjmp.h
> @@ -0,0 +1,4 @@
> +
> +typedef struct {
> +	long regs[16];
> +} __jmp_buf[1] __attribute__((aligned (8)));

Use long long so no extension is needed here for alignment, and no
wrapper struct (which is not needed, and the member name regs is a
namespace violation):

typedef long long __jmp_buf[8];

> diff --git a/arch/hexagon/bits/signal.h b/arch/hexagon/bits/signal.h
> new file mode 100644
> index 00000000..7a3b36d0
> --- /dev/null
> +++ b/arch/hexagon/bits/signal.h
> @@ -0,0 +1,105 @@
> +#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
> + || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
> +
> +#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
> +#define MINSIGSTKSZ 2048
> +#define SIGSTKSZ 8192
> +#endif
> +
> +#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
> +typedef int greg_t, gregset_t[18];
> +typedef struct sigcontext
> +{
> +	unsigned long  r0,  r1,  r2,  r3;
> +	unsigned long  r4,  r5,  r6,  r7;
> +	unsigned long  r8,  r9, r10, r11;
> +	unsigned long r12, r13, r14, r15;
> +	unsigned long r16, r17, r18, r19;
> +	unsigned long r20, r21, r22, r23;
> +	unsigned long r24, r25, r26, r27;
> +	unsigned long r28, r29, r30, r31;
> +	unsigned long sa0;
> +	unsigned long lc0;
> +	unsigned long sa1;
> +	unsigned long lc1;
> +	unsigned long m0;
> +	unsigned long m1;
> +	unsigned long usr;
> +	unsigned long p3_0;
> +	unsigned long gp;
> +	unsigned long ugp;
> +	unsigned long pc;
> +	unsigned long cause;
> +	unsigned long badva;
> +	unsigned long pad1;
> +	unsigned long pad2;
> +	unsigned long pad3;
> +} __attribute__((__aligned__(8))) mcontext_t;
> +#else
> +typedef struct {
> +	unsigned long __regs[48];
> +} __attribute__((__aligned__(8))) mcontext_t;
> +#endif

If the pad members are really padding, can the last two just be
replaced by a long long so there's natural alignment with no
extension?

> [...]
> +typedef struct __ucontext {
> +	unsigned long uc_flags;
> +	struct __ucontext *uc_link;
> +	stack_t uc_stack;
> +	mcontext_t uc_mcontext;
> +	sigset_t uc_sigmask;
> +//	unsigned long long uc_regspace[64];
> +} ucontext_t;

Should the commented uc_regspace be removed?

> diff --git a/arch/hexagon/bits/stat.h b/arch/hexagon/bits/stat.h
> new file mode 100644
> index 00000000..55e81fd9
> --- /dev/null
> +++ b/arch/hexagon/bits/stat.h
> @@ -0,0 +1,20 @@
> +/* copied from kernel definition, but with padding replaced
> + * by the corresponding correctly-sized userspace types. */
> +struct stat {
> +	dev_t st_dev;
> +	ino_t st_ino;
> +	mode_t st_mode;
> +	nlink_t st_nlink;
> +	uid_t st_uid;
> +	gid_t st_gid;
> +	dev_t st_rdev;
> +	unsigned long __pad;
> +	off_t st_size;
> +	blksize_t st_blksize;
> +	int __pad2;
> +	blkcnt_t st_blocks;
> +	struct timespec st_atim;
> +	struct timespec st_mtim;
> +	struct timespec st_ctim;
> +	unsigned __unused[2];
> +};

No objection to doing this as-is, but since this looks like the modern
"standard" layout and we could probably deduplicate it by making
arch/generic provide it. That'd be a later patch to remove the other
existing duplicates (aarch64, riscv64, maybe others).

> diff --git a/arch/hexagon/bits/syscall.h.in b/arch/hexagon/bits/syscall.h.in
> new file mode 100644
> index 00000000..77ca3fa0
> --- /dev/null
> +++ b/arch/hexagon/bits/syscall.h.in
> @@ -0,0 +1,317 @@
> [...]
> +#define __NR_timer_create 107
> +#define __NR_timer_gettime 108
> +#define __NR_timer_getoverrun 109
> +#define __NR_timer_settime 110
> +#define __NR_timer_delete 111
> +#define __NR_clock_settime 112
> +#define __NR_clock_gettime 113

Some of these, e.g. clock_gettime, need to be renamed as in commit
5a105f19b5aae79dd302899e634b6b18b3dcd0d6.

> [...]
> +#define __NR_sched_rr_get_interval_time64 423
> +#define __NR_syscalls (__NR_sched_rr_get_interval_time64+1)
> +#define __NR_fcntl  __NR3264_fcntl
> +#define __NR_fstatfs  __NR3264_fstatfs
> +#define __NR_truncate  __NR3264_truncate
> +#define __NR_ftruncate  __NR3264_ftruncate
> +#define __NR_lseek  __NR3264_lseek
> +#define __NR_sendfile  __NR3264_sendfile
> +#define __NR_newfstatat  __NR3264_fstatat
> +#define __NR_fcntl64  __NR3264_fcntl
> +#define __NR_statfs64  __NR3264_statfs
> +#define __NR_fstatfs64  __NR3264_fstatfs
> +#define __NR_truncate64  __NR3264_truncate
> +#define __NR_ftruncate64  __NR3264_ftruncate
> +#define __NR__llseek  __NR3264_lseek
> +#define __NR_sendfile64  __NR3264_sendfile
> +#define __NR_fstatat64  __NR3264_fstatat
> +#define __NR_fstat64  __NR3264_fstat
> +#define __NR_mmap2  __NR3264_mmap
> +#define __NR_fadvise64_64  __NR3264_fadvise64

Is there a reason for these NR3264 redirections rather than just
defining directly with the public names?

> diff --git a/arch/hexagon/crt_arch.h b/arch/hexagon/crt_arch.h
> new file mode 100644
> index 00000000..331a797e
> --- /dev/null
> +++ b/arch/hexagon/crt_arch.h
> @@ -0,0 +1,35 @@
> +__asm__(
> +".weak _DYNAMIC \n"
> +".hidden _DYNAMIC \n"
> +".text \n"
> +".global " START " \n"
> +".type " START ", %function \n"
> +START ": \n"
> +"                                       // Find _DYNAMIC\n"
> +"       jump 1f\n"
> +".word  _DYNAMIC - .\n"
> +"1:     r2 = pc\n"
> +"       r2 = add(r2, #-4)\n"
> +"       r1 = memw(r2)\n"
> +"       r1 = add(r2, r1)\n"
> +"	r30 = #0			// Signals the end of backtrace\n"
> +"	r0 = r29			// Pointer to argc/argv\n"
> +"	r29 = and(r29, #-16)		// Align\n"
> +"	memw(r29+#-8) = r29\n"
> +"	r29 = add(r29, #-8)\n"
> +"	call " START "_c \n"
> +".size " START ", .-" START "\n"
> +);
> +
> +__asm__(
> +".section \".note.ABI-tag\", \"a\" \n"
> +".align 4 \n"
> +".long 1f - 0f		/* name length */ \n"
> +".long 3f - 2f		/* data length */ \n"
> +".long  1		/* note type */ \n"
> +"0:	.asciz \"GNU\"	/* vendor name seems like this should be MUSL but lldb doesn't agree.*/ \n"
> +"1:	.align 4		 \n"
> +"2:	.long 0	/* linux */ \n"
> +"	.long 3,0,0 \n"
> +"3:	.align 4 \n"
> +);

Is there a reason this needs to be here at all? Shouldn't the tooling
generate it if it's actually wanted/needed?

> diff --git a/arch/hexagon/reloc.h b/arch/hexagon/reloc.h
> new file mode 100644
> index 00000000..14085872
> --- /dev/null
> +++ b/arch/hexagon/reloc.h
> @@ -0,0 +1,25 @@
> +#include <endian.h>
> +
> +#if __BYTE_ORDER == __LITTLE_ENDIAN
> +#define ENDIAN_SUFFIX "el"
> +#else
> +#define ENDIAN_SUFFIX ""
> +#endif

bits/alltypes.h.in defined __BYTE_ORDER as 1234 (unconditionally
little endian). Does Hexagon (hw and abi) actually support both byte
orders? If not, I don't think there should be an endian suffix here at
all.

> diff --git a/include/elf.h b/include/elf.h
> index 549f92c1..54251c24 100644
> --- a/include/elf.h
> +++ b/include/elf.h
> @@ -3284,6 +3284,107 @@ enum
>  #define R_RISCV_SET32           56
>  #define R_RISCV_32_PCREL        57
>  
> +#define R_HEX_NONE               0
> [...]

I'd like to merge this separately first since it's independent of
whether hexagon is a supported host.

> diff --git a/src/fenv/hexagon/fenv.S b/src/fenv/hexagon/fenv.S
> new file mode 100644
> index 00000000..07b89764
> --- /dev/null
> +++ b/src/fenv/hexagon/fenv.S
> @@ -0,0 +1,143 @@
> +/*
> +The Hexagon user status register includes five status fields which work as
> +sticky flags for the five IEEE-defined exception conditions: inexact, overflow, underflow,
> +divide by zero, and invalid. A sticky flag is set when the corresponding exception occurs,
> +and remains set until explicitly cleared.

Please format for at most 80 columns. (Some source files have a few
longer lines, but if you're flowing text it should be flowed to 80 or
fewer.)

Rich

^ permalink raw reply	[flat|nested] 43+ messages in thread

* RE: [musl] Hexagon DSP support
  2020-09-17  1:32                                       ` 'Rich Felker'
@ 2020-09-17 22:31                                         ` sidneym
  2020-09-18  1:08                                           ` Rich Felker
  0 siblings, 1 reply; 43+ messages in thread
From: sidneym @ 2020-09-17 22:31 UTC (permalink / raw)
  To: musl

[-- Attachment #1: Type: text/plain, Size: 16197 bytes --]



> -----Original Message-----
> From: 'Rich Felker' <dalias@libc.org>
> Sent: Wednesday, September 16, 2020 8:33 PM
> To: musl@lists.openwall.com
> Subject: Re: [musl] Hexagon DSP support
> 
> On Wed, Sep 16, 2020 at 03:49:28PM -0500, sidneym@codeaurora.org wrote:
> >
> >
> > > -----Original Message-----
> > > From: sidneym@codeaurora.org <sidneym@codeaurora.org>
> > > Sent: Friday, July 24, 2020 12:50 PM
> > > To: 'Szabolcs Nagy' <nsz@port70.net>
> > > Cc: 'Rich Felker' <dalias@libc.org>; 'musl@lists.openwall.com'
> > > <musl@lists.openwall.com>
> > > Subject: RE: [musl] Hexagon DSP support
> > >
> > >
> > >
> > > > -----Original Message-----
> > > > From: Szabolcs Nagy <nsz@port70.net>
> > > > Sent: Thursday, July 23, 2020 4:56 PM
> > > > To: sidneym@codeaurora.org
> > > > Cc: 'Rich Felker' <dalias@libc.org>; musl@lists.openwall.com
> > > > Subject: Re: [musl] Hexagon DSP support
> > > >
> > > > * sidneym@codeaurora.org <sidneym@codeaurora.org> [2020-07-20
> > > > 16:26:58 -0500]:
> > > > > I removed fma/fmal/fmax/fmin/fabs from compiler-rt-builtins,
> > > > > https://reviews.llvm.org/D82263
> > > > > The comparison with musl can be found here:
> > > > > https://github.com/quic/musl/compare/hexagon but I've also
> > > > > attached the patch.
> > > > >
> > > > > An assert in clang when building both musl and libc-test for
> > > > > hexagon was fixed by, https://reviews.llvm.org/D80952 prior to
> > > > > this change -frounding-math had to be used.
> > > > >
> > > > > The test-results are also attached.  Everything is built with
> > > > > the tip-of-tree llvm so sometimes results vary but these are the
> > > > > results I got from this morning's clone.  The only notable
> > > > > difference in the results would be that both fma and fmal fail
> > > > > and this is because of the compiler-rt change.  I didn't add fma
> > > > > to musl because it require more complex assembly, along the
> > > > > lines you saw in an earlier version with
> > > > sqrt.
> > > >
> > > >
> > > > the fma and sqrt failures are still not fully explained, e.g. this
> > > > looks
> > wrong:
> > > >
> > > > src/math/special/fma.h:42: RN fma(0x1p+0,0x1p+0,-0x1p-1074) want
> > > > 0x1p+0 got -0x1.fffffp-43 ulperr -4503599627370496.000 = -0x1p+52
> > > > 0x1p++
> > > > 0x0p+0
> > > >
> > > > the only target specific bit in fma is a_clz_64 so i would check
that.
> > > >
> > > > e.g. a_clz_64(1ULL << 42) should give 21 (this computation happens
> > > > during the fma test case above).
> > >
> > > Hexagon didn't have a_clz_64 implemented however I added this
> > > morning it and noticed no differences.  I will update the patch with
> > > that routine included.
> > >
> > > I did notice a compiler regression in how it compiled fma and have
> > > asked a compiler person to take a look.  An older version of our
> > > internally
> > maintained
> > > compiler does produce the expected results for the values I used but
> > > later versions do not.  Unfortunately changing optimization levels
> > > will produce different results as well.
> >
> > I've attached updated test results and patch.  The patch doesn't
> > change much other than adding the above mentioned a_clz_64.  The only
> > other change was an update to pthread_arch.h for an api update so
> > hexagon conforms with the rest of musl.
> >
> > Between updates to llvm and musl both fma and sqrt issues are resolved
> > provided I compile the library without optimization enabled.  No new
> > tests fail.
> >
> > I guess I also need to know what the thoughts are about adding hexagon
> > to the mainline base.  There are no issues adding from this end.
> 
> I'll post some review with the hope that this can move forward upstream in
> musl soon. I might need some help figuring out how to get a cross build
> environment to check things, but I'll follow up when I do.
> 
> The review that follows is not 100% thorough but I think it's more
detailed
> than I've done for hexagon so far. Most of it's open to discussion if you
think
> anything I say is wrong.
> 
> > diff --git a/arch/hexagon/atomic_arch.h b/arch/hexagon/atomic_arch.h
> > new file mode 100644 index 00000000..ede55956
> > --- /dev/null
> > +++ b/arch/hexagon/atomic_arch.h
> > @@ -0,0 +1,194 @@
> > +#define a_ctz_32 a_ctz_32
> > +static inline int a_ctz_32(unsigned long x) {
> > +	__asm__(
> > +		"%0 = ct0(%0)\n\t"
> > +		: "+r"(x));
> > +	return x;
> > +}
> > +
> > +#define a_ctz_64 a_ctz_64
> > +static inline int a_ctz_64(uint64_t x) {
> > +	int count;
> > +	__asm__(
> > +		"%0 = ct0(%1)\n\t"
> > +		: "=r"(count) : "r"(x));
> > +	return count;
> > +}
> > +#define a_clz_64 a_clz_64
> > +static inline int a_clz_64(uint64_t x) {
> > +        int count;
> > +        __asm__(
> > +                "%1 = brev(%1)\n\t"
> > +                "%0 = ct0(%1)\n\t"
> > +                : "=r"(count) : "r"(x));
> > +        return count;
> > +}
> 
> This should probably do just the brev in asm then return
> a_ctz_64(result) so that the compiler has the freedom to schedule the
insns
> independently, unless there's a reason not to want it to do that.

I used AARCH64's a_ctz_64 as a reference for this, but there are builtins
for these operations and I will use those instead, __builtin_clzll(x);

> 
> > +#define a_cas a_cas
> > +static inline int a_cas(volatile int *p, int t, int s) {
> > +	int dummy;
> > +	__asm__ __volatile__(
> > +		"1:	%0 = memw_locked(%1)\n\t"
> > +		"	{ p0 = cmp.eq(%0, %2)\n\t"
> > +		"	  if (!p0.new) jump:nt 2f }\n\t"
> > +		"	memw_locked(%1, p0) = %3\n\t"
> > +		"	if (!p0) jump 1b\n\t"
> > +		"2:	\n\t"
> > +		: "=&r"(dummy)
> > +		: "r"(p), "r"(t), "r"(s)
> > +		: "p0", "memory" );
> > +        return dummy;
> > +}
> 
> I don't know the hexagon atomic model, but as far as I can tell these at
least
> "look right" in the sense of having right asm constraints.
> 
> > [...]
> > +#define a_barrier a_barrier
> > +static inline void a_barrier()
> > +{
> > +	__asm__ __volatile__ ("barrier" ::: "memory"); }
> 
> Is the barrier implied in memw_locked? If not, there need to be explicit
> barriers in all the atomic functions.

Yes, if there is any memory access on the reserved address the reservation
is lost and the predicate is false.


> 
> > diff --git a/arch/hexagon/bits/alltypes.h.in
> > b/arch/hexagon/bits/alltypes.h.in new file mode 100644 index
> > 00000000..9d770c7e
> > --- /dev/null
> > +++ b/arch/hexagon/bits/alltypes.h.in
> > @@ -0,0 +1,26 @@
> > +#define _Addr int
> > +#define _Int64 long long
> > +#define _Reg int
> > +
> > +#define __BYTE_ORDER 1234
> > +#define __LONG_MAX 0x7fffffffL
> > +
> > +#ifndef __cplusplus
> > +#ifdef __WCHAR_TYPE__
> > +TYPEDEF __WCHAR_TYPE__ wchar_t;
> > +#else
> > +TYPEDEF long wchar_t;
> > +#endif
> > +#endif
> > +
> > +TYPEDEF float float_t;
> > +TYPEDEF double double_t;
> > +
> > +#if !defined(__cplusplus)
> > +TYPEDEF struct { _Alignas(8) long long __ll; long double __ld; }
> > +max_align_t; #elif defined(__GNUC__) TYPEDEF struct {
> > +__attribute__((__aligned__(8))) long long __ll; long double __ld; }
> > +max_align_t; #else TYPEDEF struct { alignas(8) long long __ll; long
> > +double __ld; } max_align_t; #endif
> 
> As I understand, the Hexagon ABI has all scalar types aligned to their
size, so I
> don't think the alignas mess is needed here. It should just work as
> unconditional:
> 
> TYPEDEF struct { long long __ll; long double __ld; } max_align_t;

True and I will remove the alignas stuff.


> 
> > diff --git a/arch/hexagon/bits/setjmp.h b/arch/hexagon/bits/setjmp.h
> > new file mode 100644 index 00000000..5ee5e49f
> > --- /dev/null
> > +++ b/arch/hexagon/bits/setjmp.h
> > @@ -0,0 +1,4 @@
> > +
> > +typedef struct {
> > +	long regs[16];
> > +} __jmp_buf[1] __attribute__((aligned (8)));
> 
> Use long long so no extension is needed here for alignment, and no wrapper
> struct (which is not needed, and the member name regs is a namespace
> violation):
> 
> typedef long long __jmp_buf[8];

OK 

> 
> > diff --git a/arch/hexagon/bits/signal.h b/arch/hexagon/bits/signal.h
> > new file mode 100644 index 00000000..7a3b36d0
> > --- /dev/null
> > +++ b/arch/hexagon/bits/signal.h
> > @@ -0,0 +1,105 @@
> > +#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
> > + || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) ||
> > + || defined(_BSD_SOURCE)
> > +
> > +#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) ||
> > +defined(_BSD_SOURCE) #define MINSIGSTKSZ 2048 #define SIGSTKSZ
> 8192
> > +#endif
> > +
> > +#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) typedef int
> greg_t,
> > +gregset_t[18]; typedef struct sigcontext {
> > +	unsigned long  r0,  r1,  r2,  r3;
> > +	unsigned long  r4,  r5,  r6,  r7;
> > +	unsigned long  r8,  r9, r10, r11;
> > +	unsigned long r12, r13, r14, r15;
> > +	unsigned long r16, r17, r18, r19;
> > +	unsigned long r20, r21, r22, r23;
> > +	unsigned long r24, r25, r26, r27;
> > +	unsigned long r28, r29, r30, r31;
> > +	unsigned long sa0;
> > +	unsigned long lc0;
> > +	unsigned long sa1;
> > +	unsigned long lc1;
> > +	unsigned long m0;
> > +	unsigned long m1;
> > +	unsigned long usr;
> > +	unsigned long p3_0;
> > +	unsigned long gp;
> > +	unsigned long ugp;
> > +	unsigned long pc;
> > +	unsigned long cause;
> > +	unsigned long badva;
> > +	unsigned long pad1;
> > +	unsigned long pad2;
> > +	unsigned long pad3;
> > +} __attribute__((__aligned__(8))) mcontext_t; #else typedef struct {
> > +	unsigned long __regs[48];
> > +} __attribute__((__aligned__(8))) mcontext_t; #endif
> 
> If the pad members are really padding, can the last two just be replaced
by a
> long long so there's natural alignment with no extension?

Yes, this would work.


> 
> > [...]
> > +typedef struct __ucontext {
> > +	unsigned long uc_flags;
> > +	struct __ucontext *uc_link;
> > +	stack_t uc_stack;
> > +	mcontext_t uc_mcontext;
> > +	sigset_t uc_sigmask;
> > +//	unsigned long long uc_regspace[64];
> > +} ucontext_t;
> 
> Should the commented uc_regspace be removed?

I missed that.


> 
> > diff --git a/arch/hexagon/bits/stat.h b/arch/hexagon/bits/stat.h new
> > file mode 100644 index 00000000..55e81fd9
> > --- /dev/null
> > +++ b/arch/hexagon/bits/stat.h
> > @@ -0,0 +1,20 @@
> > +/* copied from kernel definition, but with padding replaced
> > + * by the corresponding correctly-sized userspace types. */ struct
> > +stat {
> > +	dev_t st_dev;
> > +	ino_t st_ino;
> > +	mode_t st_mode;
> > +	nlink_t st_nlink;
> > +	uid_t st_uid;
> > +	gid_t st_gid;
> > +	dev_t st_rdev;
> > +	unsigned long __pad;
> > +	off_t st_size;
> > +	blksize_t st_blksize;
> > +	int __pad2;
> > +	blkcnt_t st_blocks;
> > +	struct timespec st_atim;
> > +	struct timespec st_mtim;
> > +	struct timespec st_ctim;
> > +	unsigned __unused[2];
> > +};
> 
> No objection to doing this as-is, but since this looks like the modern
> "standard" layout and we could probably deduplicate it by making
> arch/generic provide it. That'd be a later patch to remove the other
existing
> duplicates (aarch64, riscv64, maybe others).
> 
> > diff --git a/arch/hexagon/bits/syscall.h.in
> > b/arch/hexagon/bits/syscall.h.in new file mode 100644 index
> > 00000000..77ca3fa0
> > --- /dev/null
> > +++ b/arch/hexagon/bits/syscall.h.in
> > @@ -0,0 +1,317 @@
> > [...]
> > +#define __NR_timer_create 107
> > +#define __NR_timer_gettime 108
> > +#define __NR_timer_getoverrun 109
> > +#define __NR_timer_settime 110
> > +#define __NR_timer_delete 111
> > +#define __NR_clock_settime 112
> > +#define __NR_clock_gettime 113
> 
> Some of these, e.g. clock_gettime, need to be renamed as in commit
> 5a105f19b5aae79dd302899e634b6b18b3dcd0d6.
> 
> > [...]
> > +#define __NR_sched_rr_get_interval_time64 423 #define __NR_syscalls
> > +(__NR_sched_rr_get_interval_time64+1)
> > +#define __NR_fcntl  __NR3264_fcntl
> > +#define __NR_fstatfs  __NR3264_fstatfs #define __NR_truncate
> > +__NR3264_truncate #define __NR_ftruncate  __NR3264_ftruncate
> #define
> > +__NR_lseek  __NR3264_lseek #define __NR_sendfile
> __NR3264_sendfile
> > +#define __NR_newfstatat  __NR3264_fstatat #define __NR_fcntl64
> > +__NR3264_fcntl #define __NR_statfs64  __NR3264_statfs #define
> > +__NR_fstatfs64  __NR3264_fstatfs #define __NR_truncate64
> > +__NR3264_truncate #define __NR_ftruncate64  __NR3264_ftruncate
> > +#define __NR__llseek  __NR3264_lseek #define __NR_sendfile64
> > +__NR3264_sendfile #define __NR_fstatat64  __NR3264_fstatat #define
> > +__NR_fstat64  __NR3264_fstat #define __NR_mmap2  __NR3264_mmap
> > +#define __NR_fadvise64_64  __NR3264_fadvise64
> 
> Is there a reason for these NR3264 redirections rather than just defining
> directly with the public names?

This is also some carryover from an older port.  I think they are not
needed.


> 
> > diff --git a/arch/hexagon/crt_arch.h b/arch/hexagon/crt_arch.h new
> > file mode 100644 index 00000000..331a797e
> > --- /dev/null
> > +++ b/arch/hexagon/crt_arch.h
> > @@ -0,0 +1,35 @@
> > +__asm__(
> > +".weak _DYNAMIC \n"
> > +".hidden _DYNAMIC \n"
> > +".text \n"
> > +".global " START " \n"
> > +".type " START ", %function \n"
> > +START ": \n"
> > +"                                       // Find _DYNAMIC\n"
> > +"       jump 1f\n"
> > +".word  _DYNAMIC - .\n"
> > +"1:     r2 = pc\n"
> > +"       r2 = add(r2, #-4)\n"
> > +"       r1 = memw(r2)\n"
> > +"       r1 = add(r2, r1)\n"
> > +"	r30 = #0			// Signals the end of backtrace\n"
> > +"	r0 = r29			// Pointer to argc/argv\n"
> > +"	r29 = and(r29, #-16)		// Align\n"
> > +"	memw(r29+#-8) = r29\n"
> > +"	r29 = add(r29, #-8)\n"
> > +"	call " START "_c \n"
> > +".size " START ", .-" START "\n"
> > +);
> > +
> > +__asm__(
> > +".section \".note.ABI-tag\", \"a\" \n"
> > +".align 4 \n"
> > +".long 1f - 0f		/* name length */ \n"
> > +".long 3f - 2f		/* data length */ \n"
> > +".long  1		/* note type */ \n"
> > +"0:	.asciz \"GNU\"	/* vendor name seems like this should be
MUSL but
> lldb doesn't agree.*/ \n"
> > +"1:	.align 4		 \n"
> > +"2:	.long 0	/* linux */ \n"
> > +"	.long 3,0,0 \n"
> > +"3:	.align 4 \n"
> > +);
> 
> Is there a reason this needs to be here at all? Shouldn't the tooling
generate
> it if it's actually wanted/needed?

OK, this is here so lldb can select the right target allowing the same
version of lldb to work in multiple runtime environments. I need to take a
look at what the options are if this isn't a good place for this.

> 
> > diff --git a/arch/hexagon/reloc.h b/arch/hexagon/reloc.h new file mode
> > 100644 index 00000000..14085872
> > --- /dev/null
> > +++ b/arch/hexagon/reloc.h
> > @@ -0,0 +1,25 @@
> > +#include <endian.h>
> > +
> > +#if __BYTE_ORDER == __LITTLE_ENDIAN
> > +#define ENDIAN_SUFFIX "el"
> > +#else
> > +#define ENDIAN_SUFFIX ""
> > +#endif
> 
> bits/alltypes.h.in defined __BYTE_ORDER as 1234 (unconditionally little
> endian). Does Hexagon (hw and abi) actually support both byte orders? If
> not, I don't think there should be an endian suffix here at all.

No it does not I will remove it.

> 
> > diff --git a/include/elf.h b/include/elf.h index 549f92c1..54251c24
> > 100644
> > --- a/include/elf.h
> > +++ b/include/elf.h
> > @@ -3284,6 +3284,107 @@ enum
> >  #define R_RISCV_SET32           56
> >  #define R_RISCV_32_PCREL        57
> >
> > +#define R_HEX_NONE               0
> > [...]
> 
> I'd like to merge this separately first since it's independent of whether
> hexagon is a supported host.
> 
> > diff --git a/src/fenv/hexagon/fenv.S b/src/fenv/hexagon/fenv.S new
> > file mode 100644 index 00000000..07b89764
> > --- /dev/null
> > +++ b/src/fenv/hexagon/fenv.S
> > @@ -0,0 +1,143 @@
> > +/*
> > +The Hexagon user status register includes five status fields which
> > +work as sticky flags for the five IEEE-defined exception conditions:
> > +inexact, overflow, underflow, divide by zero, and invalid. A sticky
> > +flag is set when the corresponding exception occurs, and remains set
until
> explicitly cleared.
> 
> Please format for at most 80 columns. (Some source files have a few longer
> lines, but if you're flowing text it should be flowed to 80 or
> fewer.)

Will fix those lines and a couple of others I noticed.

The changes I made can be seen here:
https://github.com/quic/musl/commit/4d714f2defcd926b4f8c0425af363b382d3084cb

I've also attached an updated patch.

Thanks

[-- Attachment #2: add-hexagon.diff --]
[-- Type: application/octet-stream, Size: 42320 bytes --]

diff --git a/arch/hexagon/atomic_arch.h b/arch/hexagon/atomic_arch.h
new file mode 100644
index 00000000..262ad6a8
--- /dev/null
+++ b/arch/hexagon/atomic_arch.h
@@ -0,0 +1,182 @@
+#define a_ctz_32 a_ctz_32
+static inline int a_ctz_32(unsigned long x)
+{
+	return __builtin_ctzl(x);
+}
+
+#define a_ctz_64 a_ctz_64
+static inline int a_ctz_64(uint64_t x)
+{
+	return __builtin_ctzll(x);
+}
+#define a_clz_64 a_clz_64
+static inline int a_clz_64(uint64_t x)
+{
+	return __builtin_clzll(x);
+}
+
+#define a_cas a_cas
+static inline int a_cas(volatile int *p, int t, int s)
+{
+	int dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%1)\n\t"
+		"	{ p0 = cmp.eq(%0, %2)\n\t"
+		"	  if (!p0.new) jump:nt 2f }\n\t"
+		"	memw_locked(%1, p0) = %3\n\t"
+		"	if (!p0) jump 1b\n\t"
+		"2:	\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(t), "r"(s)
+		: "p0", "memory" );
+        return dummy;
+}
+
+#define a_cas_p a_cas_p
+static inline void *a_cas_p(volatile void *p, void *t, void *s)
+{
+	return (void *)a_cas(p, (int)t, (int)s);
+}
+
+#define a_swap a_swap
+static inline int a_swap(volatile int *x, int v)
+{
+	int old, dummy;
+	__asm__ __volatile__(
+		"	%1 = %3\n\t"
+		"1:	%0 = memw_locked(%2)\n\t"
+		"	memw_locked(%2, p0) = %1\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(old), "=&r"(dummy)
+		: "r"(x), "r"(v)
+		: "p0", "memory" );
+        return old;
+}
+
+#define a_fetch_add a_fetch_add
+static inline int a_fetch_add(volatile int *x, int v)
+{
+	int old, dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%2)\n\t"
+		"	%1 = add(%0, %3)\n\t"
+		"	memw_locked(%2, p0) = %1\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(old), "=&r"(dummy)
+		: "r"(x), "r"(v)
+		: "p0", "memory" );
+        return old;
+}
+
+#define a_inc a_inc
+static inline void a_inc(volatile int *x)
+{
+	a_fetch_add(x, 1);
+}
+
+#define a_dec a_dec
+static inline void a_dec(volatile int *x)
+{
+	int dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%1)\n\t"
+		"	%0 = add(%0, #-1)\n\t"
+		"	memw_locked(%1, p0) = %0\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(x)
+		: "p0", "memory" );
+}
+
+#define a_store a_store
+static inline void a_store(volatile int *p, int x)
+{
+	int dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%1)\n\t"
+		"	memw_locked(%1, p0) = %2\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(x)
+		: "p0", "memory" );
+}
+
+#define a_barrier a_barrier
+static inline void a_barrier()
+{
+	__asm__ __volatile__ ("barrier" ::: "memory");
+}
+#define a_spin a_spin
+static inline void a_spin()
+{
+	__asm__ __volatile__ ("pause(#255)" :::);
+}
+
+#define a_crash a_crash
+static inline void a_crash()
+{
+	*(volatile char *)0=0;
+}
+
+#define a_and a_and
+static inline void a_and(volatile int *p, int v)
+{
+	int dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%1)\n\t"
+		"	%0 = and(%0, %2)\n\t"
+		"	memw_locked(%1, p0) = %0\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(v)
+		: "p0", "memory" );
+}
+
+#define  a_or a_or
+static inline void a_or(volatile int *p, int v)
+{
+	int dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%1)\n\t"
+		"	%0 = or(%0, %2)\n\t"
+		"	memw_locked(%1, p0) = %0\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(v)
+		: "p0", "memory" );
+}
+
+#define a_or_l a_or_l
+static inline void a_or_l(volatile void *p, long v)
+{
+	a_or(p, v);
+}
+
+#define a_and_64 a_and_64
+static inline void a_and_64(volatile uint64_t *p, uint64_t v)
+{
+	uint64_t dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memd_locked(%1)\n\t"
+		"	%0 = and(%0, %2)\n\t"
+		"	memd_locked(%1, p0) = %0\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(v)
+		: "p0", "memory" );
+}
+
+#define  a_or_64 a_or_64
+static inline void a_or_64(volatile uint64_t *p, uint64_t v)
+{
+	uint64_t dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memd_locked(%1)\n\t"
+		"	%0 = or(%0, %2)\n\t"
+		"	memd_locked(%1, p0) = %0\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(v)
+		: "p0", "memory" );
+}
+
diff --git a/arch/hexagon/bits/alltypes.h.in b/arch/hexagon/bits/alltypes.h.in
new file mode 100644
index 00000000..e5d9d616
--- /dev/null
+++ b/arch/hexagon/bits/alltypes.h.in
@@ -0,0 +1,18 @@
+#define _Addr int
+#define _Int64 long long
+#define _Reg int
+
+#define __BYTE_ORDER 1234
+#define __LONG_MAX 0x7fffffffL
+
+#ifndef __cplusplus
+#ifdef __WCHAR_TYPE__
+TYPEDEF __WCHAR_TYPE__ wchar_t;
+#else
+TYPEDEF long wchar_t;
+#endif
+#endif
+
+TYPEDEF float float_t;
+TYPEDEF double double_t;
+TYPEDEF struct { long long __ll; long double __ld; } max_align_t;
diff --git a/arch/hexagon/bits/fenv.h b/arch/hexagon/bits/fenv.h
new file mode 100644
index 00000000..d3349306
--- /dev/null
+++ b/arch/hexagon/bits/fenv.h
@@ -0,0 +1,20 @@
+#define FE_INVALID    (1 << 1)
+#define FE_DIVBYZERO  (1 << 2)
+#define FE_OVERFLOW   (1 << 3)
+#define FE_UNDERFLOW  (1 << 4)
+#define FE_INEXACT    (1 << 5)
+#define FE_ALL_EXCEPT (FE_DIVBYZERO | FE_INEXACT | FE_INVALID | \
+                       FE_OVERFLOW | FE_UNDERFLOW)
+
+#define FE_TONEAREST  0x00
+#define FE_TOWARDZERO 0x01
+#define FE_DOWNWARD   0x02
+#define FE_UPWARD     0x03
+
+typedef unsigned long fexcept_t;
+
+typedef struct {
+	unsigned long __cw;
+} fenv_t;
+
+#define FE_DFL_ENV      ((const fenv_t *) -1)
diff --git a/arch/hexagon/bits/float.h b/arch/hexagon/bits/float.h
new file mode 100644
index 00000000..c4a655e7
--- /dev/null
+++ b/arch/hexagon/bits/float.h
@@ -0,0 +1,16 @@
+#define FLT_EVAL_METHOD 0
+
+#define LDBL_TRUE_MIN 4.94065645841246544177e-324L
+#define LDBL_MIN 2.22507385850720138309e-308L
+#define LDBL_MAX 1.79769313486231570815e+308L
+#define LDBL_EPSILON 2.22044604925031308085e-16L
+
+#define LDBL_MANT_DIG 53
+#define LDBL_MIN_EXP (-1021)
+#define LDBL_MAX_EXP 1024
+
+#define LDBL_DIG 15
+#define LDBL_MIN_10_EXP (-307)
+#define LDBL_MAX_10_EXP 308
+
+#define DECIMAL_DIG 17
diff --git a/arch/hexagon/bits/ipcstat.h b/arch/hexagon/bits/ipcstat.h
new file mode 100644
index 00000000..4f4fcb0c
--- /dev/null
+++ b/arch/hexagon/bits/ipcstat.h
@@ -0,0 +1 @@
+#define IPC_STAT 0x102
diff --git a/arch/hexagon/bits/msg.h b/arch/hexagon/bits/msg.h
new file mode 100644
index 00000000..7bbbb2bf
--- /dev/null
+++ b/arch/hexagon/bits/msg.h
@@ -0,0 +1,18 @@
+struct msqid_ds {
+	struct ipc_perm msg_perm;
+	unsigned long __msg_stime_lo;
+	unsigned long __msg_stime_hi;
+	unsigned long __msg_rtime_lo;
+	unsigned long __msg_rtime_hi;
+	unsigned long __msg_ctime_lo;
+	unsigned long __msg_ctime_hi;
+	unsigned long msg_cbytes;
+	msgqnum_t msg_qnum;
+	msglen_t msg_qbytes;
+	pid_t msg_lspid;
+	pid_t msg_lrpid;
+	unsigned long __unused[2];
+	time_t msg_stime;
+	time_t msg_rtime;
+	time_t msg_ctime;
+};
diff --git a/arch/hexagon/bits/posix.h b/arch/hexagon/bits/posix.h
new file mode 100644
index 00000000..30a38714
--- /dev/null
+++ b/arch/hexagon/bits/posix.h
@@ -0,0 +1,2 @@
+#define _POSIX_V6_ILP32_OFFBIG  1
+#define _POSIX_V7_ILP32_OFFBIG  1
diff --git a/arch/hexagon/bits/sem.h b/arch/hexagon/bits/sem.h
new file mode 100644
index 00000000..65661542
--- /dev/null
+++ b/arch/hexagon/bits/sem.h
@@ -0,0 +1,13 @@
+struct semid_ds {
+	struct ipc_perm sem_perm;
+	unsigned long __sem_otime_lo;
+	unsigned long __sem_otime_hi;
+	unsigned long __sem_ctime_lo;
+	unsigned long __sem_ctime_hi;
+	unsigned short sem_nsems;
+	char __sem_nsems_pad[sizeof(long)-sizeof(short)];
+	long __unused3;
+	long __unused4;
+	time_t sem_otime;
+	time_t sem_ctime;
+};
diff --git a/arch/hexagon/bits/setjmp.h b/arch/hexagon/bits/setjmp.h
new file mode 100644
index 00000000..2d75319a
--- /dev/null
+++ b/arch/hexagon/bits/setjmp.h
@@ -0,0 +1 @@
+typedef	long long  __jmp_buf[8];
diff --git a/arch/hexagon/bits/shm.h b/arch/hexagon/bits/shm.h
new file mode 100644
index 00000000..725fb469
--- /dev/null
+++ b/arch/hexagon/bits/shm.h
@@ -0,0 +1,31 @@
+#define SHMLBA 4096
+
+struct shmid_ds {
+	struct ipc_perm shm_perm;
+	size_t shm_segsz;
+	unsigned long __shm_atime_lo;
+	unsigned long __shm_atime_hi;
+	unsigned long __shm_dtime_lo;
+	unsigned long __shm_dtime_hi;
+	unsigned long __shm_ctime_lo;
+	unsigned long __shm_ctime_hi;
+	pid_t shm_cpid;
+	pid_t shm_lpid;
+	unsigned long shm_nattch;
+	unsigned long __pad1;
+	unsigned long __pad2;
+	unsigned long __pad3;
+	time_t shm_atime;
+	time_t shm_dtime;
+	time_t shm_ctime;
+};
+
+struct shminfo {
+	unsigned long shmmax, shmmin, shmmni, shmseg, shmall, __unused[4];
+};
+
+struct shm_info {
+	int __used_ids;
+	unsigned long shm_tot, shm_rss, shm_swp;
+	unsigned long __swap_attempts, __swap_successes;
+};
diff --git a/arch/hexagon/bits/signal.h b/arch/hexagon/bits/signal.h
new file mode 100644
index 00000000..b119f163
--- /dev/null
+++ b/arch/hexagon/bits/signal.h
@@ -0,0 +1,103 @@
+#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
+
+#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
+#define MINSIGSTKSZ 2048
+#define SIGSTKSZ 8192
+#endif
+
+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
+typedef int greg_t, gregset_t[18];
+typedef struct sigcontext
+{
+	unsigned long  r0,  r1,  r2,  r3;
+	unsigned long  r4,  r5,  r6,  r7;
+	unsigned long  r8,  r9, r10, r11;
+	unsigned long r12, r13, r14, r15;
+	unsigned long r16, r17, r18, r19;
+	unsigned long r20, r21, r22, r23;
+	unsigned long r24, r25, r26, r27;
+	unsigned long r28, r29, r30, r31;
+	unsigned long sa0;
+	unsigned long lc0;
+	unsigned long sa1;
+	unsigned long lc1;
+	unsigned long m0;
+	unsigned long m1;
+	unsigned long usr;
+	unsigned long p3_0;
+	unsigned long gp;
+	unsigned long ugp;
+	unsigned long pc;
+	unsigned long cause;
+	unsigned long badva;
+	unsigned long pad1;
+	unsigned long long pad2;
+} mcontext_t;
+#else
+typedef struct {
+	unsigned long __regs[48];
+} __attribute__((__aligned__(8))) mcontext_t;
+#endif
+
+struct sigaltstack {
+	void *ss_sp;
+	int ss_flags;
+	size_t ss_size;
+};
+
+typedef struct __ucontext {
+	unsigned long uc_flags;
+	struct __ucontext *uc_link;
+	stack_t uc_stack;
+	mcontext_t uc_mcontext;
+	sigset_t uc_sigmask;
+} ucontext_t;
+
+#define SA_NOCLDSTOP  1
+#define SA_NOCLDWAIT  2
+#define SA_SIGINFO    4
+#define SA_ONSTACK    0x08000000
+#define SA_RESTART    0x10000000
+#define SA_NODEFER    0x40000000
+#define SA_RESETHAND  0x80000000
+#define SA_RESTORER   0x04000000
+
+#endif
+
+#define SIGHUP    1
+#define SIGINT    2
+#define SIGQUIT   3
+#define SIGILL    4
+#define SIGTRAP   5
+#define SIGABRT   6
+#define SIGIOT    SIGABRT
+#define SIGBUS    7
+#define SIGFPE    8
+#define SIGKILL   9
+#define SIGUSR1   10
+#define SIGSEGV   11
+#define SIGUSR2   12
+#define SIGPIPE   13
+#define SIGALRM   14
+#define SIGTERM   15
+#define SIGSTKFLT 16
+#define SIGCHLD   17
+#define SIGCONT   18
+#define SIGSTOP   19
+#define SIGTSTP   20
+#define SIGTTIN   21
+#define SIGTTOU   22
+#define SIGURG    23
+#define SIGXCPU   24
+#define SIGXFSZ   25
+#define SIGVTALRM 26
+#define SIGPROF   27
+#define SIGWINCH  28
+#define SIGIO     29
+#define SIGPOLL   29
+#define SIGPWR    30
+#define SIGSYS    31
+#define SIGUNUSED SIGSYS
+
+#define _NSIG 65
diff --git a/arch/hexagon/bits/stat.h b/arch/hexagon/bits/stat.h
new file mode 100644
index 00000000..55e81fd9
--- /dev/null
+++ b/arch/hexagon/bits/stat.h
@@ -0,0 +1,20 @@
+/* copied from kernel definition, but with padding replaced
+ * by the corresponding correctly-sized userspace types. */
+struct stat {
+	dev_t st_dev;
+	ino_t st_ino;
+	mode_t st_mode;
+	nlink_t st_nlink;
+	uid_t st_uid;
+	gid_t st_gid;
+	dev_t st_rdev;
+	unsigned long __pad;
+	off_t st_size;
+	blksize_t st_blksize;
+	int __pad2;
+	blkcnt_t st_blocks;
+	struct timespec st_atim;
+	struct timespec st_mtim;
+	struct timespec st_ctim;
+	unsigned __unused[2];
+};
diff --git a/arch/hexagon/bits/stdint.h b/arch/hexagon/bits/stdint.h
new file mode 100644
index 00000000..d1b27121
--- /dev/null
+++ b/arch/hexagon/bits/stdint.h
@@ -0,0 +1,20 @@
+typedef int32_t int_fast16_t;
+typedef int32_t int_fast32_t;
+typedef uint32_t uint_fast16_t;
+typedef uint32_t uint_fast32_t;
+
+#define INT_FAST16_MIN  INT32_MIN
+#define INT_FAST32_MIN  INT32_MIN
+
+#define INT_FAST16_MAX  INT32_MAX
+#define INT_FAST32_MAX  INT32_MAX
+
+#define UINT_FAST16_MAX UINT32_MAX
+#define UINT_FAST32_MAX UINT32_MAX
+
+#define INTPTR_MIN      INT32_MIN
+#define INTPTR_MAX      INT32_MAX
+#define UINTPTR_MAX     UINT32_MAX
+#define PTRDIFF_MIN     INT32_MIN
+#define PTRDIFF_MAX     INT32_MAX
+#define SIZE_MAX        UINT32_MAX
diff --git a/arch/hexagon/bits/syscall.h.in b/arch/hexagon/bits/syscall.h.in
new file mode 100644
index 00000000..179cb34c
--- /dev/null
+++ b/arch/hexagon/bits/syscall.h.in
@@ -0,0 +1,311 @@
+#define __NR_io_setup 0
+#define __NR_io_destroy 1
+#define __NR_io_submit 2
+#define __NR_io_cancel 3
+#define __NR_io_getevents 4
+#define __NR_setxattr 5
+#define __NR_lsetxattr 6
+#define __NR_fsetxattr 7
+#define __NR_getxattr 8
+#define __NR_lgetxattr 9
+#define __NR_fgetxattr 10
+#define __NR_listxattr 11
+#define __NR_llistxattr 12
+#define __NR_flistxattr 13
+#define __NR_removexattr 14
+#define __NR_lremovexattr 15
+#define __NR_fremovexattr 16
+#define __NR_getcwd 17
+#define __NR_lookup_dcookie 18
+#define __NR_eventfd2 19
+#define __NR_epoll_create1 20
+#define __NR_epoll_ctl 21
+#define __NR_epoll_pwait 22
+#define __NR_dup 23
+#define __NR_dup3 24
+#define __NR_fcntl 25
+#define __NR_inotify_init1 26
+#define __NR_inotify_add_watch 27
+#define __NR_inotify_rm_watch 28
+#define __NR_ioctl 29
+#define __NR_ioprio_set 30
+#define __NR_ioprio_get 31
+#define __NR_flock 32
+#define __NR_mknodat 33
+#define __NR_mkdirat 34
+#define __NR_unlinkat 35
+#define __NR_symlinkat 36
+#define __NR_linkat 37
+#define __NR_renameat 38
+#define __NR_umount2 39
+#define __NR_mount 40
+#define __NR_pivot_root 41
+#define __NR_nfsservctl 42
+#define __NR_statfs 43
+#define __NR_fstatfs 44
+#define __NR_truncate 45
+#define __NR_ftruncate 46
+#define __NR_fallocate 47
+#define __NR_faccessat 48
+#define __NR_chdir 49
+#define __NR_fchdir 50
+#define __NR_chroot 51
+#define __NR_fchmod 52
+#define __NR_fchmodat 53
+#define __NR_fchownat 54
+#define __NR_fchown 55
+#define __NR_openat 56
+#define __NR_close 57
+#define __NR_vhangup 58
+#define __NR_pipe2 59
+#define __NR_quotactl 60
+#define __NR_getdents64 61
+#define __NR_lseek 62
+#define __NR_read 63
+#define __NR_write 64
+#define __NR_readv 65
+#define __NR_writev 66
+#define __NR_pread64 67
+#define __NR_pwrite64 68
+#define __NR_preadv 69
+#define __NR_pwritev 70
+#define __NR_sendfile 71
+#define __NR_pselect6 72
+#define __NR_ppoll 73
+#define __NR_signalfd4 74
+#define __NR_vmsplice 75
+#define __NR_splice 76
+#define __NR_tee 77
+#define __NR_readlinkat 78
+#define __NR_fstatat 79
+#define __NR_fstat 80
+#define __NR_sync 81
+#define __NR_fsync 82
+#define __NR_fdatasync 83
+#define __NR_sync_file_range2 84
+#define __NR_sync_file_range 84
+#define __NR_timerfd_create 85
+#define __NR_timerfd_settime 86
+#define __NR_timerfd_gettime 87
+#define __NR_utimensat 88
+#define __NR_acct 89
+#define __NR_capget 90
+#define __NR_capset 91
+#define __NR_personality 92
+#define __NR_exit 93
+#define __NR_exit_group 94
+#define __NR_waitid 95
+#define __NR_set_tid_address 96
+#define __NR_unshare 97
+#define __NR_futex 98
+#define __NR_set_robust_list 99
+#define __NR_get_robust_list 100
+#define __NR_nanosleep 101
+#define __NR_getitimer 102
+#define __NR_setitimer 103
+#define __NR_kexec_load 104
+#define __NR_init_module 105
+#define __NR_delete_module 106
+#define __NR_timer_create 107
+#define __NR_timer_gettime 108
+#define __NR_timer_getoverrun 109
+#define __NR_timer_settime 110
+#define __NR_timer_delete 111
+#define __NR_clock_settime 112
+#define __NR_clock_gettime32 113
+#define __NR_clock_getres 114
+#define __NR_clock_nanosleep 115
+#define __NR_syslog 116
+#define __NR_ptrace 117
+#define __NR_sched_setparam 118
+#define __NR_sched_setscheduler 119
+#define __NR_sched_getscheduler 120
+#define __NR_sched_getparam 121
+#define __NR_sched_setaffinity 122
+#define __NR_sched_getaffinity 123
+#define __NR_sched_yield 124
+#define __NR_sched_get_priority_max 125
+#define __NR_sched_get_priority_min 126
+#define __NR_sched_rr_get_interval 127
+#define __NR_restart_syscall 128
+#define __NR_kill 129
+#define __NR_tkill 130
+#define __NR_tgkill 131
+#define __NR_sigaltstack 132
+#define __NR_rt_sigsuspend 133
+#define __NR_rt_sigaction 134
+#define __NR_rt_sigprocmask 135
+#define __NR_rt_sigpending 136
+#define __NR_rt_sigtimedwait 137
+#define __NR_rt_sigqueueinfo 138
+#define __NR_rt_sigreturn 139
+#define __NR_setpriority 140
+#define __NR_getpriority 141
+#define __NR_reboot 142
+#define __NR_setregid 143
+#define __NR_setgid 144
+#define __NR_setreuid 145
+#define __NR_setuid 146
+#define __NR_setresuid 147
+#define __NR_getresuid 148
+#define __NR_setresgid 149
+#define __NR_getresgid 150
+#define __NR_setfsuid 151
+#define __NR_setfsgid 152
+#define __NR_times 153
+#define __NR_setpgid 154
+#define __NR_getpgid 155
+#define __NR_getsid 156
+#define __NR_setsid 157
+#define __NR_getgroups 158
+#define __NR_setgroups 159
+#define __NR_uname 160
+#define __NR_sethostname 161
+#define __NR_setdomainname 162
+#define __NR_getrlimit 163
+#define __NR_setrlimit 164
+#define __NR_getrusage 165
+#define __NR_umask 166
+#define __NR_prctl 167
+#define __NR_getcpu 168
+#define __NR_gettimeofday_time32 169
+#define __NR_settimeofday 170
+#define __NR_adjtimex 171
+#define __NR_getpid 172
+#define __NR_getppid 173
+#define __NR_getuid 174
+#define __NR_geteuid 175
+#define __NR_getgid 176
+#define __NR_getegid 177
+#define __NR_gettid 178
+#define __NR_sysinfo 179
+#define __NR_mq_open 180
+#define __NR_mq_unlink 181
+#define __NR_mq_timedsend 182
+#define __NR_mq_timedreceive 183
+#define __NR_mq_notify 184
+#define __NR_mq_getsetattr 185
+#define __NR_msgget 186
+#define __NR_msgctl 187
+#define __NR_msgrcv 188
+#define __NR_msgsnd 189
+#define __NR_semget 190
+#define __NR_semctl 191
+#define __NR_semtimedop 192
+#define __NR_semop 193
+#define __NR_shmget 194
+#define __NR_shmctl 195
+#define __NR_shmat 196
+#define __NR_shmdt 197
+#define __NR_socket 198
+#define __NR_socketpair 199
+#define __NR_bind 200
+#define __NR_listen 201
+#define __NR_accept 202
+#define __NR_connect 203
+#define __NR_getsockname 204
+#define __NR_getpeername 205
+#define __NR_sendto 206
+#define __NR_recvfrom 207
+#define __NR_setsockopt 208
+#define __NR_getsockopt 209
+#define __NR_shutdown 210
+#define __NR_sendmsg 211
+#define __NR_recvmsg 212
+#define __NR_readahead 213
+#define __NR_brk 214
+#define __NR_munmap 215
+#define __NR_mremap 216
+#define __NR_add_key 217
+#define __NR_request_key 218
+#define __NR_keyctl 219
+#define __NR_clone 220
+#define __NR_execve 221
+#define __NR_mmap 222
+#define __NR_fadvise64 223
+#define __NR_swapon 224
+#define __NR_swapoff 225
+#define __NR_mprotect 226
+#define __NR_msync 227
+#define __NR_mlock 228
+#define __NR_munlock 229
+#define __NR_mlockall 230
+#define __NR_munlockall 231
+#define __NR_mincore 232
+#define __NR_madvise 233
+#define __NR_remap_file_pages 234
+#define __NR_mbind 235
+#define __NR_get_mempolicy 236
+#define __NR_set_mempolicy 237
+#define __NR_migrate_pages 238
+#define __NR_move_pages 239
+#define __NR_rt_tgsigqueueinfo 240
+#define __NR_perf_event_open 241
+#define __NR_accept4 242
+#define __NR_recvmmsg 243
+#define __NR_arch_specific_syscall 244
+#define __NR_wait4 260
+#define __NR_prlimit64 261
+#define __NR_fanotify_init 262
+#define __NR_fanotify_mark 263
+#define __NR_name_to_handle_at 264
+#define __NR_open_by_handle_at 265
+#define __NR_clock_adjtime 266
+#define __NR_syncfs 267
+#define __NR_setns 268
+#define __NR_sendmmsg 269
+#define __NR_process_vm_readv 270
+#define __NR_process_vm_writev 271
+#define __NR_kcmp 272
+#define __NR_finit_module 273
+#define __NR_sched_setattr 274
+#define __NR_sched_getattr 275
+#define __NR_renameat2 276
+#define __NR_seccomp 277
+#define __NR_getrandom 278
+#define __NR_memfd_create 279
+#define __NR_bpf 280
+#define __NR_execveat 281
+#define __NR_userfaultfd 282
+#define __NR_membarrier 283
+#define __NR_mlock2 284
+#define __NR_copy_file_range 285
+#define __NR_preadv2 286
+#define __NR_pwritev2 287
+#define __NR_pkey_mprotect 288
+#define __NR_pkey_alloc 289
+#define __NR_pkey_free 290
+#define __NR_statx 291
+#define __NR_clock_gettime64 403
+#define __NR_clock_settime64 404
+#define __NR_clock_adjtime64 405
+#define __NR_clock_getres_time64 406
+#define __NR_clock_nanosleep_time64 407
+#define __NR_timer_gettime64 408
+#define __NR_timer_settime64 409
+#define __NR_timerfd_gettime64 410
+#define __NR_timerfd_settime64 411
+#define __NR_utimensat_time64 412
+#define __NR_pselect6_time64 413
+#define __NR_ppoll_time64 414
+#define __NR_io_pgetevents_time64 416
+#define __NR_recvmmsg_time64 417
+#define __NR_mq_timedsend_time64 418
+#define __NR_mq_timedreceive_time64 419
+#define __NR_semtimedop_time64 420
+#define __NR_rt_sigtimedwait_time64 421
+#define __NR_futex_time64 422
+#define __NR_sched_rr_get_interval_time64 423
+#define __NR_syscalls (__NR_sched_rr_get_interval_time64+1)
+#define __NR_newfstatat  __NR_fstatat
+#define __NR_fcntl64  __NR_fcntl
+#define __NR_statfs64  __NR_statfs
+#define __NR_fstatfs64  __NR_fstatfs
+#define __NR_truncate64  __NR_truncate
+#define __NR_ftruncate64  __NR_ftruncate
+#define __NR__llseek  __NR_lseek
+#define __NR_sendfile64  __NR_sendfile
+#define __NR_fstatat64  __NR_fstatat
+#define __NR_fstat64  __NR_fstat
+#define __NR_mmap2  __NR_mmap
+#define __NR_fadvise64_64  __NR_fadvise64
diff --git a/arch/hexagon/crt_arch.h b/arch/hexagon/crt_arch.h
new file mode 100644
index 00000000..0c1facec
--- /dev/null
+++ b/arch/hexagon/crt_arch.h
@@ -0,0 +1,35 @@
+__asm__(
+".weak _DYNAMIC \n"
+".hidden _DYNAMIC \n"
+".text \n"
+".global " START " \n"
+".type " START ", %function \n"
+START ": \n"
+"                                       // Find _DYNAMIC\n"
+"       jump 1f\n"
+".word  _DYNAMIC - .\n"
+"1:     r2 = pc\n"
+"       r2 = add(r2, #-4)\n"
+"       r1 = memw(r2)\n"
+"       r1 = add(r2, r1)\n"
+"	r30 = #0			// Signals the end of backtrace\n"
+"	r0 = r29			// Pointer to argc/argv\n"
+"	r29 = and(r29, #-16)		// Align\n"
+"	memw(r29+#-8) = r29\n"
+"	r29 = add(r29, #-8)\n"
+"	call " START "_c \n"
+".size " START ", .-" START "\n"
+);
+
+__asm__(
+".section \".note.ABI-tag\", \"a\" \n"
+".align 4 \n"
+".long 1f - 0f		/* name length */ \n"
+".long 3f - 2f		/* data length */ \n"
+".long  1		/* note type */ \n"
+"0:	.asciz \"GNU\" \n"
+"1:	.align 4		 \n"
+"2:	.long 0	/* linux */ \n"
+"	.long 3,0,0 \n"
+"3:	.align 4 \n"
+);
diff --git a/arch/hexagon/kstat.h b/arch/hexagon/kstat.h
new file mode 100644
index 00000000..92625f36
--- /dev/null
+++ b/arch/hexagon/kstat.h
@@ -0,0 +1,21 @@
+struct kstat {
+	dev_t st_dev;
+	ino_t st_ino;
+	mode_t st_mode;
+	nlink_t st_nlink;
+	uid_t st_uid;
+	gid_t st_gid;
+	dev_t st_rdev;
+	unsigned long __pad;
+	off_t st_size;
+	blksize_t st_blksize;
+	int __pad2;
+	blkcnt_t st_blocks;
+	long st_atime_sec;
+	long st_atime_nsec;
+	long st_mtime_sec;
+	long st_mtime_nsec;
+	long st_ctime_sec;
+	long st_ctime_nsec;
+	unsigned __unused[2];
+};
diff --git a/arch/hexagon/pthread_arch.h b/arch/hexagon/pthread_arch.h
new file mode 100644
index 00000000..b614fdd1
--- /dev/null
+++ b/arch/hexagon/pthread_arch.h
@@ -0,0 +1,13 @@
+// Hexagon supports variant 2 TLS.
+static inline uintptr_t __get_tp()
+{
+  uintptr_t tp;
+  __asm__ ( "%0 = ugp" : "=r"(tp));
+  return tp;
+}
+
+#define TP_ADJ(p) (p)
+
+#define CANCEL_REG_IP 43
+
+#define MC_PC pc
diff --git a/arch/hexagon/reloc.h b/arch/hexagon/reloc.h
new file mode 100644
index 00000000..de171961
--- /dev/null
+++ b/arch/hexagon/reloc.h
@@ -0,0 +1,16 @@
+#include <endian.h>
+
+#define LDSO_ARCH "hexagon"
+#define TPOFF_K 0
+
+#define REL_SYMBOLIC    R_HEX_32
+#define REL_GOT         R_HEX_GLOB_DAT
+#define REL_PLT         R_HEX_JMP_SLOT
+#define REL_RELATIVE    R_HEX_RELATIVE
+#define REL_COPY        R_HEX_COPY
+#define REL_DTPMOD      R_HEX_DTPMOD_32
+#define REL_TPOFF       R_HEX_TPREL_32
+#define REL_DTPOFF      R_HEX_DTPREL_32
+
+#define CRTJMP(pc,sp) __asm__ __volatile__( \
+	"r29 = %1 ; jumpr %0" : : "r"(pc), "r"(sp) : "memory" )
diff --git a/arch/hexagon/syscall_arch.h b/arch/hexagon/syscall_arch.h
new file mode 100644
index 00000000..625ec039
--- /dev/null
+++ b/arch/hexagon/syscall_arch.h
@@ -0,0 +1,78 @@
+
+#define __SYSCALL_LL_E(x) \
+((union { long long ll; long l[2]; }){ .ll = x }).l[0], \
+((union { long long ll; long l[2]; }){ .ll = x }).l[1]
+#define __SYSCALL_LL_O(x) 0, __SYSCALL_LL_E((x))
+
+#define __asm_syscall(...) do { \
+    __asm__ __volatile__ ( "trap0(#1)" \
+    : "=r"(r0) : __VA_ARGS__ : "memory"); \
+    return r0; \
+    } while (0)
+
+static inline long __syscall0(long n)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0");
+  __asm_syscall("r"(r6));
+}
+
+static inline long __syscall1(long n, long a)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  __asm_syscall("r"(r6), "0"(r0));
+}
+
+static inline long __syscall2(long n, long a, long b)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  register long r1 __asm__("r1") = b;
+  __asm_syscall("r"(r6), "0"(r0), "r"(r1));
+}
+
+static inline long __syscall3(long n, long a, long b, long c)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  register long r1 __asm__("r1") = b;
+  register long r2 __asm__("r2") = c;
+  __asm_syscall("r"(r6), "0"(r0), "r"(r1), "r"(r2));
+}
+
+static inline long __syscall4(long n, long a, long b, long c, long d)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  register long r1 __asm__("r1") = b;
+  register long r2 __asm__("r2") = c;
+  register long r3 __asm__("r3") = d;
+  __asm_syscall("r"(r6), "0"(r0), "r"(r1), "r"(r2), "r"(r3));
+}
+
+static inline long __syscall5(long n, long a, long b, long c, long d, long e)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  register long r1 __asm__("r1") = b;
+  register long r2 __asm__("r2") = c;
+  register long r3 __asm__("r3") = d;
+  register long r4 __asm__("r4") = e;
+  __asm_syscall("r"(r6), "0"(r0), "r"(r1), "r"(r2), "r"(r3), "r"(r4));
+}
+
+static inline long __syscall6(long n, long a, long b, long c, long d, long e,
+                              long f)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  register long r1 __asm__("r1") = b;
+  register long r2 __asm__("r2") = c;
+  register long r3 __asm__("r3") = d;
+  register long r4 __asm__("r4") = e;
+  register long r5 __asm__("r5") = f;
+  __asm_syscall("r"(r6), "0"(r0), "r"(r1), "r"(r2), "r"(r3), "r"(r4), "r"(r5));
+}
+
+#define SYSCALL_FADVISE_6_ARG
diff --git a/configure b/configure
index 947adf41..edbee0b5 100755
--- a/configure
+++ b/configure
@@ -323,6 +323,7 @@ case "$target" in
 # Catch these early to simplify matching for 32-bit archs
 arm*) ARCH=arm ;;
 aarch64*) ARCH=aarch64 ;;
+hexagon*) ARCH=hexagon ;;
 i?86-nt32*) ARCH=nt32 ;;
 i?86*) ARCH=i386 ;;
 x86_64-x32*|x32*|x86_64*x32) ARCH=x32 ;;
diff --git a/include/elf.h b/include/elf.h
index 549f92c1..54251c24 100644
--- a/include/elf.h
+++ b/include/elf.h
@@ -3284,6 +3284,107 @@ enum
 #define R_RISCV_SET32           56
 #define R_RISCV_32_PCREL        57
 
+#define R_HEX_NONE               0
+#define R_HEX_B22_PCREL          1
+#define R_HEX_B15_PCREL          2
+#define R_HEX_B7_PCREL           3
+#define R_HEX_LO16               4
+#define R_HEX_HI16               5
+#define R_HEX_32                 6
+#define R_HEX_16                 7
+#define R_HEX_8                  8
+#define R_HEX_GPREL16_0          9
+#define R_HEX_GPREL16_1         10
+#define R_HEX_GPREL16_2         11
+#define R_HEX_GPREL16_3         12
+#define R_HEX_HL16              13
+#define R_HEX_B13_PCREL         14
+#define R_HEX_B9_PCREL          15
+#define R_HEX_B32_PCREL_X       16
+#define R_HEX_32_6_X            17
+#define R_HEX_B22_PCREL_X       18
+#define R_HEX_B15_PCREL_X       19
+#define R_HEX_B13_PCREL_X       20
+#define R_HEX_B9_PCREL_X        21
+#define R_HEX_B7_PCREL_X        22
+#define R_HEX_16_X              23
+#define R_HEX_12_X              24
+#define R_HEX_11_X              25
+#define R_HEX_10_X              26
+#define R_HEX_9_X               27
+#define R_HEX_8_X               28
+#define R_HEX_7_X               29
+#define R_HEX_6_X               30
+#define R_HEX_32_PCREL          31
+#define R_HEX_COPY              32
+#define R_HEX_GLOB_DAT          33
+#define R_HEX_JMP_SLOT          34
+#define R_HEX_RELATIVE          35
+#define R_HEX_PLT_B22_PCREL     36
+#define R_HEX_GOTOFF_LO16       37
+#define R_HEX_GOTOFF_HI16       38
+#define R_HEX_GOTOFF_32         39
+#define R_HEX_GOT_LO16          40
+#define R_HEX_GOT_HI16          41
+#define R_HEX_GOT_32            42
+#define R_HEX_GOT_16            43
+#define R_HEX_DTPMOD_32         44
+#define R_HEX_DTPREL_LO16       45
+#define R_HEX_DTPREL_HI16       46
+#define R_HEX_DTPREL_32         47
+#define R_HEX_DTPREL_16         48
+#define R_HEX_GD_PLT_B22_PCREL  49
+#define R_HEX_GD_GOT_LO16       50
+#define R_HEX_GD_GOT_HI16       51
+#define R_HEX_GD_GOT_32         52
+#define R_HEX_GD_GOT_16         53
+#define R_HEX_IE_LO16           54
+#define R_HEX_IE_HI16           55
+#define R_HEX_IE_32             56
+#define R_HEX_IE_GOT_LO16       57
+#define R_HEX_IE_GOT_HI16       58
+#define R_HEX_IE_GOT_32         59
+#define R_HEX_IE_GOT_16         60
+#define R_HEX_TPREL_LO16        61
+#define R_HEX_TPREL_HI16        62
+#define R_HEX_TPREL_32          63
+#define R_HEX_TPREL_16          64
+#define R_HEX_6_PCREL_X         65
+#define R_HEX_GOTREL_32_6_X     66
+#define R_HEX_GOTREL_16_X       67
+#define R_HEX_GOTREL_11_X       68
+#define R_HEX_GOT_32_6_X        69
+#define R_HEX_GOT_16_X          70
+#define R_HEX_GOT_11_X          71
+#define R_HEX_DTPREL_32_6_X     72
+#define R_HEX_DTPREL_16_X       73
+#define R_HEX_DTPREL_11_X       74
+#define R_HEX_GD_GOT_32_6_X     75
+#define R_HEX_GD_GOT_16_X       76
+#define R_HEX_GD_GOT_11_X       77
+#define R_HEX_IE_32_6_X         78
+#define R_HEX_IE_16_X           79
+#define R_HEX_IE_GOT_32_6_X     80
+#define R_HEX_IE_GOT_16_X       81
+#define R_HEX_IE_GOT_11_X       82
+#define R_HEX_TPREL_32_6_X      83
+#define R_HEX_TPREL_16_X        84
+#define R_HEX_TPREL_11_X        85
+#define R_HEX_LD_PLT_B22_PCREL  86
+#define R_HEX_LD_GOT_LO16       87
+#define R_HEX_LD_GOT_HI16       88
+#define R_HEX_LD_GOT_32         89
+#define R_HEX_LD_GOT_16         90
+#define R_HEX_LD_GOT_32_6_X     91
+#define R_HEX_LD_GOT_16_X       92
+#define R_HEX_LD_GOT_11_X       93
+#define R_HEX_23_REG            94
+#define R_HEX_GD_PLT_B22_PCREL_X 95
+#define R_HEX_GD_PLT_B32_PCREL_X 96
+#define R_HEX_LD_PLT_B22_PCREL_X 97
+#define R_HEX_LD_PLT_B32_PCREL_X 98
+
+
 #ifdef __cplusplus
 }
 #endif
diff --git a/src/fenv/hexagon/fenv.S b/src/fenv/hexagon/fenv.S
new file mode 100644
index 00000000..ba1d0c75
--- /dev/null
+++ b/src/fenv/hexagon/fenv.S
@@ -0,0 +1,144 @@
+/*
+ * The Hexagon user status register includes five status fields which work
+ * as sticky flags for the five IEEE-defined exception conditions:
+ * inexact, overflow, underflow, divide by zero, and invalid.
+ * A sticky flag is set when the corresponding exception occurs,
+ * and remains set until explicitly cleared.
+ * 
+ *  usr:23:22 - Rounding Mode
+ *  00: Round toward nearest
+ *  01: Round toward zero
+ *  10: Downward Round toward negative infinity
+ *  11: Upward Round toward positive infinity
+ *
+ *  usr:5 - Floating-point IEEE Inexact Sticky Flag.
+ *  usr:4 - Floating-point IEEE Underflow Sticky Flag.
+ *  usr:3 - Floating-point IEEE Overflow Sticky Flag.
+ *  usr:2 - Floating-point IEEE Divide-By-Zero Sticky Flag.
+ *  usr:1 - Floating-point IEEE Invalid Sticky Flag.
+ *  usr:0 - Sticky Saturation Overflow, when 1 saturation occurred.
+ */
+
+#define FE_ALL_EXCEPT 0x3f
+
+#define USR_FE_MASK 0x3fc0003f
+#define RND_MASK    (0x3 << 22)
+#define RND_NEAR    (0x0 << 22)
+#define RND_ZERO    (0x1 << 22)
+#define RND_DOWN    (0x2 << 22)
+#define RND_UP      (0x3 << 22)
+
+/*
+ * int feclearexcept(int mask)
+ */
+.global feclearexcept
+.type feclearexcept,@function
+feclearexcept:
+  {
+    r0 = and(r0, #FE_ALL_EXCEPT) // Only touch the IEEE flag bits.
+    r1 = usr
+  }
+  r1 = and(r1, ~r0)
+  {
+    usr = r1
+    r0 = #0
+    jumpr r31
+  }
+
+/*
+ * int feraiseexcept(int mask)
+ */
+.global feraiseexcept
+.type feraiseexcept,@function
+feraiseexcept:
+  {
+    r0 = and(r0, #FE_ALL_EXCEPT) // Only touch the IEEE flag bits.
+    r1 = usr
+  }
+  r1 = or(r1, r0)
+  {
+    usr = r1
+    r0 = #0
+    jumpr r31
+  }
+
+
+/*
+ * int fetestexcept(int mask)
+ */
+.global fetestexcept
+.type fetestexcept,@function
+fetestexcept:
+  {
+    r0 = and(r0, #FE_ALL_EXCEPT) // Only touch the IEEE flag bits.
+    r1 = usr
+  }
+  {
+    r0 = and(r1, r0)
+    jumpr r31
+  }
+
+/*
+ *int fegetround(void)
+ */
+.global fegetround
+.type fegetround,@function
+fegetround:
+  r0 = usr
+  r0 = and(r0, ##RND_MASK)
+  r0 = lsr(r0, #22);
+  jumpr r31
+
+/*
+ * int __fesetround(int r)
+ */
+.global __fesetround
+.type __fesetround,@function
+__fesetround:
+  {
+    r0 = and(r0, #0x3) // Can only be 0,1,2, or 3
+    r1 = usr
+    r2 = ##RND_MASK
+  }
+  {
+    r1 = and (r1, ~r2)  // Clear the current rounding bits.
+    r0 = asl (r0, #22)
+  }
+  r1 = or(r1, r0)
+  usr = r1
+  {
+    r0 = #0; jumpr r31
+  }
+
+/*
+ * int fegetenv(fenv_t *envp)
+ */
+.global fegetenv
+.type fegetenv,@function
+fegetenv:
+  r1 = usr
+  memw(r0) = r1
+  {
+    r0 = #0
+    jumpr r31
+  }
+
+/*
+ * int fesetenv(const fenv_t *envp)
+ */
+.global fesetenv
+.type fesetenv,@function
+fesetenv:
+  { p0 = cmp.eq(r0, #-1); if (p0.new) r1 = #0 }  /* The default mode */
+  if (!p0) r1 = memw(r0)                         /* stored in fenv_t */
+
+  r2 = ##USR_FE_MASK // USR:FE bit mask
+  r1 = and(r1, r2)   // MASK the input bits with the FE bits
+  r3 = usr
+  r3 = and(r3, ~r2)  // Clear any currently set FE bits
+  r3 = or(r3, r1)    // Set the newbits
+  usr = r3
+  {
+    r0 = #0
+    jumpr r31
+  }
diff --git a/src/math/hexagon/fmaf.c b/src/math/hexagon/fmaf.c
new file mode 100644
index 00000000..7ce1996c
--- /dev/null
+++ b/src/math/hexagon/fmaf.c
@@ -0,0 +1,8 @@
+#include <math.h>
+
+float fmaf(float x, float y, float z)
+{
+	__asm__ ("%[z]+=sfmpy(%[x], %[y])"
+                 : [z]"+r"(z) : [x]"r"(x), [y]"r"(y));
+	return z;
+}
diff --git a/src/math/hexagon/fmaxf.c b/src/math/hexagon/fmaxf.c
new file mode 100644
index 00000000..0dc52b25
--- /dev/null
+++ b/src/math/hexagon/fmaxf.c
@@ -0,0 +1,8 @@
+#include <math.h>
+
+float fmaxf(float x, float y)
+{
+	__asm__ ("%[x]=sfmax(%[x], %[y])"
+                : [x]"+r"(x) : [y]"r"(y));
+	return x;
+}
diff --git a/src/math/hexagon/fminf.c b/src/math/hexagon/fminf.c
new file mode 100644
index 00000000..aeb20ae0
--- /dev/null
+++ b/src/math/hexagon/fminf.c
@@ -0,0 +1,8 @@
+#include <math.h>
+
+float fminf(float x, float y)
+{
+	__asm__ ("%[x]=sfmin(%[x], %[y])"
+                : [x]"+r"(x) : [y]"r"(y));
+	return x;
+}
diff --git a/src/setjmp/hexagon/longjmp.s b/src/setjmp/hexagon/longjmp.s
new file mode 100644
index 00000000..691b67dd
--- /dev/null
+++ b/src/setjmp/hexagon/longjmp.s
@@ -0,0 +1,25 @@
+.text
+.global _longjmp
+.global longjmp
+.type _longjmp,%function
+.type longjmp,%function
+_longjmp:
+longjmp:
+    { r17:16=memd(r0+#0)
+      r19:18=memd(r0+#8) }
+    { r21:20=memd(r0+#16)
+      r23:22=memd(r0+#24) }
+    { r25:24=memd(r0+#32)
+      r27:26=memd(r0+#40) }
+    { r29:28=memd(r0+#48)
+      r31:30=memd(r0+#56) }
+
+    r0 = r1
+    r1 = #0
+    p0 = cmp.eq(r0,r1)
+    if (!p0) jumpr r31
+    r0 = #1
+
+    jumpr r31
+.size _longjmp, .-_longjmp
+.size longjmp, .-longjmp
diff --git a/src/setjmp/hexagon/setjmp.s b/src/setjmp/hexagon/setjmp.s
new file mode 100644
index 00000000..d29f036e
--- /dev/null
+++ b/src/setjmp/hexagon/setjmp.s
@@ -0,0 +1,24 @@
+.text
+.global __setjmp
+.global _setjmp
+.global setjmp
+.type __setjmp,@function
+.type _setjmp,@function
+.type setjmp,@function
+__setjmp:
+_setjmp:
+setjmp:
+    { memd(r0+#0)=r17:16
+      memd(r0+#8)=r19:18 }
+    { memd(r0+#16)=r21:20
+      memd(r0+#24)=r23:22 }
+    { memd(r0+#32)=r25:24
+      memd(r0+#40)=r27:26 }
+    { memd(r0+#48)=r29:28
+      memd(r0+#56)=r31:30 }
+
+    r0 = #0
+    jumpr r31
+.size __setjmp, .-__setjmp
+.size _setjmp, .-_setjmp
+.size setjmp, .-setjmp
diff --git a/src/signal/hexagon/restore.s b/src/signal/hexagon/restore.s
new file mode 100644
index 00000000..f43f5e02
--- /dev/null
+++ b/src/signal/hexagon/restore.s
@@ -0,0 +1,11 @@
+// TODO - Test this if sa_restorer is ever supported in our kernel
+.global __restore
+.type __restore,%function
+.global __restore_rt
+.type __restore_rt,%function
+__restore:
+__restore_rt:
+	r6 = #139				// SYS_rt_sigreturn
+	trap0(#0)
+.size __restore, .-__restore
+.size __restore_rt, .-__restore_rt
diff --git a/src/signal/hexagon/sigsetjmp.s b/src/signal/hexagon/sigsetjmp.s
new file mode 100644
index 00000000..f1aaf165
--- /dev/null
+++ b/src/signal/hexagon/sigsetjmp.s
@@ -0,0 +1,28 @@
+.global sigsetjmp
+.global __sigsetjmp
+.type sigsetjmp,@function
+.type __sigsetjmp,@function
+.balign 4
+sigsetjmp:
+__sigsetjmp:
+	// if savemask is 0 sigsetjmp behaves like setjmp
+	{
+		p0 = cmp.eq(r1, #0)
+		if (p0.new) jump:t ##setjmp
+	}
+	{
+		memw(r0+#64+4+8) = r16  // save r16 in __ss[2]
+		memw(r0+#64)   = r31  // save linkregister in __fl
+		r16 = r0
+	}
+		call ##setjmp
+	{
+		r1 = r0;
+		r0  = r16             // restore r0
+		r31 = memw(r16+#64)   // restore linkregister
+		r16 = memw(r16+#64+4+8) // restore r16 from __ss[2]
+	}
+.hidden __sigsetjmp_tail
+	jump ##__sigsetjmp_tail
+
+.size	sigsetjmp, .-sigsetjmp
diff --git a/src/thread/hexagon/__set_thread_area.s b/src/thread/hexagon/__set_thread_area.s
new file mode 100644
index 00000000..87a991b7
--- /dev/null
+++ b/src/thread/hexagon/__set_thread_area.s
@@ -0,0 +1,7 @@
+.global __set_thread_area
+.type   __set_thread_area,@function
+__set_thread_area:
+	{ ugp = r0
+	  r0 = #0
+	  jumpr r31 }
+.size __set_thread_area, .-__set_thread_area
diff --git a/src/thread/hexagon/__unmapself.s b/src/thread/hexagon/__unmapself.s
new file mode 100644
index 00000000..c47dce21
--- /dev/null
+++ b/src/thread/hexagon/__unmapself.s
@@ -0,0 +1,11 @@
+#include <syscall.h>
+
+.global __unmapself
+.type   __unmapself,%function
+__unmapself:
+	r6 = #215			// SYS_munmap
+	trap0(#1)
+	r6 = #93			// SYS_exit
+	trap0(#1)
+	jumpr r31
+.size __unmapself, .-__unmapself
diff --git a/src/thread/hexagon/clone.s b/src/thread/hexagon/clone.s
new file mode 100644
index 00000000..42aab67a
--- /dev/null
+++ b/src/thread/hexagon/clone.s
@@ -0,0 +1,37 @@
+// __clone(func, stack, flags, arg, ptid, tls, ctid)
+//         r0,   r1,    r2,    r3,  r4,   r5,  stack
+
+// tid = syscall(SYS_clone, flags, stack, ptid, ctid, tls)
+//               r6,        r0,    r1,    r2,   r3,   r4
+// if (tid != 0) return
+// func(arg)
+// syscall(SYS_exit)
+
+.text
+.global __clone
+.type   __clone,%function
+__clone:
+	allocframe(#8)
+	// Save pointers for later
+	{ r11 = r0
+	  r10 = r3 }
+
+	// Set up syscall args - The stack must be 8 byte aligned.
+	{ r0 = r2
+	  r1 = and(r1, ##0xfffffff8)
+	  r2 = r4 }
+	{
+	  r3 = memw(r30+#8)
+	  r4 = r5 }
+	r6 = #220			// SYS_clone
+	trap0(#1)
+
+	p0 = cmp.eq(r0, #0)
+	if (!p0) dealloc_return
+
+	{ r0 = r10
+	  callr r11 }
+
+	r6 = #93			// SYS_exit
+	trap0(#1)
+.size __clone, .-__clone
diff --git a/src/thread/hexagon/syscall_cp.s b/src/thread/hexagon/syscall_cp.s
new file mode 100644
index 00000000..50383cad
--- /dev/null
+++ b/src/thread/hexagon/syscall_cp.s
@@ -0,0 +1,35 @@
+// __syscall_cp_asm(&self->cancel, nr,  u, v, w, x, y,    z)
+//                  r0             r1  r2 r3 r4 r5  stack stack
+
+// syscall(nr,  u, v, w, x, y, z)
+//         r6  r0 r1 r2 r3 r4 r5
+
+.text
+.global __cp_begin
+.hidden __cp_begin
+.global __cp_end
+.hidden __cp_end
+.global __cp_cancel
+.hidden __cp_cancel
+.hidden __cancel
+.global __syscall_cp_asm
+.hidden __syscall_cp_asm
+.type __syscall_cp_asm,%function
+__syscall_cp_asm:
+__cp_begin:
+	r0 = memw(r0+#0)
+	{
+	  p0 = cmp.eq(r0, #0); if (!p0.new) jump:nt __cancel
+	}
+	{ r6 = r1
+	  r1:0 = combine(r3, r2)
+	  r3:2 = combine(r5, r4) }
+	{ r4 = memw(r29+#0)
+	  r5 = memw(r29+#4) }
+	trap0(#1)
+__cp_end:
+	jumpr r31
+.size __syscall_cp_asm, .-__syscall_cp_asm
+__cp_cancel:
+        jump __cancel
+.size __cp_cancel, .-__cp_cancel

^ permalink raw reply	[flat|nested] 43+ messages in thread

* Re: [musl] Hexagon DSP support
  2020-09-17 22:31                                         ` sidneym
@ 2020-09-18  1:08                                           ` Rich Felker
  2020-09-18  8:10                                             ` Szabolcs Nagy
  2020-09-20 13:12                                             ` sidneym
  0 siblings, 2 replies; 43+ messages in thread
From: Rich Felker @ 2020-09-18  1:08 UTC (permalink / raw)
  To: sidneym; +Cc: musl

On Thu, Sep 17, 2020 at 05:31:29PM -0500, sidneym@codeaurora.org wrote:
> 
> 
> > -----Original Message-----
> > From: 'Rich Felker' <dalias@libc.org>
> > Sent: Wednesday, September 16, 2020 8:33 PM
> > To: musl@lists.openwall.com
> > Subject: Re: [musl] Hexagon DSP support
> > 
> > On Wed, Sep 16, 2020 at 03:49:28PM -0500, sidneym@codeaurora.org wrote:
> > >
> > >
> > > > -----Original Message-----
> > > > From: sidneym@codeaurora.org <sidneym@codeaurora.org>
> > > > Sent: Friday, July 24, 2020 12:50 PM
> > > > To: 'Szabolcs Nagy' <nsz@port70.net>
> > > > Cc: 'Rich Felker' <dalias@libc.org>; 'musl@lists.openwall.com'
> > > > <musl@lists.openwall.com>
> > > > Subject: RE: [musl] Hexagon DSP support
> > > >
> > > >
> > > >
> > > > > -----Original Message-----
> > > > > From: Szabolcs Nagy <nsz@port70.net>
> > > > > Sent: Thursday, July 23, 2020 4:56 PM
> > > > > To: sidneym@codeaurora.org
> > > > > Cc: 'Rich Felker' <dalias@libc.org>; musl@lists.openwall.com
> > > > > Subject: Re: [musl] Hexagon DSP support
> > > > >
> > > > > * sidneym@codeaurora.org <sidneym@codeaurora.org> [2020-07-20
> > > > > 16:26:58 -0500]:
> > > > > > I removed fma/fmal/fmax/fmin/fabs from compiler-rt-builtins,
> > > > > > https://reviews.llvm.org/D82263
> > > > > > The comparison with musl can be found here:
> > > > > > https://github.com/quic/musl/compare/hexagon but I've also
> > > > > > attached the patch.
> > > > > >
> > > > > > An assert in clang when building both musl and libc-test for
> > > > > > hexagon was fixed by, https://reviews.llvm.org/D80952 prior to
> > > > > > this change -frounding-math had to be used.
> > > > > >
> > > > > > The test-results are also attached.  Everything is built with
> > > > > > the tip-of-tree llvm so sometimes results vary but these are the
> > > > > > results I got from this morning's clone.  The only notable
> > > > > > difference in the results would be that both fma and fmal fail
> > > > > > and this is because of the compiler-rt change.  I didn't add fma
> > > > > > to musl because it require more complex assembly, along the
> > > > > > lines you saw in an earlier version with
> > > > > sqrt.
> > > > >
> > > > >
> > > > > the fma and sqrt failures are still not fully explained, e.g. this
> > > > > looks
> > > wrong:
> > > > >
> > > > > src/math/special/fma.h:42: RN fma(0x1p+0,0x1p+0,-0x1p-1074) want
> > > > > 0x1p+0 got -0x1.fffffp-43 ulperr -4503599627370496.000 = -0x1p+52
> > > > > 0x1p++
> > > > > 0x0p+0
> > > > >
> > > > > the only target specific bit in fma is a_clz_64 so i would check
> that.
> > > > >
> > > > > e.g. a_clz_64(1ULL << 42) should give 21 (this computation happens
> > > > > during the fma test case above).
> > > >
> > > > Hexagon didn't have a_clz_64 implemented however I added this
> > > > morning it and noticed no differences.  I will update the patch with
> > > > that routine included.
> > > >
> > > > I did notice a compiler regression in how it compiled fma and have
> > > > asked a compiler person to take a look.  An older version of our
> > > > internally
> > > maintained
> > > > compiler does produce the expected results for the values I used but
> > > > later versions do not.  Unfortunately changing optimization levels
> > > > will produce different results as well.
> > >
> > > I've attached updated test results and patch.  The patch doesn't
> > > change much other than adding the above mentioned a_clz_64.  The only
> > > other change was an update to pthread_arch.h for an api update so
> > > hexagon conforms with the rest of musl.
> > >
> > > Between updates to llvm and musl both fma and sqrt issues are resolved
> > > provided I compile the library without optimization enabled.  No new
> > > tests fail.
> > >
> > > I guess I also need to know what the thoughts are about adding hexagon
> > > to the mainline base.  There are no issues adding from this end.
> > 
> > I'll post some review with the hope that this can move forward upstream in
> > musl soon. I might need some help figuring out how to get a cross build
> > environment to check things, but I'll follow up when I do.
> > 
> > The review that follows is not 100% thorough but I think it's more
> detailed
> > than I've done for hexagon so far. Most of it's open to discussion if you
> think
> > anything I say is wrong.
> > 
> > > diff --git a/arch/hexagon/atomic_arch.h b/arch/hexagon/atomic_arch.h
> > > new file mode 100644 index 00000000..ede55956
> > > --- /dev/null
> > > +++ b/arch/hexagon/atomic_arch.h
> > > @@ -0,0 +1,194 @@
> > > +#define a_ctz_32 a_ctz_32
> > > +static inline int a_ctz_32(unsigned long x) {
> > > +	__asm__(
> > > +		"%0 = ct0(%0)\n\t"
> > > +		: "+r"(x));
> > > +	return x;
> > > +}
> > > +
> > > +#define a_ctz_64 a_ctz_64
> > > +static inline int a_ctz_64(uint64_t x) {
> > > +	int count;
> > > +	__asm__(
> > > +		"%0 = ct0(%1)\n\t"
> > > +		: "=r"(count) : "r"(x));
> > > +	return count;
> > > +}
> > > +#define a_clz_64 a_clz_64
> > > +static inline int a_clz_64(uint64_t x) {
> > > +        int count;
> > > +        __asm__(
> > > +                "%1 = brev(%1)\n\t"
> > > +                "%0 = ct0(%1)\n\t"
> > > +                : "=r"(count) : "r"(x));
> > > +        return count;
> > > +}
> > 
> > This should probably do just the brev in asm then return
> > a_ctz_64(result) so that the compiler has the freedom to schedule the
> insns
> > independently, unless there's a reason not to want it to do that.
> 
> I used AARCH64's a_ctz_64 as a reference for this, but there are builtins
> for these operations and I will use those instead, __builtin_clzll(x);

No, builtins of that sort aren't used in musl for various reasons.
This one might be technically okay (as opposed to others that can
produce circular definitions and such), but the style preference is
still to write it as an asm statement.

> > > +#define a_cas a_cas
> > > +static inline int a_cas(volatile int *p, int t, int s) {
> > > +	int dummy;
> > > +	__asm__ __volatile__(
> > > +		"1:	%0 = memw_locked(%1)\n\t"
> > > +		"	{ p0 = cmp.eq(%0, %2)\n\t"
> > > +		"	  if (!p0.new) jump:nt 2f }\n\t"
> > > +		"	memw_locked(%1, p0) = %3\n\t"
> > > +		"	if (!p0) jump 1b\n\t"
> > > +		"2:	\n\t"
> > > +		: "=&r"(dummy)
> > > +		: "r"(p), "r"(t), "r"(s)
> > > +		: "p0", "memory" );
> > > +        return dummy;
> > > +}
> > 
> > I don't know the hexagon atomic model, but as far as I can tell these at
> least
> > "look right" in the sense of having right asm constraints.
> > 
> > > [...]
> > > +#define a_barrier a_barrier
> > > +static inline void a_barrier()
> > > +{
> > > +	__asm__ __volatile__ ("barrier" ::: "memory"); }
> > 
> > Is the barrier implied in memw_locked? If not, there need to be explicit
> > barriers in all the atomic functions.
> 
> Yes, if there is any memory access on the reserved address the reservation
> is lost and the predicate is false.

That's not what a barrier means. The question is whether it orders all
access to *other* memory, not the address with the reservation on it.
In other words, musl's a_*() atomics need to be full seq_cst model
operations, not relaxed atomics.

> > > diff --git a/arch/hexagon/crt_arch.h b/arch/hexagon/crt_arch.h new
> > > file mode 100644 index 00000000..331a797e
> > > --- /dev/null
> > > +++ b/arch/hexagon/crt_arch.h
> > > @@ -0,0 +1,35 @@
> > > +__asm__(
> > > +".weak _DYNAMIC \n"
> > > +".hidden _DYNAMIC \n"
> > > +".text \n"
> > > +".global " START " \n"
> > > +".type " START ", %function \n"
> > > +START ": \n"
> > > +"                                       // Find _DYNAMIC\n"
> > > +"       jump 1f\n"
> > > +".word  _DYNAMIC - .\n"
> > > +"1:     r2 = pc\n"
> > > +"       r2 = add(r2, #-4)\n"
> > > +"       r1 = memw(r2)\n"
> > > +"       r1 = add(r2, r1)\n"
> > > +"	r30 = #0			// Signals the end of backtrace\n"
> > > +"	r0 = r29			// Pointer to argc/argv\n"
> > > +"	r29 = and(r29, #-16)		// Align\n"
> > > +"	memw(r29+#-8) = r29\n"
> > > +"	r29 = add(r29, #-8)\n"
> > > +"	call " START "_c \n"
> > > +".size " START ", .-" START "\n"
> > > +);
> > > +
> > > +__asm__(
> > > +".section \".note.ABI-tag\", \"a\" \n"
> > > +".align 4 \n"
> > > +".long 1f - 0f		/* name length */ \n"
> > > +".long 3f - 2f		/* data length */ \n"
> > > +".long  1		/* note type */ \n"
> > > +"0:	.asciz \"GNU\"	/* vendor name seems like this should be
> MUSL but
> > lldb doesn't agree.*/ \n"
> > > +"1:	.align 4		 \n"
> > > +"2:	.long 0	/* linux */ \n"
> > > +"	.long 3,0,0 \n"
> > > +"3:	.align 4 \n"
> > > +);
> > 
> > Is there a reason this needs to be here at all? Shouldn't the tooling
> generate
> > it if it's actually wanted/needed?
> 
> OK, this is here so lldb can select the right target allowing the same
> version of lldb to work in multiple runtime environments. I need to take a
> look at what the options are if this isn't a good place for this.

OK, please follow up with what you find. I'm pretty sure this belongs
in the tooling though (as something the compiler emits or the
assembler emits based on how it's invoked and what its target is) not
in a file in libc.

> > > diff --git a/arch/hexagon/reloc.h b/arch/hexagon/reloc.h new file mode
> > > 100644 index 00000000..14085872
> > > --- /dev/null
> > > +++ b/arch/hexagon/reloc.h
> > > @@ -0,0 +1,25 @@
> > > +#include <endian.h>
> > > +
> > > +#if __BYTE_ORDER == __LITTLE_ENDIAN
> > > +#define ENDIAN_SUFFIX "el"
> > > +#else
> > > +#define ENDIAN_SUFFIX ""
> > > +#endif
> > 
> > bits/alltypes.h.in defined __BYTE_ORDER as 1234 (unconditionally little
> > endian). Does Hexagon (hw and abi) actually support both byte orders? If
> > not, I don't think there should be an endian suffix here at all.
> 
> No it does not I will remove it.

OK. Make sure the compiler target support has the right ldso name too
(I think that's /lib/ld-musl-hexagon.so.1, right?).

> > > diff --git a/src/fenv/hexagon/fenv.S b/src/fenv/hexagon/fenv.S new
> > > file mode 100644 index 00000000..07b89764
> > > --- /dev/null
> > > +++ b/src/fenv/hexagon/fenv.S
> > > @@ -0,0 +1,143 @@
> > > +/*
> > > +The Hexagon user status register includes five status fields which
> > > +work as sticky flags for the five IEEE-defined exception conditions:
> > > +inexact, overflow, underflow, divide by zero, and invalid. A sticky
> > > +flag is set when the corresponding exception occurs, and remains set
> until
> > explicitly cleared.
> > 
> > Please format for at most 80 columns. (Some source files have a few longer
> > lines, but if you're flowing text it should be flowed to 80 or
> > fewer.)
> 
> Will fix those lines and a couple of others I noticed.
> 
> The changes I made can be seen here:
> https://github.com/quic/musl/commit/4d714f2defcd926b4f8c0425af363b382d3084cb
> 
> I've also attached an updated patch.

OK. I haven't looked at it yet but I wanted to go ahead and get you
replies to the content in the email body. If there's anything else in
the patch that needs commenting on I'll follow up soon, probably
tomorrow.

Rich

^ permalink raw reply	[flat|nested] 43+ messages in thread

* Re: [musl] Hexagon DSP support
  2020-09-18  1:08                                           ` Rich Felker
@ 2020-09-18  8:10                                             ` Szabolcs Nagy
  2020-09-20 13:12                                             ` sidneym
  1 sibling, 0 replies; 43+ messages in thread
From: Szabolcs Nagy @ 2020-09-18  8:10 UTC (permalink / raw)
  To: Rich Felker; +Cc: sidneym, musl

* Rich Felker <dalias@libc.org> [2020-09-17 21:08:07 -0400]:
> On Thu, Sep 17, 2020 at 05:31:29PM -0500, sidneym@codeaurora.org wrote:
> > > -----Original Message-----
> > > From: 'Rich Felker' <dalias@libc.org>
> > > Sent: Wednesday, September 16, 2020 8:33 PM
> > > To: musl@lists.openwall.com
> > > Subject: Re: [musl] Hexagon DSP support
> > > 
> > > On Wed, Sep 16, 2020 at 03:49:28PM -0500, sidneym@codeaurora.org wrote:
> > > >
> > > > +__asm__(
> > > > +".section \".note.ABI-tag\", \"a\" \n"
> > > > +".align 4 \n"
> > > > +".long 1f - 0f		/* name length */ \n"
> > > > +".long 3f - 2f		/* data length */ \n"
> > > > +".long  1		/* note type */ \n"
> > > > +"0:	.asciz \"GNU\"	/* vendor name seems like this should be
> > MUSL but
> > > lldb doesn't agree.*/ \n"
> > > > +"1:	.align 4		 \n"
> > > > +"2:	.long 0	/* linux */ \n"
> > > > +"	.long 3,0,0 \n"
> > > > +"3:	.align 4 \n"
> > > > +);
> > > 
> > > Is there a reason this needs to be here at all? Shouldn't the tooling
> > generate
> > > it if it's actually wanted/needed?
> > 
> > OK, this is here so lldb can select the right target allowing the same
> > version of lldb to work in multiple runtime environments. I need to take a
> > look at what the options are if this isn't a good place for this.
> 
> OK, please follow up with what you find. I'm pretty sure this belongs
> in the tooling though (as something the compiler emits or the
> assembler emits based on how it's invoked and what its target is) not
> in a file in libc.

that gnu abi note specifies the minimum supported
kernel version (linux 3.0.0 in this case) and in glibc
it is explicitly added to all glibc dsos and to *crt1.o
(so it depends on the libc not other tooling).

i don't think the debugger should need this unless there
was some linux abi change, in glibc it is used to check
against the runtime kernel version and abort (or fail
dlopen) if that is too old, but musl has no such logic.

see comments about abi note in:
https://sourceware.org/git?p=glibc.git;a=blob;f=csu/abi-note.c
https://sourceware.org/git?p=glibc.git;a=blob;f=abi-tags
see how it is used in dlopen:
https://sourceware.org/git?p=glibc.git;a=blob;f=elf/dl-load.c;h=646c5dca40efcc9ba9f39dbda8b189864792216d;hb=HEAD#l1819


^ permalink raw reply	[flat|nested] 43+ messages in thread

* RE: [musl] Hexagon DSP support
  2020-09-18  1:08                                           ` Rich Felker
  2020-09-18  8:10                                             ` Szabolcs Nagy
@ 2020-09-20 13:12                                             ` sidneym
  2020-09-20 17:17                                               ` 'Rich Felker'
  1 sibling, 1 reply; 43+ messages in thread
From: sidneym @ 2020-09-20 13:12 UTC (permalink / raw)
  To: 'Rich Felker'; +Cc: musl



> -----Original Message-----
> From: Rich Felker <dalias@libc.org>
> Sent: Thursday, September 17, 2020 8:08 PM
> To: sidneym@codeaurora.org
> Cc: musl@lists.openwall.com
> Subject: Re: [musl] Hexagon DSP support
> 
> On Thu, Sep 17, 2020 at 05:31:29PM -0500, sidneym@codeaurora.org wrote:
> >
> >
> > > -----Original Message-----
> > > From: 'Rich Felker' <dalias@libc.org>
> > > Sent: Wednesday, September 16, 2020 8:33 PM
> > > To: musl@lists.openwall.com
> > > Subject: Re: [musl] Hexagon DSP support
> > >
> > > On Wed, Sep 16, 2020 at 03:49:28PM -0500, sidneym@codeaurora.org
> wrote:
> > > >
> > > >
> > > > > -----Original Message-----
> > > > > From: sidneym@codeaurora.org <sidneym@codeaurora.org>
> > > > > Sent: Friday, July 24, 2020 12:50 PM
> > > > > To: 'Szabolcs Nagy' <nsz@port70.net>
> > > > > Cc: 'Rich Felker' <dalias@libc.org>; 'musl@lists.openwall.com'
> > > > > <musl@lists.openwall.com>
> > > > > Subject: RE: [musl] Hexagon DSP support
> > > > >
> > > > >
> > > > >
> > > > > > -----Original Message-----
> > > > > > From: Szabolcs Nagy <nsz@port70.net>
> > > > > > Sent: Thursday, July 23, 2020 4:56 PM
> > > > > > To: sidneym@codeaurora.org
> > > > > > Cc: 'Rich Felker' <dalias@libc.org>; musl@lists.openwall.com
> > > > > > Subject: Re: [musl] Hexagon DSP support
> > > > > >
> > > > > > * sidneym@codeaurora.org <sidneym@codeaurora.org> [2020-07-
> 20
> > > > > > 16:26:58 -0500]:
> > > > > > > I removed fma/fmal/fmax/fmin/fabs from compiler-rt-builtins,
> > > > > > > https://reviews.llvm.org/D82263 The comparison with musl can
> > > > > > > be found here:
> > > > > > > https://github.com/quic/musl/compare/hexagon but I've also
> > > > > > > attached the patch.
> > > > > > >
> > > > > > > An assert in clang when building both musl and libc-test for
> > > > > > > hexagon was fixed by, https://reviews.llvm.org/D80952 prior
> > > > > > > to this change -frounding-math had to be used.
> > > > > > >
> > > > > > > The test-results are also attached.  Everything is built
> > > > > > > with the tip-of-tree llvm so sometimes results vary but
> > > > > > > these are the results I got from this morning's clone.  The
> > > > > > > only notable difference in the results would be that both
> > > > > > > fma and fmal fail and this is because of the compiler-rt
> > > > > > > change.  I didn't add fma to musl because it require more
> > > > > > > complex assembly, along the lines you saw in an earlier
> > > > > > > version with
> > > > > > sqrt.
> > > > > >
> > > > > >
> > > > > > the fma and sqrt failures are still not fully explained, e.g.
> > > > > > this looks
> > > > wrong:
> > > > > >
> > > > > > src/math/special/fma.h:42: RN fma(0x1p+0,0x1p+0,-0x1p-1074)
> > > > > > want
> > > > > > 0x1p+0 got -0x1.fffffp-43 ulperr -4503599627370496.000 =
> > > > > > 0x1p+-0x1p+52
> > > > > > 0x1p++
> > > > > > 0x0p+0
> > > > > >
> > > > > > the only target specific bit in fma is a_clz_64 so i would
> > > > > > check
> > that.
> > > > > >
> > > > > > e.g. a_clz_64(1ULL << 42) should give 21 (this computation
> > > > > > happens during the fma test case above).
> > > > >
> > > > > Hexagon didn't have a_clz_64 implemented however I added this
> > > > > morning it and noticed no differences.  I will update the patch
> > > > > with that routine included.
> > > > >
> > > > > I did notice a compiler regression in how it compiled fma and
> > > > > have asked a compiler person to take a look.  An older version
> > > > > of our internally
> > > > maintained
> > > > > compiler does produce the expected results for the values I used
> > > > > but later versions do not.  Unfortunately changing optimization
> > > > > levels will produce different results as well.
> > > >
> > > > I've attached updated test results and patch.  The patch doesn't
> > > > change much other than adding the above mentioned a_clz_64.  The
> > > > only other change was an update to pthread_arch.h for an api
> > > > update so hexagon conforms with the rest of musl.
> > > >
> > > > Between updates to llvm and musl both fma and sqrt issues are
> > > > resolved provided I compile the library without optimization
> > > > enabled.  No new tests fail.
> > > >
> > > > I guess I also need to know what the thoughts are about adding
> > > > hexagon to the mainline base.  There are no issues adding from this
> end.
> > >
> > > I'll post some review with the hope that this can move forward
> > > upstream in musl soon. I might need some help figuring out how to
> > > get a cross build environment to check things, but I'll follow up when
I do.
> > >
> > > The review that follows is not 100% thorough but I think it's more
> > detailed
> > > than I've done for hexagon so far. Most of it's open to discussion
> > > if you
> > think
> > > anything I say is wrong.
> > >
> > > > diff --git a/arch/hexagon/atomic_arch.h
> > > > b/arch/hexagon/atomic_arch.h new file mode 100644 index
> > > > 00000000..ede55956
> > > > --- /dev/null
> > > > +++ b/arch/hexagon/atomic_arch.h
> > > > @@ -0,0 +1,194 @@
> > > > +#define a_ctz_32 a_ctz_32
> > > > +static inline int a_ctz_32(unsigned long x) {
> > > > +	__asm__(
> > > > +		"%0 = ct0(%0)\n\t"
> > > > +		: "+r"(x));
> > > > +	return x;
> > > > +}
> > > > +
> > > > +#define a_ctz_64 a_ctz_64
> > > > +static inline int a_ctz_64(uint64_t x) {
> > > > +	int count;
> > > > +	__asm__(
> > > > +		"%0 = ct0(%1)\n\t"
> > > > +		: "=r"(count) : "r"(x));
> > > > +	return count;
> > > > +}
> > > > +#define a_clz_64 a_clz_64
> > > > +static inline int a_clz_64(uint64_t x) {
> > > > +        int count;
> > > > +        __asm__(
> > > > +                "%1 = brev(%1)\n\t"
> > > > +                "%0 = ct0(%1)\n\t"
> > > > +                : "=r"(count) : "r"(x));
> > > > +        return count;
> > > > +}
> > >
> > > This should probably do just the brev in asm then return
> > > a_ctz_64(result) so that the compiler has the freedom to schedule
> > > the
> > insns
> > > independently, unless there's a reason not to want it to do that.
> >
> > I used AARCH64's a_ctz_64 as a reference for this, but there are
> > builtins for these operations and I will use those instead,
> > __builtin_clzll(x);
> 
> No, builtins of that sort aren't used in musl for various reasons.
> This one might be technically okay (as opposed to others that can produce
> circular definitions and such), but the style preference is still to write
it as an
> asm statement.

OK, will restore the inlines.

> 
> > > > +#define a_cas a_cas
> > > > +static inline int a_cas(volatile int *p, int t, int s) {
> > > > +	int dummy;
> > > > +	__asm__ __volatile__(
> > > > +		"1:	%0 = memw_locked(%1)\n\t"
> > > > +		"	{ p0 = cmp.eq(%0, %2)\n\t"
> > > > +		"	  if (!p0.new) jump:nt 2f }\n\t"
> > > > +		"	memw_locked(%1, p0) = %3\n\t"
> > > > +		"	if (!p0) jump 1b\n\t"
> > > > +		"2:	\n\t"
> > > > +		: "=&r"(dummy)
> > > > +		: "r"(p), "r"(t), "r"(s)
> > > > +		: "p0", "memory" );
> > > > +        return dummy;
> > > > +}
> > >
> > > I don't know the hexagon atomic model, but as far as I can tell
> > > these at
> > least
> > > "look right" in the sense of having right asm constraints.
> > >
> > > > [...]
> > > > +#define a_barrier a_barrier
> > > > +static inline void a_barrier()
> > > > +{
> > > > +	__asm__ __volatile__ ("barrier" ::: "memory"); }
> > >
> > > Is the barrier implied in memw_locked? If not, there need to be
> > > explicit barriers in all the atomic functions.
> >
> > Yes, if there is any memory access on the reserved address the
> > reservation is lost and the predicate is false.
> 
> That's not what a barrier means. The question is whether it orders all
access
> to *other* memory, not the address with the reservation on it.
> In other words, musl's a_*() atomics need to be full seq_cst model
> operations, not relaxed atomics.

Per our spec:
"Threads in the Hexagon processor follow a sequentially consistent memory
model at a packet
granularity. Threads interleave their memory operations with one another in
an arbitrary but
fair manner. This results in a consistent program order that is globally
observable by all
threads in the same order."  


> 
> > > > diff --git a/arch/hexagon/crt_arch.h b/arch/hexagon/crt_arch.h new
> > > > file mode 100644 index 00000000..331a797e
> > > > --- /dev/null
> > > > +++ b/arch/hexagon/crt_arch.h
> > > > @@ -0,0 +1,35 @@
> > > > +__asm__(
> > > > +".weak _DYNAMIC \n"
> > > > +".hidden _DYNAMIC \n"
> > > > +".text \n"
> > > > +".global " START " \n"
> > > > +".type " START ", %function \n"
> > > > +START ": \n"
> > > > +"                                       // Find _DYNAMIC\n"
> > > > +"       jump 1f\n"
> > > > +".word  _DYNAMIC - .\n"
> > > > +"1:     r2 = pc\n"
> > > > +"       r2 = add(r2, #-4)\n"
> > > > +"       r1 = memw(r2)\n"
> > > > +"       r1 = add(r2, r1)\n"
> > > > +"	r30 = #0			// Signals the end of
> backtrace\n"
> > > > +"	r0 = r29			// Pointer to argc/argv\n"
> > > > +"	r29 = and(r29, #-16)		// Align\n"
> > > > +"	memw(r29+#-8) = r29\n"
> > > > +"	r29 = add(r29, #-8)\n"
> > > > +"	call " START "_c \n"
> > > > +".size " START ", .-" START "\n"
> > > > +);
> > > > +
> > > > +__asm__(
> > > > +".section \".note.ABI-tag\", \"a\" \n"
> > > > +".align 4 \n"
> > > > +".long 1f - 0f		/* name length */ \n"
> > > > +".long 3f - 2f		/* data length */ \n"
> > > > +".long  1		/* note type */ \n"
> > > > +"0:	.asciz \"GNU\"	/* vendor name seems like this should be
> > MUSL but
> > > lldb doesn't agree.*/ \n"
> > > > +"1:	.align 4		 \n"
> > > > +"2:	.long 0	/* linux */ \n"
> > > > +"	.long 3,0,0 \n"
> > > > +"3:	.align 4 \n"
> > > > +);
> > >
> > > Is there a reason this needs to be here at all? Shouldn't the
> > > tooling
> > generate
> > > it if it's actually wanted/needed?
> >
> > OK, this is here so lldb can select the right target allowing the same
> > version of lldb to work in multiple runtime environments. I need to
> > take a look at what the options are if this isn't a good place for this.
> 
> OK, please follow up with what you find. I'm pretty sure this belongs in
the
> tooling though (as something the compiler emits or the assembler emits
> based on how it's invoked and what its target is) not in a file in libc.
> 

Szabolcs noted that gnu crt adds a similar note.  I know that lldb's
RefineModuleDetailsFromNote uses this to select the OS but will remove it
for now while other options are looked at.


> > > > diff --git a/arch/hexagon/reloc.h b/arch/hexagon/reloc.h new file
> > > > mode
> > > > 100644 index 00000000..14085872
> > > > --- /dev/null
> > > > +++ b/arch/hexagon/reloc.h
> > > > @@ -0,0 +1,25 @@
> > > > +#include <endian.h>
> > > > +
> > > > +#if __BYTE_ORDER == __LITTLE_ENDIAN #define ENDIAN_SUFFIX "el"
> > > > +#else
> > > > +#define ENDIAN_SUFFIX ""
> > > > +#endif
> > >
> > > bits/alltypes.h.in defined __BYTE_ORDER as 1234 (unconditionally
> > > little endian). Does Hexagon (hw and abi) actually support both byte
> > > orders? If not, I don't think there should be an endian suffix here at
all.
> >
> > No it does not I will remove it.
> 
> OK. Make sure the compiler target support has the right ldso name too (I
> think that's /lib/ld-musl-hexagon.so.1, right?).

Yes, that is the name.


> 
> > > > diff --git a/src/fenv/hexagon/fenv.S b/src/fenv/hexagon/fenv.S new
> > > > file mode 100644 index 00000000..07b89764
> > > > --- /dev/null
> > > > +++ b/src/fenv/hexagon/fenv.S
> > > > @@ -0,0 +1,143 @@
> > > > +/*
> > > > +The Hexagon user status register includes five status fields
> > > > +which work as sticky flags for the five IEEE-defined exception
> conditions:
> > > > +inexact, overflow, underflow, divide by zero, and invalid. A
> > > > +sticky flag is set when the corresponding exception occurs, and
> > > > +remains set
> > until
> > > explicitly cleared.
> > >
> > > Please format for at most 80 columns. (Some source files have a few
> > > longer lines, but if you're flowing text it should be flowed to 80
> > > or
> > > fewer.)
> >
> > Will fix those lines and a couple of others I noticed.
> >
> > The changes I made can be seen here:
> >
> https://github.com/quic/musl/commit/4d714f2defcd926b4f8c0425af363b382
> d
> > 3084cb
> >
> > I've also attached an updated patch.
> 
> OK. I haven't looked at it yet but I wanted to go ahead and get you
replies to
> the content in the email body. If there's anything else in the patch that
needs
> commenting on I'll follow up soon, probably tomorrow.
> 
> Rich


^ permalink raw reply	[flat|nested] 43+ messages in thread

* Re: [musl] Hexagon DSP support
  2020-09-20 13:12                                             ` sidneym
@ 2020-09-20 17:17                                               ` 'Rich Felker'
  2020-09-21 14:09                                                 ` sidneym
  0 siblings, 1 reply; 43+ messages in thread
From: 'Rich Felker' @ 2020-09-20 17:17 UTC (permalink / raw)
  To: sidneym; +Cc: musl

On Sun, Sep 20, 2020 at 08:12:47AM -0500, sidneym@codeaurora.org wrote:
> > > > > [...]
> > > > > +#define a_barrier a_barrier
> > > > > +static inline void a_barrier()
> > > > > +{
> > > > > +	__asm__ __volatile__ ("barrier" ::: "memory"); }
> > > >
> > > > Is the barrier implied in memw_locked? If not, there need to be
> > > > explicit barriers in all the atomic functions.
> > >
> > > Yes, if there is any memory access on the reserved address the
> > > reservation is lost and the predicate is false.
> > 
> > That's not what a barrier means. The question is whether it orders all
> access
> > to *other* memory, not the address with the reservation on it.
> > In other words, musl's a_*() atomics need to be full seq_cst model
> > operations, not relaxed atomics.
> 
> Per our spec:
> "Threads in the Hexagon processor follow a sequentially consistent memory
> model at a packet
> granularity. Threads interleave their memory operations with one another in
> an arbitrary but
> fair manner. This results in a consistent program order that is globally
> observable by all
> threads in the same order."  

Can you clarify or provide a reference for what 'packet granularity'
means? If there's actually a full builtin seq_cst order I don't see
what the barrier instruction exists for to begin with.

Rich

^ permalink raw reply	[flat|nested] 43+ messages in thread

* RE: [musl] Hexagon DSP support
  2020-09-20 17:17                                               ` 'Rich Felker'
@ 2020-09-21 14:09                                                 ` sidneym
  0 siblings, 0 replies; 43+ messages in thread
From: sidneym @ 2020-09-21 14:09 UTC (permalink / raw)
  To: 'Rich Felker'; +Cc: musl



> -----Original Message-----
> From: 'Rich Felker' <dalias@libc.org>
> Sent: Sunday, September 20, 2020 12:17 PM
> To: sidneym@codeaurora.org
> Cc: musl@lists.openwall.com
> Subject: Re: [musl] Hexagon DSP support
> 
> On Sun, Sep 20, 2020 at 08:12:47AM -0500, sidneym@codeaurora.org wrote:
> > > > > > [...]
> > > > > > +#define a_barrier a_barrier
> > > > > > +static inline void a_barrier() {
> > > > > > +	__asm__ __volatile__ ("barrier" ::: "memory"); }
> > > > >
> > > > > Is the barrier implied in memw_locked? If not, there need to be
> > > > > explicit barriers in all the atomic functions.
> > > >
> > > > Yes, if there is any memory access on the reserved address the
> > > > reservation is lost and the predicate is false.
> > >
> > > That's not what a barrier means. The question is whether it orders
> > > all
> > access
> > > to *other* memory, not the address with the reservation on it.
> > > In other words, musl's a_*() atomics need to be full seq_cst model
> > > operations, not relaxed atomics.
> >
> > Per our spec:
> > "Threads in the Hexagon processor follow a sequentially consistent
> > memory model at a packet granularity. Threads interleave their memory
> > operations with one another in an arbitrary but fair manner. This
> > results in a consistent program order that is globally observable by
> > all threads in the same order."
> 
> Can you clarify or provide a reference for what 'packet granularity'
> means? If there's actually a full builtin seq_cst order I don't see what
the
> barrier instruction exists for to begin with.
> 

Packet granularity is like instruction granularity, every operation within
the packet happens in parallel.  There is an exception since packets can
have dual stores.  They happen in a prescribed order.  A packet has 4 slots
but dual stores must be in slots 0 & 1.  Stores in slot 1 happen before
stores in slot 0.  Slot 0  is the highest address in the packet so the store
order would appear as it would if you disassembled the code.

barrier is used for thread-to-external-memory.  All observers in the "global
shared domain" would see the store after the barrier finished.
"For devices external to the Hexagon processor, the processor follows a
weakly-ordered
memory model. Explicit synchronization is required to ensure order between
memory
accesses."


> Rich


^ permalink raw reply	[flat|nested] 43+ messages in thread

* [musl] Hexagon DSP support
@ 2021-03-09 20:25 sidneym
  0 siblings, 0 replies; 43+ messages in thread
From: sidneym @ 2021-03-09 20:25 UTC (permalink / raw)
  To: musl


[-- Attachment #1.1: Type: text/plain, Size: 612 bytes --]

It has been awhile and I'd like to restart the discussion about adding
Hexagon support to musl.  I have been periodically syncing with my tree
stored on github (https://github.com/quic/musl/tree/hexagon) .  The only
target change recently was the addition of new kernel system calls.

 

Hexagon support is beginning to land in the main qemu repository and having
a C-library available is important for testing.

 

The commits are attached but are also here:
https://github.com/quic/musl/commits/hexagon

 

The results from the libc-testsuite are also attached, no obvious changes
from before.

 

Thanks,

 


[-- Attachment #1.2: Type: text/html, Size: 2585 bytes --]

[-- Attachment #2: libc_test_REPORT --]
[-- Type: application/octet-stream, Size: 42054 bytes --]

FAIL src/api/main.exe [status 1]
clang-12: error: no such file or directory: 'src/api/unistd.o'
src/api/unistd.c:87:3: error: use of undeclared identifier '_CS_POSIX_V7_THREADS_CFLAGS'
C(_CS_POSIX_V7_THREADS_CFLAGS)
  ^
src/api/unistd.c:87:3: error: use of undeclared identifier '_CS_POSIX_V7_THREADS_CFLAGS'
src/api/unistd.c:88:3: error: use of undeclared identifier '_CS_POSIX_V7_THREADS_LDFLAGS'
C(_CS_POSIX_V7_THREADS_LDFLAGS)
  ^
src/api/unistd.c:88:3: error: use of undeclared identifier '_CS_POSIX_V7_THREADS_LDFLAGS'
src/api/unistd.c:117:3: error: use of undeclared identifier '_PC_TIMESTAMP_RESOLUTION'
C(_PC_TIMESTAMP_RESOLUTION)
  ^
src/api/unistd.c:117:3: error: use of undeclared identifier '_PC_TIMESTAMP_RESOLUTION'
src/api/unistd.c:238:3: error: use of undeclared identifier '_SC_XOPEN_UUCP'
C(_SC_XOPEN_UUCP)
  ^
src/api/unistd.c:238:3: error: use of undeclared identifier '_SC_XOPEN_UUCP'
8 errors generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
warning: overriding currently unsupported rounding mode on this target [-Wunsupported-floating-point-opt]
1 warning generated.
src/functional/dlopen.c:39: dlsym main failed: Symbol not found: main
FAIL src/functional/dlopen.exe [status 1]
clang-12: warning: argument unused during compilation: '-rdynamic' [-Wunused-command-line-argument]
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:87: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:87: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:108: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:108: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
FAIL src/functional/pthread_mutex_pi-static.exe [status 1]
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:42: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:87: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:87: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:108: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
src/functional/pthread_mutex_pi.c:108: pthread_mutexattr_setprotocol(&ma, PTHREAD_PRIO_INHERIT) failed: Function not implemented
FAIL src/functional/pthread_mutex_pi.exe [status 1]
src/functional/pthread_robust.c:39: pthread_mutexattr_setrobust(&mtx_a, PTHREAD_MUTEX_ROBUST) failed: (pshared==0, pi==0) Function not implemented (setting robust attribute)
FAIL src/functional/pthread_robust-static.exe [timed out]
src/functional/pthread_robust.c:39: pthread_mutexattr_setrobust(&mtx_a, PTHREAD_MUTEX_ROBUST) failed: (pshared==0, pi==0) Function not implemented (setting robust attribute)
FAIL src/functional/pthread_robust.exe [timed out]
src/functional/strptime.c:23: "%F": failed to parse "1856-07-10"
src/functional/strptime.c:23: "%s": failed to parse "683078400"
src/functional/strptime.c:47: "%z": failed to parse "+0200"
src/functional/strptime.c:47: "%z": failed to parse "-0530"
src/functional/strptime.c:47: "%z": failed to parse "-06"
FAIL src/functional/strptime-static.exe [status 1]
src/functional/strptime.c:23: "%F": failed to parse "1856-07-10"
src/functional/strptime.c:23: "%s": failed to parse "683078400"
src/functional/strptime.c:47: "%z": failed to parse "+0200"
src/functional/strptime.c:47: "%z": failed to parse "-0530"
src/functional/strptime.c:47: "%z": failed to parse "-06"
FAIL src/functional/strptime.exe [status 1]
src/functional/utime.c:63: futimens(fd, ((struct timespec[2]){{.tv_sec=1LL<<32},{.tv_sec=1LL<<32}})) == 0 failed: Not supported
FAIL src/functional/utime-static.exe [status 1]
src/functional/utime.c:63: futimens(fd, ((struct timespec[2]){{.tv_sec=1LL<<32},{.tv_sec=1LL<<32}})) == 0 failed: Not supported
FAIL src/functional/utime.exe [status 1]
X src/math/special/acosh.h:9: RN acosh(0x1.001f1c62cf304p+0) want 0x1.f8d125ff71ccp-6 got 0x1.f8d125ff71cc2p-6 ulperr 1.853 = 0x1p+1 + -0x1.2d785ap-3
X src/math/special/acosh.h:10: RN acosh(0x1.00788c223616fp+0) want 0x1.f0cb8ee812621p-5 got 0x1.f0cb8ee812623p-5 ulperr 1.724 = 0x1p+1 + -0x1.1b0c1ap-2
X src/math/special/acosh.h:11: RN acosh(0x1.007b7a37c7606p+0) want 0x1.f6cb68859ae3p-5 got 0x1.f6cb68859ae2ep-5 ulperr -1.855 = -0x1p+1 + 0x1.280488p-3
X src/math/special/acosh.h:12: RN acosh(0x1.01d173033243cp+0) want 0x1.e7e1b18d99376p-4 got 0x1.e7e1b18d99378p-4 ulperr 1.930 = 0x1p+1 + -0x1.1f3d3ep-4
X src/math/special/acosh.h:13: RN acosh(0x1.01d8f20e90409p+0) want 0x1.ebca3eea5cda5p-4 got 0x1.ebca3eea5cda3p-4 ulperr -1.652 = -0x1p+1 + 0x1.648602p-2
X src/math/special/acosh.h:14: RN acosh(0x1.01ef6122e68bep+0) want 0x1.f74df150afc94p-4 got 0x1.f74df150afc92p-4 ulperr -1.762 = -0x1p+1 + 0x1.e79556p-3
X src/math/special/acosh.h:15: RN acosh(0x1.06822faf07879p+0) want 0x1.ccd73cbc4af78p-3 got 0x1.ccd73cbc4af7ap-3 ulperr 1.674 = 0x1p+1 + -0x1.4df79ep-2
X src/math/special/acosh.h:17: RN acosh(0x1.069d65411ec51p+0) want 0x1.d0928b08facbap-3 got 0x1.d0928b08facbcp-3 ulperr 1.785 = 0x1p+1 + -0x1.b83338p-3
X src/math/special/acosh.h:18: RN acosh(0x1.071d6b2713d08p+0) want 0x1.e1bc6a6c345fdp-3 got 0x1.e1bc6a6c345ffp-3 ulperr 1.818 = 0x1p+1 + -0x1.74a04ep-3
X src/math/special/acosh.h:19: RN acosh(0x1.0728405f5140cp+0) want 0x1.e328ebe92b32cp-3 got 0x1.e328ebe92b32ep-3 ulperr 1.790 = 0x1p+1 + -0x1.ae89ap-3
X src/math/special/acosh.h:20: RN acosh(0x1.07bd2c5c01bcbp+0) want 0x1.f6513c44c131p-3 got 0x1.f6513c44c1312p-3 ulperr 1.719 = 0x1p+1 + -0x1.203932p-2
X src/math/special/acosh.h:21: RN acosh(0x1.1aae7c452c859p+0) want 0x1.cf8d69288e386p-2 got 0x1.cf8d69288e384p-2 ulperr -1.723 = -0x1p+1 + 0x1.1b325ap-2
X src/math/special/acosh.h:23: RN acosh(0x1.1b50764626f1ep+0) want 0x1.d4ec67c71794p-2 got 0x1.d4ec67c717942p-2 ulperr 1.738 = 0x1p+1 + -0x1.0c09dap-2
src/math/special/acosh.h:9: RN acoshl(0x1.001f1c62cf304p+0) want 0x1.f8d125ff71ccp-6 got 0x1.f8d125ff71cc2p-6 ulperr 1.853 = 0x1p+1 + -0x1.2d785ap-3
src/math/special/acosh.h:10: RN acoshl(0x1.00788c223616fp+0) want 0x1.f0cb8ee812621p-5 got 0x1.f0cb8ee812623p-5 ulperr 1.724 = 0x1p+1 + -0x1.1b0c1ap-2
src/math/special/acosh.h:11: RN acoshl(0x1.007b7a37c7606p+0) want 0x1.f6cb68859ae3p-5 got 0x1.f6cb68859ae2ep-5 ulperr -1.855 = -0x1p+1 + 0x1.280488p-3
src/math/special/acosh.h:12: RN acoshl(0x1.01d173033243cp+0) want 0x1.e7e1b18d99376p-4 got 0x1.e7e1b18d99378p-4 ulperr 1.930 = 0x1p+1 + -0x1.1f3d3ep-4
src/math/special/acosh.h:13: RN acoshl(0x1.01d8f20e90409p+0) want 0x1.ebca3eea5cda5p-4 got 0x1.ebca3eea5cda3p-4 ulperr -1.652 = -0x1p+1 + 0x1.648602p-2
src/math/special/acosh.h:14: RN acoshl(0x1.01ef6122e68bep+0) want 0x1.f74df150afc94p-4 got 0x1.f74df150afc92p-4 ulperr -1.762 = -0x1p+1 + 0x1.e79556p-3
src/math/special/acosh.h:15: RN acoshl(0x1.06822faf07879p+0) want 0x1.ccd73cbc4af78p-3 got 0x1.ccd73cbc4af7ap-3 ulperr 1.674 = 0x1p+1 + -0x1.4df79ep-2
src/math/special/acosh.h:17: RN acoshl(0x1.069d65411ec51p+0) want 0x1.d0928b08facbap-3 got 0x1.d0928b08facbcp-3 ulperr 1.785 = 0x1p+1 + -0x1.b83338p-3
src/math/special/acosh.h:18: RN acoshl(0x1.071d6b2713d08p+0) want 0x1.e1bc6a6c345fdp-3 got 0x1.e1bc6a6c345ffp-3 ulperr 1.818 = 0x1p+1 + -0x1.74a04ep-3
src/math/special/acosh.h:19: RN acoshl(0x1.0728405f5140cp+0) want 0x1.e328ebe92b32cp-3 got 0x1.e328ebe92b32ep-3 ulperr 1.790 = 0x1p+1 + -0x1.ae89ap-3
src/math/special/acosh.h:20: RN acoshl(0x1.07bd2c5c01bcbp+0) want 0x1.f6513c44c131p-3 got 0x1.f6513c44c1312p-3 ulperr 1.719 = 0x1p+1 + -0x1.203932p-2
src/math/special/acosh.h:21: RN acoshl(0x1.1aae7c452c859p+0) want 0x1.cf8d69288e386p-2 got 0x1.cf8d69288e384p-2 ulperr -1.723 = -0x1p+1 + 0x1.1b325ap-2
src/math/special/acosh.h:23: RN acoshl(0x1.1b50764626f1ep+0) want 0x1.d4ec67c71794p-2 got 0x1.d4ec67c717942p-2 ulperr 1.738 = 0x1p+1 + -0x1.0c09dap-2
FAIL src/math/acoshl.exe [status 1]
X src/math/special/asinh.h:7: RN asinh(0x1.fbdd0eedf8143p-3) want 0x1.f6cc20d7a594ap-3 got 0x1.f6cc20d7a594cp-3 ulperr 1.513 = 0x1p+1 + -0x1.f327a8p-2
X src/math/special/asinh.h:8: RN asinh(0x1.df2723491f88fp-3) want 0x1.dae2c8444900cp-3 got 0x1.dae2c8444900ap-3 ulperr -1.551 = -0x1p+1 + 0x1.cb8b86p-2
X src/math/special/asinh.h:9: RN asinh(0x1.ef675c6541305p-3) want 0x1.eab20432c9598p-3 got 0x1.eab20432c959ap-3 ulperr 1.568 = 0x1p+1 + -0x1.ba9e34p-2
X src/math/special/asinh.h:10: RN asinh(0x1.f19df3a1722a9p-3) want 0x1.ecd8a7f621554p-3 got 0x1.ecd8a7f621552p-3 ulperr -1.535 = -0x1p+1 + 0x1.dbc1a8p-2
X src/math/special/asinh.h:11: RN asinh(0x1.f1af09dcfa7d6p-3) want 0x1.ece942815ceccp-3 got 0x1.ece942815cecap-3 ulperr -1.526 = -0x1p+1 + 0x1.e5bb5p-2
X src/math/special/asinh.h:12: RN asinh(0x1.f339ebbeac5bap-3) want 0x1.ee68f10a49c42p-3 got 0x1.ee68f10a49c44p-3 ulperr 1.529 = 0x1p+1 + -0x1.e28cbp-2
X src/math/special/asinh.h:13: RN asinh(0x1.f424275dc8787p-3) want 0x1.ef4c7fcb51c56p-3 got 0x1.ef4c7fcb51c54p-3 ulperr -1.642 = -0x1p+1 + 0x1.6e4e9p-2
X src/math/special/asinh.h:14: RN asinh(0x1.f60d54a133665p-3) want 0x1.f127a8dec0c2p-3 got 0x1.f127a8dec0c1ep-3 ulperr -1.512 = -0x1p+1 + 0x1.f3c9eap-2
X src/math/special/asinh.h:15: RN asinh(0x1.fdccdaf285ffdp-3) want 0x1.f8ad4bed7af4cp-3 got 0x1.f8ad4bed7af4ap-3 ulperr -1.576 = -0x1p+1 + 0x1.b1f1f8p-2
X src/math/special/asinh.h:16: RN asinh(0x1.ff5bec94924c7p-3) want 0x1.fa30836c3949ap-3 got 0x1.fa30836c39498p-3 ulperr -1.533 = -0x1p+1 + 0x1.de989p-2
X src/math/special/asinh.h:17: RN asinh(0x1.028e8fd61c8a5p-2) want 0x1.ffc55bd02e9dep-3 got 0x1.ffc55bd02e9ep-3 ulperr 1.670 = 0x1p+1 + -0x1.523c08p-2
X src/math/special/asinh.h:18: RN asinh(0x1.dc71794e1f137p-2) want 0x1.ccbd41a7d058ap-2 got 0x1.ccbd41a7d0588p-2 ulperr -1.585 = -0x1p+1 + 0x1.a944b8p-2
X src/math/special/asinh.h:19: RN asinh(0x1.df308e177c3cbp-2) want 0x1.cf3a638145d7ap-2 got 0x1.cf3a638145d78p-2 ulperr -1.505 = -0x1p+1 + 0x1.fb3684p-2
X src/math/special/asinh.h:20: RN asinh(0x1.ea94e1e267746p-2) want 0x1.d9862533f65f6p-2 got 0x1.d9862533f65f4p-2 ulperr -1.579 = -0x1p+1 + 0x1.af51ecp-2
X src/math/special/asinh.h:21: RN asinh(0x1.ecd4f07608dc7p-2) want 0x1.db8d6fdcc6d74p-2 got 0x1.db8d6fdcc6d76p-2 ulperr 1.517 = 0x1p+1 + -0x1.eeb48p-2
X src/math/special/asinh.h:22: RN asinh(0x1.f30656c78ee7ep-2) want 0x1.e1204e364a186p-2 got 0x1.e1204e364a188p-2 ulperr 1.576 = 0x1p+1 + -0x1.b23ffp-2
X src/math/special/asinh.h:23: RN asinh(0x1.f5c0c6e41b969p-2) want 0x1.e393d3dc3b70ap-2 got 0x1.e393d3dc3b70cp-2 ulperr 1.562 = 0x1p+1 + -0x1.c06dbep-2
X src/math/special/asinh.h:24: RN asinh(0x1.09c58725300e7p-1) want 0x1.fe2c7f25fb172p-2 got 0x1.fe2c7f25fb174p-2 ulperr 1.579 = 0x1p+1 + -0x1.ae9df6p-2
src/math/special/asinh.h:7: RN asinhl(0x1.fbdd0eedf8143p-3) want 0x1.f6cc20d7a594ap-3 got 0x1.f6cc20d7a594cp-3 ulperr 1.513 = 0x1p+1 + -0x1.f327a8p-2
src/math/special/asinh.h:8: RN asinhl(0x1.df2723491f88fp-3) want 0x1.dae2c8444900cp-3 got 0x1.dae2c8444900ap-3 ulperr -1.551 = -0x1p+1 + 0x1.cb8b86p-2
src/math/special/asinh.h:9: RN asinhl(0x1.ef675c6541305p-3) want 0x1.eab20432c9598p-3 got 0x1.eab20432c959ap-3 ulperr 1.568 = 0x1p+1 + -0x1.ba9e34p-2
src/math/special/asinh.h:10: RN asinhl(0x1.f19df3a1722a9p-3) want 0x1.ecd8a7f621554p-3 got 0x1.ecd8a7f621552p-3 ulperr -1.535 = -0x1p+1 + 0x1.dbc1a8p-2
src/math/special/asinh.h:11: RN asinhl(0x1.f1af09dcfa7d6p-3) want 0x1.ece942815ceccp-3 got 0x1.ece942815cecap-3 ulperr -1.526 = -0x1p+1 + 0x1.e5bb5p-2
src/math/special/asinh.h:12: RN asinhl(0x1.f339ebbeac5bap-3) want 0x1.ee68f10a49c42p-3 got 0x1.ee68f10a49c44p-3 ulperr 1.529 = 0x1p+1 + -0x1.e28cbp-2
src/math/special/asinh.h:13: RN asinhl(0x1.f424275dc8787p-3) want 0x1.ef4c7fcb51c56p-3 got 0x1.ef4c7fcb51c54p-3 ulperr -1.642 = -0x1p+1 + 0x1.6e4e9p-2
src/math/special/asinh.h:14: RN asinhl(0x1.f60d54a133665p-3) want 0x1.f127a8dec0c2p-3 got 0x1.f127a8dec0c1ep-3 ulperr -1.512 = -0x1p+1 + 0x1.f3c9eap-2
src/math/special/asinh.h:15: RN asinhl(0x1.fdccdaf285ffdp-3) want 0x1.f8ad4bed7af4cp-3 got 0x1.f8ad4bed7af4ap-3 ulperr -1.576 = -0x1p+1 + 0x1.b1f1f8p-2
src/math/special/asinh.h:16: RN asinhl(0x1.ff5bec94924c7p-3) want 0x1.fa30836c3949ap-3 got 0x1.fa30836c39498p-3 ulperr -1.533 = -0x1p+1 + 0x1.de989p-2
src/math/special/asinh.h:17: RN asinhl(0x1.028e8fd61c8a5p-2) want 0x1.ffc55bd02e9dep-3 got 0x1.ffc55bd02e9ep-3 ulperr 1.670 = 0x1p+1 + -0x1.523c08p-2
src/math/special/asinh.h:18: RN asinhl(0x1.dc71794e1f137p-2) want 0x1.ccbd41a7d058ap-2 got 0x1.ccbd41a7d0588p-2 ulperr -1.585 = -0x1p+1 + 0x1.a944b8p-2
src/math/special/asinh.h:19: RN asinhl(0x1.df308e177c3cbp-2) want 0x1.cf3a638145d7ap-2 got 0x1.cf3a638145d78p-2 ulperr -1.505 = -0x1p+1 + 0x1.fb3684p-2
src/math/special/asinh.h:20: RN asinhl(0x1.ea94e1e267746p-2) want 0x1.d9862533f65f6p-2 got 0x1.d9862533f65f4p-2 ulperr -1.579 = -0x1p+1 + 0x1.af51ecp-2
src/math/special/asinh.h:21: RN asinhl(0x1.ecd4f07608dc7p-2) want 0x1.db8d6fdcc6d74p-2 got 0x1.db8d6fdcc6d76p-2 ulperr 1.517 = 0x1p+1 + -0x1.eeb48p-2
src/math/special/asinh.h:22: RN asinhl(0x1.f30656c78ee7ep-2) want 0x1.e1204e364a186p-2 got 0x1.e1204e364a188p-2 ulperr 1.576 = 0x1p+1 + -0x1.b23ffp-2
src/math/special/asinh.h:23: RN asinhl(0x1.f5c0c6e41b969p-2) want 0x1.e393d3dc3b70ap-2 got 0x1.e393d3dc3b70cp-2 ulperr 1.562 = 0x1p+1 + -0x1.c06dbep-2
src/math/special/asinh.h:24: RN asinhl(0x1.09c58725300e7p-1) want 0x1.fe2c7f25fb172p-2 got 0x1.fe2c7f25fb174p-2 ulperr 1.579 = 0x1p+1 + -0x1.ae9df6p-2
FAIL src/math/asinhl.exe [status 1]
X src/math/special/erfc.h:6: RN erfc(0x1.5db559fe5c0bap+0) want 0x1.b53cf571d328fp-5 got 0x1.b53cf571d328cp-5 ulperr -2.609 = -0x1.8p+1 + 0x1.900982p-2
src/math/special/erfc.h:6: RN erfcl(0x1.5db559fe5c0bap+0) want 0x1.b53cf571d328fp-5 got 0x1.b53cf571d328cp-5 ulperr -2.609 = -0x1.8p+1 + 0x1.900982p-2
FAIL src/math/erfcl.exe [status 1]
X src/math/special/exp2.h:12: bad fp exception: RN exp2(-0x1.ff8p+9)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/special/exp2.h:18: bad fp exception: RN exp2(-0x1.ff8p+9)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/special/exp2.h:20: bad fp exception: RN exp2(-0x1p+10)=0x1p-1024, want 0 got INEXACT|UNDERFLOW
X src/math/special/exp2.h:21: bad fp exception: RN exp2(-0x1.004p+10)=0x1p-1025, want 0 got INEXACT|UNDERFLOW
X src/math/special/exp2.h:22: bad fp exception: RN exp2(-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:12: bad fp exception: RN exp2l(-0x1.ff8p+9)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:18: bad fp exception: RN exp2l(-0x1.ff8p+9)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:20: bad fp exception: RN exp2l(-0x1p+10)=0x1p-1024, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:21: bad fp exception: RN exp2l(-0x1.004p+10)=0x1p-1025, want 0 got INEXACT|UNDERFLOW
src/math/special/exp2.h:22: bad fp exception: RN exp2l(-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
FAIL src/math/exp2l.exe [status 1]
src/math/special/ilogb.h:1: bad fp exception: RN ilogb(0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogb.h:2: bad fp exception: RN ilogb(-0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogb.h:6: bad fp exception: RN ilogb(inf)=2147483647, want INVALID got 0
src/math/special/ilogb.h:7: bad fp exception: RN ilogb(-inf)=2147483647, want INVALID got 0
src/math/special/ilogb.h:8: bad fp exception: RN ilogb(nan)=-2147483648, want INVALID got 0
FAIL src/math/ilogb.exe [status 1]
src/math/special/ilogbf.h:1: bad fp exception: RN ilogbf(0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogbf.h:2: bad fp exception: RN ilogbf(-0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogbf.h:6: bad fp exception: RN ilogbf(inf)=2147483647, want INVALID got 0
src/math/special/ilogbf.h:7: bad fp exception: RN ilogbf(-inf)=2147483647, want INVALID got 0
src/math/special/ilogbf.h:8: bad fp exception: RN ilogbf(-nan)=-2147483648, want INVALID got 0
FAIL src/math/ilogbf.exe [status 1]
src/math/special/ilogb.h:1: bad fp exception: RN ilogbl(0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogb.h:2: bad fp exception: RN ilogbl(-0x0p+0)=-2147483648, want INVALID got 0
src/math/special/ilogb.h:6: bad fp exception: RN ilogbl(inf)=2147483647, want INVALID got 0
src/math/special/ilogb.h:7: bad fp exception: RN ilogbl(-inf)=2147483647, want INVALID got 0
src/math/special/ilogb.h:8: bad fp exception: RN ilogbl(nan)=-2147483648, want INVALID got 0
FAIL src/math/ilogbl.exe [status 1]
X src/math/special/j0.h:7: RN j0(-0x1.33d132fd04a92p+1) want 0x1.092b2a541a68ep-19 got 0x1.092b2a541b1ap-19 ulperr 2833.704 = 0x1.624p+11 + -0x1.2ebdbp-2
X src/math/special/j0.h:8: RN j0(-0x1.33d15297be06fp+1) want 0x1.5352913be3275p-26 got 0x1.5352913ddb41bp-26 ulperr 2064806.000 = 0x1.f81a6p+20 + 0x1.c281e2p-7
X src/math/special/j0.h:9: RN j0(0x1.33d152e971b4p+1) want -0x1.19b7921f03c8ep-54 got -0x1.00209921727cbp-54 ulperr 450179413049344.000 = 0x1.996f9p+48 + 0x1.ece5dp-5
X src/math/special/j0.h:10: RN j0(0x1.6148f5b2c2e45p+2) want -0x1.fbb40985f6e34p-56 got -0x1.ebcb069d486ccp-56 ulperr 279895217274880.000 = 0x1.fd205ep+47 + -0x1.1ac8a8p-2
X src/math/special/j0.h:11: RN j0(0x1.14eb56cccdecap+3) want -0x1.6e8eeb22e5818p-54 got -0x1.6d2a820627412p-54 ulperr 24492348801024.000 = 0x1.64691cp+44 + -0x1.63ab44p-2
X src/math/special/j0.h:12: RN j0(0x1.c071b22fbbafap+1023) want -0x1.a348b1f34dd1ap-526 got -0x1.a348b1f34d33dp-526 ulperr 2525.019 = 0x1.3bap+11 + 0x1.3153c2p-6
X src/math/special/j0.h:13: RN j0(0x1.f7350b1701ef7p+0) want 0x1.f32b3a3640292p-3 got 0x1.f32b3a3640296p-3 ulperr 3.947 = 0x1p+2 + -0x1.b3bad8p-5
X src/math/sanity/jn.h:8: RN jn(5, 0x1.1f9ef934745cbp-1) want 0x1.e274364abf2d5p-17 got 0x1.e274364abf2d2p-17, ulperr -2.504 = -0x1.8p+1 + 0x1.fbe5c8p-2
X src/math/sanity/jnf.h:1: RN jnf(-2, -0x1.0223ap+3) want -0x1.863726p-4 got -0x1.86372ap-4, ulperr -2.009 = -0x1p+1 + -0x1.28885p-7
X src/math/sanity/jnf.h:8: RN jnf(5, 0x1.1f9efap-1) want 0x1.e2743cp-17 got 0x1.e27442p-17, ulperr 2.537 = 0x1.8p+1 + -0x1.d9c372p-2
X src/math/sanity/jnf.h:10: RN jnf(7, -0x1.5b86eap-1) want -0x1.b39a9cp-24 got -0x1.b39a98p-24, ulperr 1.621 = 0x1p+1 + -0x1.83c12p-2
X src/math/special/lgamma.h:145: RN lgamma(-0x1.4p+1) want -0x1.ccbf9f5ed0f16p-5,-1 got -0x1.ccbf9f5ed0f2p-5,-1 ulperr -10.465 = -0x1.4p+3 + -0x1.dc4f24p-2
X src/math/sanity/lgammaf.h:3: RN lgammaf(-0x1.0c34b4p+3) want -0x1.46d732p+3,-1 got -0x1.46d736p+3,-1 ulperr -1.621 = -0x1p+1 + 0x1.83dafep-2
X src/math/sanity/lgammaf_r.h:3: RN lgammaf_r(-0x1.0c34b4p+3) want -0x1.46d732p+3,-1 got -0x1.46d736p+3,-1 ulperr -1.621 = -0x1p+1 + 0x1.83dafep-2
src/math/special/lgamma.h:145: RN lgammal(-0x1.4p+1) want -0x1.ccbf9f5ed0f16p-5,-1 got -0x1.ccbf9f5ed0f2p-5,-1 ulperr -10.465 = -0x1.4p+3 + -0x1.dc4f24p-2
FAIL src/math/lgammal.exe [status 1]
X src/math/crlibm/pow.h:13: bad fp exception: RN pow(0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:72: bad fp exception: RN pow(0x1p-1074,0x1p+0)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:73: bad fp exception: RN pow(0x1p-1042,0x1p+0)=0x1p-1042, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:75: bad fp exception: RN pow(-0x1p-1074,0x1p+0)=-0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:76: bad fp exception: RN pow(-0x1p-1042,0x1p+0)=-0x1p-1042, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:284: bad fp exception: RN pow(0x1p-1073,0x1p+0)=0x1p-1073, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:300: bad fp exception: RN pow(0x1p-1024,0x1p+0)=0x1p-1024, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:304: bad fp exception: RN pow(0x1p-1023,0x1p+0)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:310: bad fp exception: RN pow(0x1.ffffffffffffcp-1023,0x1p+0)=0x1.ffffffffffffcp-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:313: bad fp exception: RN pow(0x1.ffffffffffffep-1023,0x1p+0)=0x1.ffffffffffffep-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:338: bad fp exception: RN pow(0x1p-537,0x1p+1)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:437: bad fp exception: RN pow(0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:498: bad fp exception: RN pow(0x1p+350,-0x1.8p+1)=0x1p-1050, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:499: bad fp exception: RN pow(0x1p+700,-0x1.8p+0)=0x1p-1050, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:516: bad fp exception: RN pow(0x1p+1023,-0x1p+0)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:544: bad fp exception: RN pow(-0x1p-1073,0x1p+0)=-0x1p-1073, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:548: bad fp exception: RN pow(-0x1p-1024,0x1p+0)=-0x1p-1024, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:551: bad fp exception: RN pow(-0x1p-1023,0x1p+0)=-0x1p-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:557: bad fp exception: RN pow(-0x1.ffffffffffffcp-1023,0x1p+0)=-0x1.ffffffffffffcp-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:560: bad fp exception: RN pow(-0x1.ffffffffffffep-1023,0x1p+0)=-0x1.ffffffffffffep-1023, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:581: bad fp exception: RN pow(-0x1p-537,0x1p+1)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:655: bad fp exception: RN pow(-0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:695: bad fp exception: RN pow(-0x1p+350,-0x1.8p+1)=-0x1p-1050, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/pow.h:708: bad fp exception: RN pow(-0x1p+1023,-0x1p+0)=-0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/powf.h:103: bad fp exception: RU powf(0x1.fffffep+127,0x1p+0)=0x1.fffffep+127, want 0 got INEXACT|OVERFLOW
X src/math/ucb/powf.h:530: bad fp exception: RN powf(0x1.fffff8p-127,0x1p+0)=0x1.fffff8p-127, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/powf.h:533: bad fp exception: RN powf(0x1.fffffcp-127,0x1p+0)=0x1.fffffcp-127, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/powf.h:719: bad fp exception: RN powf(-0x1.fffff8p-127,0x1p+0)=-0x1.fffff8p-127, want 0 got INEXACT|UNDERFLOW
X src/math/ucb/powf.h:722: bad fp exception: RN powf(-0x1.fffffcp-127,0x1p+0)=-0x1.fffffcp-127, want 0 got INEXACT|UNDERFLOW
FAIL src/math/powf.exe [status 1]
src/math/crlibm/pow.h:13: bad fp exception: RN powl(0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:72: bad fp exception: RN powl(0x1p-1074,0x1p+0)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:73: bad fp exception: RN powl(0x1p-1042,0x1p+0)=0x1p-1042, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:75: bad fp exception: RN powl(-0x1p-1074,0x1p+0)=-0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:76: bad fp exception: RN powl(-0x1p-1042,0x1p+0)=-0x1p-1042, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:284: bad fp exception: RN powl(0x1p-1073,0x1p+0)=0x1p-1073, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:300: bad fp exception: RN powl(0x1p-1024,0x1p+0)=0x1p-1024, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:304: bad fp exception: RN powl(0x1p-1023,0x1p+0)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:310: bad fp exception: RN powl(0x1.ffffffffffffcp-1023,0x1p+0)=0x1.ffffffffffffcp-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:313: bad fp exception: RN powl(0x1.ffffffffffffep-1023,0x1p+0)=0x1.ffffffffffffep-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:338: bad fp exception: RN powl(0x1p-537,0x1p+1)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:437: bad fp exception: RN powl(0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:498: bad fp exception: RN powl(0x1p+350,-0x1.8p+1)=0x1p-1050, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:499: bad fp exception: RN powl(0x1p+700,-0x1.8p+0)=0x1p-1050, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:516: bad fp exception: RN powl(0x1p+1023,-0x1p+0)=0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:544: bad fp exception: RN powl(-0x1p-1073,0x1p+0)=-0x1p-1073, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:548: bad fp exception: RN powl(-0x1p-1024,0x1p+0)=-0x1p-1024, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:551: bad fp exception: RN powl(-0x1p-1023,0x1p+0)=-0x1p-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:557: bad fp exception: RN powl(-0x1.ffffffffffffcp-1023,0x1p+0)=-0x1.ffffffffffffcp-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:560: bad fp exception: RN powl(-0x1.ffffffffffffep-1023,0x1p+0)=-0x1.ffffffffffffep-1023, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:581: bad fp exception: RN powl(-0x1p-537,0x1p+1)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:655: bad fp exception: RN powl(-0x1p+1,-0x1.0c8p+10)=0x1p-1074, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:695: bad fp exception: RN powl(-0x1p+350,-0x1.8p+1)=-0x1p-1050, want 0 got INEXACT|UNDERFLOW
src/math/ucb/pow.h:708: bad fp exception: RN powl(-0x1p+1023,-0x1p+0)=-0x1p-1023, want 0 got INEXACT|UNDERFLOW
FAIL src/math/powl.exe [status 1]
X src/math/crlibm/sinh.h:84: RN sinh(0x1.d3e0d2f5d98d6p-2) want 0x1.e45428082fb8cp-2 got 0x1.e45428082fb8ap-2 ulperr -1.500 = -0x1p+1 + 0x1p-1
X src/math/crlibm/sinh.h:84: RN sinhl(0x1.d3e0d2f5d98d6p-2) want 0x1.e45428082fb8cp-2 got 0x1.e45428082fb8ap-2 ulperr -1.500 = -0x1p+1 + 0x1p-1
X src/math/sanity/tgamma.h:4: RN tgamma(-0x1.a206f0a19dcc4p+2) want -0x1.9fd0c1ce12f14p-10 got -0x1.9fd0c1ce12f12p-10 ulperr 1.597 = 0x1p+1 + -0x1.9c637p-2
X src/math/sanity/tgamma.h:7: RN tgamma(-0x1.a05cc754481d1p-2) want -0x1.d9a22b2f3f253p+1 got -0x1.d9a22b2f3f251p+1 ulperr 1.674 = 0x1p+1 + -0x1.4d79f4p-2
src/math/special/tgamma.h:5: bad fp exception: RN tgamma(-0x1p+0)=nan, want INVALID got 0
src/math/special/tgamma.h:7: bad fp exception: RN tgamma(-0x1p+1)=nan, want INVALID got 0
X src/math/special/tgamma.h:47: RN tgamma(0x1p-53) want 0x1.fffffffffffffp+52 got 0x1.ffffffffffffdp+52 ulperr -2.423 = -0x1p+1 + -0x1.b0ee6p-2
X src/math/special/tgamma.h:60: RN tgamma(-0x1.0000000000001p+0) want 0x1.fffffffffffffp+51 got 0x1.ffffffffffffdp+51 ulperr -2.154 = -0x1p+1 + -0x1.3c467ep-3
X src/math/special/tgamma.h:62: RN tgamma(-0x1.0000000000003p+0) want 0x1.5555555555554p+50 got 0x1.5555555555552p+50 ulperr -1.642 = -0x1p+1 + 0x1.6e642cp-2
X src/math/special/tgamma.h:66: RN tgamma(-0x1.ffffffffffffep+0) want 0x1.0000000000002p+50 got 0x1.0000000000004p+50 ulperr 2.154 = 0x1p+1 + 0x1.3c467ep-3
X src/math/special/tgamma.h:68: RN tgamma(-0x1.0000000000001p+1) want -0x1.ffffffffffffcp+49 got -0x1.ffffffffffff7p+49 ulperr 5.309 = 0x1.4p+2 + 0x1.3c467ep-2
X src/math/special/tgamma.h:72: RN tgamma(-0x1.7fffffffffffdp+1) want -0x1.c71c71c71c72ap+46 got -0x1.c71c71c71c72cp+46 ulperr -2.157 = -0x1p+1 + -0x1.4177f6p-3
X src/math/special/tgamma.h:82: RN tgamma(-0x1.59fffffffffffp+7) want -0x1.46b1fa841aaa6p-997 got -0x1.46b1fa841aaa8p-997 ulperr -1.801 = -0x1p+1 + 0x1.979e28p-3
X src/math/special/tgamma.h:83: RN tgamma(-0x1.5a00000000001p+7) want 0x1.46b1fa841a412p-997 got 0x1.46b1fa841a41p-997 ulperr -1.700 = -0x1p+1 + 0x1.333de2p-2
X src/math/special/tgamma.h:84: RN tgamma(-0x1.5bfffffffffffp+7) want 0x1.e0a7b14f99fdbp-1005 got 0x1.e0a7b14f99fddp-1005 ulperr 1.579 = 0x1p+1 + -0x1.af416ap-2
X src/math/special/tgamma.h:85: RN tgamma(-0x1.5c00000000001p+7) want -0x1.e0a7b14f9962ap-1005 got -0x1.e0a7b14f9962cp-1005 ulperr -1.685 = -0x1p+1 + 0x1.42ddc4p-2
X src/math/special/tgamma.h:88: RN tgamma(-0x1.5ffffffffffffp+7) want 0x1.ff5df5f533fd3p-1020 got 0x1.ff5df5f533fd6p-1020 ulperr 2.513 = 0x1.8p+1 + -0x1.f234a4p-2
X src/math/special/tgamma.h:119: RN tgamma(-0x1.8p+0) want 0x1.2e7fb0bcdf4f2p+1 got 0x1.2e7fb0bcdf4fp+1 ulperr -1.770 = -0x1p+1 + 0x1.d7697p-3
X src/math/special/tgamma.h:136: RN tgamma(-0x1.02p+6) want -0x1.912276590832ep-298 got -0x1.912276590833p-298 ulperr -1.662 = -0x1p+1 + 0x1.59f79ap-2
X src/math/special/tgamma.h:141: RN tgamma(-0x1.55p+7) want -0x1.7d2374dfcda7ap-1022 got -0x1.7d2374dfcda78p-1022 ulperr 1.778 = 0x1p+1 + -0x1.c68fa4p-3
FAIL src/math/tgamma.exe [status 1]
src/math/special/tgammaf.h:4: bad fp exception: RN tgammaf(-0x1p+0)=-nan, want INVALID got 0
src/math/special/tgammaf.h:6: bad fp exception: RN tgammaf(-0x1p+1)=-nan, want INVALID got 0
FAIL src/math/tgammaf.exe [status 1]
src/math/special/tgamma.h:5: bad fp exception: RN tgammal(-0x1p+0)=nan, want INVALID got 0
src/math/special/tgamma.h:7: bad fp exception: RN tgammal(-0x1p+1)=nan, want INVALID got 0
src/math/special/tgamma.h:47: RN tgammal(0x1p-53) want 0x1.fffffffffffffp+52 got 0x1.ffffffffffffdp+52 ulperr -2.423 = -0x1p+1 + -0x1.b0ee6p-2
src/math/special/tgamma.h:60: RN tgammal(-0x1.0000000000001p+0) want 0x1.fffffffffffffp+51 got 0x1.ffffffffffffdp+51 ulperr -2.154 = -0x1p+1 + -0x1.3c467ep-3
src/math/special/tgamma.h:66: RN tgammal(-0x1.ffffffffffffep+0) want 0x1.0000000000002p+50 got 0x1.0000000000004p+50 ulperr 2.154 = 0x1p+1 + 0x1.3c467ep-3
src/math/special/tgamma.h:68: RN tgammal(-0x1.0000000000001p+1) want -0x1.ffffffffffffcp+49 got -0x1.ffffffffffff7p+49 ulperr 5.309 = 0x1.4p+2 + 0x1.3c467ep-2
src/math/special/tgamma.h:72: RN tgammal(-0x1.7fffffffffffdp+1) want -0x1.c71c71c71c72ap+46 got -0x1.c71c71c71c72cp+46 ulperr -2.157 = -0x1p+1 + -0x1.4177f6p-3
src/math/special/tgamma.h:88: RN tgammal(-0x1.5ffffffffffffp+7) want 0x1.ff5df5f533fd3p-1020 got 0x1.ff5df5f533fd6p-1020 ulperr 2.513 = 0x1.8p+1 + -0x1.f234a4p-2
FAIL src/math/tgammal.exe [status 1]
src/math/sanity/y0.h:1: bad fp exception: RN y0(-0x1.02239f3c6a8f1p+3)=nan, want INVALID got 0
src/math/sanity/y0.h:3: bad fp exception: RN y0(-0x1.0c34b3e01e6e7p+3)=nan, want INVALID got 0
src/math/sanity/y0.h:4: bad fp exception: RN y0(-0x1.a206f0a19dcc4p+2)=nan, want INVALID got 0
src/math/sanity/y0.h:7: bad fp exception: RN y0(-0x1.a05cc754481d1p-2)=nan, want INVALID got 0
src/math/sanity/y0.h:10: bad fp exception: RN y0(-0x1.5b86ea8118a0ep-1)=nan, want INVALID got 0
src/math/special/y0.h:1: bad fp exception: RN y0(0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y0.h:2: bad fp exception: RN y0(-0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y0.h:3: bad fp exception: RN y0(-0x1p+0)=nan, want INVALID got 0
src/math/special/y0.h:5: bad fp exception: RN y0(-inf)=nan, want INVALID got 0
X src/math/special/y0.h:8: RN y0(0x1.c982eb8d417eap-1) want -0x1.af74bfa0f1304p-56 got -0x1p-55 ulperr -1416944204906496.000 = -0x1.422d02p+50 + 0x1.11721cp-2
X src/math/special/y0.h:9: RN y0(0x1.c982eb8d417ebp-1) want 0x1.5666419c0f3c9p-54 got 0x1.2p-54 ulperr -957005015547904.000 = -0x1.b3320cp+49 + 0x1.dc02a8p-2
X src/math/special/y0.h:10: RN y0(0x1.fa9534d98569bp+1) want 0x1.384a000f3fcecp-53 got 0x1.3004a968fceadp-53 ulperr -145502385471488.000 = -0x1.08aad4p+47 + 0x1.58e17p-6
X src/math/special/y0.h:11: RN y0(0x1.fa9534d98569cp+1) want -0x1.8fa8956b4b481p-55 got -0x1.8f4eb84cc2a33p-55 ulperr 6175389646848.000 = 0x1.67747ap+42 + 0x1.54cfbep-2
X src/math/special/y0.h:12: RN y0(0x1.c581dc4e72102p+2) want -0x1.14bb186dc408dp-52 got -0x1.16eb61aad4cacp-52 ulperr -38502565675008.000 = -0x1.18249ep+45 + -0x1.163cfp-2
X src/math/special/y0.h:13: RN y0(0x1.c581dc4e72103p+2) want 0x1.e91b198d39ce2p-56 got 0x1.dac1abb064c09p-56 ulperr -252436132397056.000 = -0x1.cb2dbcp+47 + -0x1.ee1b6ep-2
FAIL src/math/y0.exe [status 1]
src/math/sanity/y0f.h:1: bad fp exception: RN y0f(-0x1.0223ap+3)=-nan, want INVALID got 0
X src/math/sanity/y0f.h:2: RN y0f(0x1.161868p+2) want -0x1.293dbep-3 got -0x1.293dc2p-3 ulperr -1.910 = -0x1p+1 + 0x1.6ffc42p-4
src/math/sanity/y0f.h:3: bad fp exception: RN y0f(-0x1.0c34b4p+3)=-nan, want INVALID got 0
src/math/sanity/y0f.h:4: bad fp exception: RN y0f(-0x1.a206fp+2)=-nan, want INVALID got 0
src/math/sanity/y0f.h:7: bad fp exception: RN y0f(-0x1.a05cc8p-2)=-nan, want INVALID got 0
src/math/sanity/y0f.h:10: bad fp exception: RN y0f(-0x1.5b86eap-1)=-nan, want INVALID got 0
src/math/special/y0f.h:1: bad fp exception: RN y0f(0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y0f.h:2: bad fp exception: RN y0f(-0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y0f.h:3: bad fp exception: RN y0f(-0x1p+0)=-nan, want INVALID got 0
src/math/special/y0f.h:5: bad fp exception: RN y0f(-inf)=-nan, want INVALID got 0
X src/math/special/y0f.h:7: RN y0f(0x1.0c4a3ap+0) want 0x1.ff138ep-4 got 0x1.ff1386p-4 ulperr -4.180 = -0x1.fffffep+1 + -0x1.71585ap-3
X src/math/special/y0f.h:8: RN y0f(0x1.8ae5d4p-1) want -0x1.d88a5ap-4 got -0x1.d88a5p-4 ulperr 4.919 = 0x1.4p+2 + -0x1.4d601ap-4
X src/math/special/y0f.h:9: RN y0f(0x1.fa9536p+1) want -0x1.da2946p-25 got -0x1.c5c23p-25 ulperr 668554.625 = 0x1.46716p+19 + -0x1.88a2bcp-2
FAIL src/math/y0f.exe [status 1]
src/math/sanity/y1.h:1: bad fp exception: RN y1(-0x1.02239f3c6a8f1p+3)=nan, want INVALID got 0
src/math/sanity/y1.h:3: bad fp exception: RN y1(-0x1.0c34b3e01e6e7p+3)=nan, want INVALID got 0
src/math/sanity/y1.h:4: bad fp exception: RN y1(-0x1.a206f0a19dcc4p+2)=nan, want INVALID got 0
src/math/sanity/y1.h:7: bad fp exception: RN y1(-0x1.a05cc754481d1p-2)=nan, want INVALID got 0
src/math/sanity/y1.h:10: bad fp exception: RN y1(-0x1.5b86ea8118a0ep-1)=nan, want INVALID got 0
src/math/special/y1.h:1: bad fp exception: RN y1(0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y1.h:2: bad fp exception: RN y1(-0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y1.h:3: bad fp exception: RN y1(-0x1p+0)=nan, want INVALID got 0
src/math/special/y1.h:5: bad fp exception: RN y1(-inf)=nan, want INVALID got 0
FAIL src/math/y1.exe [status 1]
src/math/sanity/y1f.h:1: bad fp exception: RN y1f(-0x1.0223ap+3)=-nan, want INVALID got 0
src/math/sanity/y1f.h:3: bad fp exception: RN y1f(-0x1.0c34b4p+3)=-nan, want INVALID got 0
src/math/sanity/y1f.h:4: bad fp exception: RN y1f(-0x1.a206fp+2)=-nan, want INVALID got 0
src/math/sanity/y1f.h:7: bad fp exception: RN y1f(-0x1.a05cc8p-2)=-nan, want INVALID got 0
src/math/sanity/y1f.h:10: bad fp exception: RN y1f(-0x1.5b86eap-1)=-nan, want INVALID got 0
src/math/special/y1f.h:1: bad fp exception: RN y1f(0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y1f.h:2: bad fp exception: RN y1f(-0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/y1f.h:3: bad fp exception: RN y1f(-0x1p+0)=-nan, want INVALID got 0
src/math/special/y1f.h:5: bad fp exception: RN y1f(-inf)=-nan, want INVALID got 0
FAIL src/math/y1f.exe [status 1]
src/math/sanity/yn.h:1: bad fp exception: RN yn(-2, -0x1.02239f3c6a8f1p+3)=nan, want INVALID got 0
src/math/sanity/yn.h:3: bad fp exception: RN yn(0, -0x1.0c34b3e01e6e7p+3)=nan, want INVALID got 0
src/math/sanity/yn.h:4: bad fp exception: RN yn(1, -0x1.a206f0a19dcc4p+2)=nan, want INVALID got 0
src/math/sanity/yn.h:7: bad fp exception: RN yn(4, -0x1.a05cc754481d1p-2)=nan, want INVALID got 0
src/math/sanity/yn.h:10: bad fp exception: RN yn(7, -0x1.5b86ea8118a0ep-1)=nan, want INVALID got 0
src/math/special/yn.h:1: bad fp exception: RN yn(0, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:2: bad fp exception: RN yn(0, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:3: bad fp exception: RN yn(0, -0x1p+0)=nan, want INVALID got 0
src/math/special/yn.h:5: bad fp exception: RN yn(0, -inf)=nan, want INVALID got 0
src/math/special/yn.h:7: bad fp exception: RN yn(1, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:8: bad fp exception: RN yn(1, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:9: bad fp exception: RN yn(1, -0x1p+0)=nan, want INVALID got 0
src/math/special/yn.h:11: bad fp exception: RN yn(1, -inf)=nan, want INVALID got 0
src/math/special/yn.h:13: bad fp exception: RN yn(-1, 0x0p+0)=inf, want DIVBYZERO got 0
src/math/special/yn.h:14: bad fp exception: RN yn(-1, -0x0p+0)=inf, want DIVBYZERO got 0
src/math/special/yn.h:15: bad fp exception: RN yn(-1, -0x1p+0)=nan, want INVALID got 0
src/math/special/yn.h:17: bad fp exception: RN yn(-1, -inf)=nan, want INVALID got 0
src/math/special/yn.h:19: bad fp exception: RN yn(2, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:20: bad fp exception: RN yn(2, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/yn.h:21: bad fp exception: RN yn(2, -0x1p+0)=nan, want INVALID got 0
src/math/special/yn.h:23: bad fp exception: RN yn(2, -inf)=nan, want INVALID got 0
FAIL src/math/yn.exe [status 1]
src/math/sanity/ynf.h:1: bad fp exception: RN ynf(-2, -0x1.0223ap+3)=-nan, want INVALID got 0
src/math/sanity/ynf.h:3: bad fp exception: RN ynf(0, -0x1.0c34b4p+3)=-nan, want INVALID got 0
src/math/sanity/ynf.h:4: bad fp exception: RN ynf(1, -0x1.a206fp+2)=-nan, want INVALID got 0
X src/math/sanity/ynf.h:6: RN ynf(3, 0x1.52efdp-1) want -0x1.2935d2p+4 got -0x1.2935d6p+4, ulperr -1.920 = -0x1p+1 + 0x1.47d13p-4
src/math/sanity/ynf.h:7: bad fp exception: RN ynf(4, -0x1.a05cc8p-2)=-nan, want INVALID got 0
X src/math/sanity/ynf.h:9: RN ynf(6, 0x1.8c5dbp-1) want -0x1.6dbc1cp+13 got -0x1.6dbc18p+13, ulperr 2.115 = 0x1p+1 + 0x1.d597eep-4
src/math/sanity/ynf.h:10: bad fp exception: RN ynf(7, -0x1.5b86eap-1)=-nan, want INVALID got 0
src/math/special/ynf.h:1: bad fp exception: RN ynf(0, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:2: bad fp exception: RN ynf(0, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:3: bad fp exception: RN ynf(0, -0x1p+0)=-nan, want INVALID got 0
src/math/special/ynf.h:5: bad fp exception: RN ynf(0, -inf)=-nan, want INVALID got 0
src/math/special/ynf.h:7: bad fp exception: RN ynf(1, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:8: bad fp exception: RN ynf(1, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:9: bad fp exception: RN ynf(1, -0x1p+0)=-nan, want INVALID got 0
src/math/special/ynf.h:11: bad fp exception: RN ynf(1, -inf)=-nan, want INVALID got 0
src/math/special/ynf.h:13: bad fp exception: RN ynf(-1, 0x0p+0)=inf, want DIVBYZERO got 0
src/math/special/ynf.h:14: bad fp exception: RN ynf(-1, -0x0p+0)=inf, want DIVBYZERO got 0
src/math/special/ynf.h:15: bad fp exception: RN ynf(-1, -0x1p+0)=-nan, want INVALID got 0
src/math/special/ynf.h:17: bad fp exception: RN ynf(-1, -inf)=-nan, want INVALID got 0
src/math/special/ynf.h:19: bad fp exception: RN ynf(2, 0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:20: bad fp exception: RN ynf(2, -0x0p+0)=-inf, want DIVBYZERO got 0
src/math/special/ynf.h:21: bad fp exception: RN ynf(2, -0x1p+0)=-nan, want INVALID got 0
src/math/special/ynf.h:23: bad fp exception: RN ynf(2, -inf)=-nan, want INVALID got 0
FAIL src/math/ynf.exe [status 1]
src/regression/malloc-brk-fail.c:31: malloc(10000) succeeded after memory is filled
FAIL src/regression/malloc-brk-fail.exe [status 1]
src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==0) got 38 "Function not implemented" want 0 "No error information"
src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==0) got 110 "Operation timed out" want 130 "Previous owner died"
src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==1) got 38 "Function not implemented" want 0 "No error information"
src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==1) got 110 "Operation timed out" want 130 "Previous owner died"
FAIL src/regression/pthread-robust-detach-static.exe [status 1]
src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==0) got 38 "Function not implemented" want 0 "No error information"
src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==0) got 110 "Operation timed out" want 130 "Previous owner died"
src/regression/pthread-robust-detach.c:33: pthread_mutexattr_setrobust(&mtx_a, 1) failed: (pshared==1) got 38 "Function not implemented" want 0 "No error information"
src/regression/pthread-robust-detach.c:50: pthread_mutex_timedlock(&mtx, &ts) failed: (pshared==1) got 110 "Operation timed out" want 130 "Previous owner died"
FAIL src/regression/pthread-robust-detach.exe [status 1]

[-- Attachment #3: musl-add-hexagon.diff --]
[-- Type: application/octet-stream, Size: 42668 bytes --]

diff --git a/arch/hexagon/atomic_arch.h b/arch/hexagon/atomic_arch.h
new file mode 100644
index 00000000..c2945598
--- /dev/null
+++ b/arch/hexagon/atomic_arch.h
@@ -0,0 +1,192 @@
+#define a_ctz_32 a_ctz_32
+static inline int a_ctz_32(unsigned long x)
+{
+	__asm__(
+		"%0 = ct0(%0)\n\t"
+		: "+r"(x));
+	return x;
+}
+
+#define a_ctz_64 a_ctz_64
+static inline int a_ctz_64(uint64_t x)
+{
+	int count;
+	__asm__(
+		"%0 = ct0(%1)\n\t"
+		: "=r"(count) : "r"(x));
+	return count;
+}
+#define a_clz_64 a_clz_64
+static inline int a_clz_64(uint64_t x)
+{
+        __asm__(
+                "%0 = brev(%0)\n\t"
+		: "+r"(x));
+        return a_ctz_64(x);
+}
+
+#define a_cas a_cas
+static inline int a_cas(volatile int *p, int t, int s)
+{
+	int dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%1)\n\t"
+		"	{ p0 = cmp.eq(%0, %2)\n\t"
+		"	  if (!p0.new) jump:nt 2f }\n\t"
+		"	memw_locked(%1, p0) = %3\n\t"
+		"	if (!p0) jump 1b\n\t"
+		"2:	\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(t), "r"(s)
+		: "p0", "memory" );
+        return dummy;
+}
+
+#define a_cas_p a_cas_p
+static inline void *a_cas_p(volatile void *p, void *t, void *s)
+{
+	return (void *)a_cas(p, (int)t, (int)s);
+}
+
+#define a_swap a_swap
+static inline int a_swap(volatile int *x, int v)
+{
+	int old, dummy;
+	__asm__ __volatile__(
+		"	%1 = %3\n\t"
+		"1:	%0 = memw_locked(%2)\n\t"
+		"	memw_locked(%2, p0) = %1\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(old), "=&r"(dummy)
+		: "r"(x), "r"(v)
+		: "p0", "memory" );
+        return old;
+}
+
+#define a_fetch_add a_fetch_add
+static inline int a_fetch_add(volatile int *x, int v)
+{
+	int old, dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%2)\n\t"
+		"	%1 = add(%0, %3)\n\t"
+		"	memw_locked(%2, p0) = %1\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(old), "=&r"(dummy)
+		: "r"(x), "r"(v)
+		: "p0", "memory" );
+        return old;
+}
+
+#define a_inc a_inc
+static inline void a_inc(volatile int *x)
+{
+	a_fetch_add(x, 1);
+}
+
+#define a_dec a_dec
+static inline void a_dec(volatile int *x)
+{
+	int dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%1)\n\t"
+		"	%0 = add(%0, #-1)\n\t"
+		"	memw_locked(%1, p0) = %0\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(x)
+		: "p0", "memory" );
+}
+
+#define a_store a_store
+static inline void a_store(volatile int *p, int x)
+{
+	int dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%1)\n\t"
+		"	memw_locked(%1, p0) = %2\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(x)
+		: "p0", "memory" );
+}
+
+#define a_barrier a_barrier
+static inline void a_barrier()
+{
+	__asm__ __volatile__ ("barrier" ::: "memory");
+}
+#define a_spin a_spin
+static inline void a_spin()
+{
+	__asm__ __volatile__ ("pause(#255)" :::);
+}
+
+#define a_crash a_crash
+static inline void a_crash()
+{
+	*(volatile char *)0=0;
+}
+
+#define a_and a_and
+static inline void a_and(volatile int *p, int v)
+{
+	int dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%1)\n\t"
+		"	%0 = and(%0, %2)\n\t"
+		"	memw_locked(%1, p0) = %0\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(v)
+		: "p0", "memory" );
+}
+
+#define  a_or a_or
+static inline void a_or(volatile int *p, int v)
+{
+	int dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memw_locked(%1)\n\t"
+		"	%0 = or(%0, %2)\n\t"
+		"	memw_locked(%1, p0) = %0\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(v)
+		: "p0", "memory" );
+}
+
+#define a_or_l a_or_l
+static inline void a_or_l(volatile void *p, long v)
+{
+	a_or(p, v);
+}
+
+#define a_and_64 a_and_64
+static inline void a_and_64(volatile uint64_t *p, uint64_t v)
+{
+	uint64_t dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memd_locked(%1)\n\t"
+		"	%0 = and(%0, %2)\n\t"
+		"	memd_locked(%1, p0) = %0\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(v)
+		: "p0", "memory" );
+}
+
+#define  a_or_64 a_or_64
+static inline void a_or_64(volatile uint64_t *p, uint64_t v)
+{
+	uint64_t dummy;
+	__asm__ __volatile__(
+		"1:	%0 = memd_locked(%1)\n\t"
+		"	%0 = or(%0, %2)\n\t"
+		"	memd_locked(%1, p0) = %0\n\t"
+		"	if (!p0) jump 1b\n\t"
+		: "=&r"(dummy)
+		: "r"(p), "r"(v)
+		: "p0", "memory" );
+}
+
diff --git a/arch/hexagon/bits/alltypes.h.in b/arch/hexagon/bits/alltypes.h.in
new file mode 100644
index 00000000..e5d9d616
--- /dev/null
+++ b/arch/hexagon/bits/alltypes.h.in
@@ -0,0 +1,18 @@
+#define _Addr int
+#define _Int64 long long
+#define _Reg int
+
+#define __BYTE_ORDER 1234
+#define __LONG_MAX 0x7fffffffL
+
+#ifndef __cplusplus
+#ifdef __WCHAR_TYPE__
+TYPEDEF __WCHAR_TYPE__ wchar_t;
+#else
+TYPEDEF long wchar_t;
+#endif
+#endif
+
+TYPEDEF float float_t;
+TYPEDEF double double_t;
+TYPEDEF struct { long long __ll; long double __ld; } max_align_t;
diff --git a/arch/hexagon/bits/fenv.h b/arch/hexagon/bits/fenv.h
new file mode 100644
index 00000000..d3349306
--- /dev/null
+++ b/arch/hexagon/bits/fenv.h
@@ -0,0 +1,20 @@
+#define FE_INVALID    (1 << 1)
+#define FE_DIVBYZERO  (1 << 2)
+#define FE_OVERFLOW   (1 << 3)
+#define FE_UNDERFLOW  (1 << 4)
+#define FE_INEXACT    (1 << 5)
+#define FE_ALL_EXCEPT (FE_DIVBYZERO | FE_INEXACT | FE_INVALID | \
+                       FE_OVERFLOW | FE_UNDERFLOW)
+
+#define FE_TONEAREST  0x00
+#define FE_TOWARDZERO 0x01
+#define FE_DOWNWARD   0x02
+#define FE_UPWARD     0x03
+
+typedef unsigned long fexcept_t;
+
+typedef struct {
+	unsigned long __cw;
+} fenv_t;
+
+#define FE_DFL_ENV      ((const fenv_t *) -1)
diff --git a/arch/hexagon/bits/float.h b/arch/hexagon/bits/float.h
new file mode 100644
index 00000000..c4a655e7
--- /dev/null
+++ b/arch/hexagon/bits/float.h
@@ -0,0 +1,16 @@
+#define FLT_EVAL_METHOD 0
+
+#define LDBL_TRUE_MIN 4.94065645841246544177e-324L
+#define LDBL_MIN 2.22507385850720138309e-308L
+#define LDBL_MAX 1.79769313486231570815e+308L
+#define LDBL_EPSILON 2.22044604925031308085e-16L
+
+#define LDBL_MANT_DIG 53
+#define LDBL_MIN_EXP (-1021)
+#define LDBL_MAX_EXP 1024
+
+#define LDBL_DIG 15
+#define LDBL_MIN_10_EXP (-307)
+#define LDBL_MAX_10_EXP 308
+
+#define DECIMAL_DIG 17
diff --git a/arch/hexagon/bits/ipcstat.h b/arch/hexagon/bits/ipcstat.h
new file mode 100644
index 00000000..4f4fcb0c
--- /dev/null
+++ b/arch/hexagon/bits/ipcstat.h
@@ -0,0 +1 @@
+#define IPC_STAT 0x102
diff --git a/arch/hexagon/bits/msg.h b/arch/hexagon/bits/msg.h
new file mode 100644
index 00000000..7bbbb2bf
--- /dev/null
+++ b/arch/hexagon/bits/msg.h
@@ -0,0 +1,18 @@
+struct msqid_ds {
+	struct ipc_perm msg_perm;
+	unsigned long __msg_stime_lo;
+	unsigned long __msg_stime_hi;
+	unsigned long __msg_rtime_lo;
+	unsigned long __msg_rtime_hi;
+	unsigned long __msg_ctime_lo;
+	unsigned long __msg_ctime_hi;
+	unsigned long msg_cbytes;
+	msgqnum_t msg_qnum;
+	msglen_t msg_qbytes;
+	pid_t msg_lspid;
+	pid_t msg_lrpid;
+	unsigned long __unused[2];
+	time_t msg_stime;
+	time_t msg_rtime;
+	time_t msg_ctime;
+};
diff --git a/arch/hexagon/bits/posix.h b/arch/hexagon/bits/posix.h
new file mode 100644
index 00000000..30a38714
--- /dev/null
+++ b/arch/hexagon/bits/posix.h
@@ -0,0 +1,2 @@
+#define _POSIX_V6_ILP32_OFFBIG  1
+#define _POSIX_V7_ILP32_OFFBIG  1
diff --git a/arch/hexagon/bits/sem.h b/arch/hexagon/bits/sem.h
new file mode 100644
index 00000000..65661542
--- /dev/null
+++ b/arch/hexagon/bits/sem.h
@@ -0,0 +1,13 @@
+struct semid_ds {
+	struct ipc_perm sem_perm;
+	unsigned long __sem_otime_lo;
+	unsigned long __sem_otime_hi;
+	unsigned long __sem_ctime_lo;
+	unsigned long __sem_ctime_hi;
+	unsigned short sem_nsems;
+	char __sem_nsems_pad[sizeof(long)-sizeof(short)];
+	long __unused3;
+	long __unused4;
+	time_t sem_otime;
+	time_t sem_ctime;
+};
diff --git a/arch/hexagon/bits/setjmp.h b/arch/hexagon/bits/setjmp.h
new file mode 100644
index 00000000..2d75319a
--- /dev/null
+++ b/arch/hexagon/bits/setjmp.h
@@ -0,0 +1 @@
+typedef	long long  __jmp_buf[8];
diff --git a/arch/hexagon/bits/shm.h b/arch/hexagon/bits/shm.h
new file mode 100644
index 00000000..725fb469
--- /dev/null
+++ b/arch/hexagon/bits/shm.h
@@ -0,0 +1,31 @@
+#define SHMLBA 4096
+
+struct shmid_ds {
+	struct ipc_perm shm_perm;
+	size_t shm_segsz;
+	unsigned long __shm_atime_lo;
+	unsigned long __shm_atime_hi;
+	unsigned long __shm_dtime_lo;
+	unsigned long __shm_dtime_hi;
+	unsigned long __shm_ctime_lo;
+	unsigned long __shm_ctime_hi;
+	pid_t shm_cpid;
+	pid_t shm_lpid;
+	unsigned long shm_nattch;
+	unsigned long __pad1;
+	unsigned long __pad2;
+	unsigned long __pad3;
+	time_t shm_atime;
+	time_t shm_dtime;
+	time_t shm_ctime;
+};
+
+struct shminfo {
+	unsigned long shmmax, shmmin, shmmni, shmseg, shmall, __unused[4];
+};
+
+struct shm_info {
+	int __used_ids;
+	unsigned long shm_tot, shm_rss, shm_swp;
+	unsigned long __swap_attempts, __swap_successes;
+};
diff --git a/arch/hexagon/bits/signal.h b/arch/hexagon/bits/signal.h
new file mode 100644
index 00000000..b119f163
--- /dev/null
+++ b/arch/hexagon/bits/signal.h
@@ -0,0 +1,103 @@
+#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
+
+#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
+#define MINSIGSTKSZ 2048
+#define SIGSTKSZ 8192
+#endif
+
+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
+typedef int greg_t, gregset_t[18];
+typedef struct sigcontext
+{
+	unsigned long  r0,  r1,  r2,  r3;
+	unsigned long  r4,  r5,  r6,  r7;
+	unsigned long  r8,  r9, r10, r11;
+	unsigned long r12, r13, r14, r15;
+	unsigned long r16, r17, r18, r19;
+	unsigned long r20, r21, r22, r23;
+	unsigned long r24, r25, r26, r27;
+	unsigned long r28, r29, r30, r31;
+	unsigned long sa0;
+	unsigned long lc0;
+	unsigned long sa1;
+	unsigned long lc1;
+	unsigned long m0;
+	unsigned long m1;
+	unsigned long usr;
+	unsigned long p3_0;
+	unsigned long gp;
+	unsigned long ugp;
+	unsigned long pc;
+	unsigned long cause;
+	unsigned long badva;
+	unsigned long pad1;
+	unsigned long long pad2;
+} mcontext_t;
+#else
+typedef struct {
+	unsigned long __regs[48];
+} __attribute__((__aligned__(8))) mcontext_t;
+#endif
+
+struct sigaltstack {
+	void *ss_sp;
+	int ss_flags;
+	size_t ss_size;
+};
+
+typedef struct __ucontext {
+	unsigned long uc_flags;
+	struct __ucontext *uc_link;
+	stack_t uc_stack;
+	mcontext_t uc_mcontext;
+	sigset_t uc_sigmask;
+} ucontext_t;
+
+#define SA_NOCLDSTOP  1
+#define SA_NOCLDWAIT  2
+#define SA_SIGINFO    4
+#define SA_ONSTACK    0x08000000
+#define SA_RESTART    0x10000000
+#define SA_NODEFER    0x40000000
+#define SA_RESETHAND  0x80000000
+#define SA_RESTORER   0x04000000
+
+#endif
+
+#define SIGHUP    1
+#define SIGINT    2
+#define SIGQUIT   3
+#define SIGILL    4
+#define SIGTRAP   5
+#define SIGABRT   6
+#define SIGIOT    SIGABRT
+#define SIGBUS    7
+#define SIGFPE    8
+#define SIGKILL   9
+#define SIGUSR1   10
+#define SIGSEGV   11
+#define SIGUSR2   12
+#define SIGPIPE   13
+#define SIGALRM   14
+#define SIGTERM   15
+#define SIGSTKFLT 16
+#define SIGCHLD   17
+#define SIGCONT   18
+#define SIGSTOP   19
+#define SIGTSTP   20
+#define SIGTTIN   21
+#define SIGTTOU   22
+#define SIGURG    23
+#define SIGXCPU   24
+#define SIGXFSZ   25
+#define SIGVTALRM 26
+#define SIGPROF   27
+#define SIGWINCH  28
+#define SIGIO     29
+#define SIGPOLL   29
+#define SIGPWR    30
+#define SIGSYS    31
+#define SIGUNUSED SIGSYS
+
+#define _NSIG 65
diff --git a/arch/hexagon/bits/stat.h b/arch/hexagon/bits/stat.h
new file mode 100644
index 00000000..55e81fd9
--- /dev/null
+++ b/arch/hexagon/bits/stat.h
@@ -0,0 +1,20 @@
+/* copied from kernel definition, but with padding replaced
+ * by the corresponding correctly-sized userspace types. */
+struct stat {
+	dev_t st_dev;
+	ino_t st_ino;
+	mode_t st_mode;
+	nlink_t st_nlink;
+	uid_t st_uid;
+	gid_t st_gid;
+	dev_t st_rdev;
+	unsigned long __pad;
+	off_t st_size;
+	blksize_t st_blksize;
+	int __pad2;
+	blkcnt_t st_blocks;
+	struct timespec st_atim;
+	struct timespec st_mtim;
+	struct timespec st_ctim;
+	unsigned __unused[2];
+};
diff --git a/arch/hexagon/bits/stdint.h b/arch/hexagon/bits/stdint.h
new file mode 100644
index 00000000..d1b27121
--- /dev/null
+++ b/arch/hexagon/bits/stdint.h
@@ -0,0 +1,20 @@
+typedef int32_t int_fast16_t;
+typedef int32_t int_fast32_t;
+typedef uint32_t uint_fast16_t;
+typedef uint32_t uint_fast32_t;
+
+#define INT_FAST16_MIN  INT32_MIN
+#define INT_FAST32_MIN  INT32_MIN
+
+#define INT_FAST16_MAX  INT32_MAX
+#define INT_FAST32_MAX  INT32_MAX
+
+#define UINT_FAST16_MAX UINT32_MAX
+#define UINT_FAST32_MAX UINT32_MAX
+
+#define INTPTR_MIN      INT32_MIN
+#define INTPTR_MAX      INT32_MAX
+#define UINTPTR_MAX     UINT32_MAX
+#define PTRDIFF_MIN     INT32_MIN
+#define PTRDIFF_MAX     INT32_MAX
+#define SIZE_MAX        UINT32_MAX
diff --git a/arch/hexagon/bits/syscall.h.in b/arch/hexagon/bits/syscall.h.in
new file mode 100644
index 00000000..5e7b96d0
--- /dev/null
+++ b/arch/hexagon/bits/syscall.h.in
@@ -0,0 +1,327 @@
+#define __NR_io_setup 0
+#define __NR_io_destroy 1
+#define __NR_io_submit 2
+#define __NR_io_cancel 3
+#define __NR_io_getevents 4
+#define __NR_setxattr 5
+#define __NR_lsetxattr 6
+#define __NR_fsetxattr 7
+#define __NR_getxattr 8
+#define __NR_lgetxattr 9
+#define __NR_fgetxattr 10
+#define __NR_listxattr 11
+#define __NR_llistxattr 12
+#define __NR_flistxattr 13
+#define __NR_removexattr 14
+#define __NR_lremovexattr 15
+#define __NR_fremovexattr 16
+#define __NR_getcwd 17
+#define __NR_lookup_dcookie 18
+#define __NR_eventfd2 19
+#define __NR_epoll_create1 20
+#define __NR_epoll_ctl 21
+#define __NR_epoll_pwait 22
+#define __NR_dup 23
+#define __NR_dup3 24
+#define __NR_fcntl 25
+#define __NR_inotify_init1 26
+#define __NR_inotify_add_watch 27
+#define __NR_inotify_rm_watch 28
+#define __NR_ioctl 29
+#define __NR_ioprio_set 30
+#define __NR_ioprio_get 31
+#define __NR_flock 32
+#define __NR_mknodat 33
+#define __NR_mkdirat 34
+#define __NR_unlinkat 35
+#define __NR_symlinkat 36
+#define __NR_linkat 37
+#define __NR_renameat 38
+#define __NR_umount2 39
+#define __NR_mount 40
+#define __NR_pivot_root 41
+#define __NR_nfsservctl 42
+#define __NR_statfs 43
+#define __NR_fstatfs 44
+#define __NR_truncate 45
+#define __NR_ftruncate 46
+#define __NR_fallocate 47
+#define __NR_faccessat 48
+#define __NR_chdir 49
+#define __NR_fchdir 50
+#define __NR_chroot 51
+#define __NR_fchmod 52
+#define __NR_fchmodat 53
+#define __NR_fchownat 54
+#define __NR_fchown 55
+#define __NR_openat 56
+#define __NR_close 57
+#define __NR_vhangup 58
+#define __NR_pipe2 59
+#define __NR_quotactl 60
+#define __NR_getdents64 61
+#define __NR_lseek 62
+#define __NR_read 63
+#define __NR_write 64
+#define __NR_readv 65
+#define __NR_writev 66
+#define __NR_pread64 67
+#define __NR_pwrite64 68
+#define __NR_preadv 69
+#define __NR_pwritev 70
+#define __NR_sendfile 71
+#define __NR_pselect6 72
+#define __NR_ppoll 73
+#define __NR_signalfd4 74
+#define __NR_vmsplice 75
+#define __NR_splice 76
+#define __NR_tee 77
+#define __NR_readlinkat 78
+#define __NR_fstatat 79
+#define __NR_fstat 80
+#define __NR_sync 81
+#define __NR_fsync 82
+#define __NR_fdatasync 83
+#define __NR_sync_file_range2 84
+#define __NR_sync_file_range 84
+#define __NR_timerfd_create 85
+#define __NR_timerfd_settime 86
+#define __NR_timerfd_gettime 87
+#define __NR_utimensat 88
+#define __NR_acct 89
+#define __NR_capget 90
+#define __NR_capset 91
+#define __NR_personality 92
+#define __NR_exit 93
+#define __NR_exit_group 94
+#define __NR_waitid 95
+#define __NR_set_tid_address 96
+#define __NR_unshare 97
+#define __NR_futex 98
+#define __NR_set_robust_list 99
+#define __NR_get_robust_list 100
+#define __NR_nanosleep 101
+#define __NR_getitimer 102
+#define __NR_setitimer 103
+#define __NR_kexec_load 104
+#define __NR_init_module 105
+#define __NR_delete_module 106
+#define __NR_timer_create 107
+#define __NR_timer_gettime 108
+#define __NR_timer_getoverrun 109
+#define __NR_timer_settime 110
+#define __NR_timer_delete 111
+#define __NR_clock_settime 112
+#define __NR_clock_gettime32 113
+#define __NR_clock_getres 114
+#define __NR_clock_nanosleep 115
+#define __NR_syslog 116
+#define __NR_ptrace 117
+#define __NR_sched_setparam 118
+#define __NR_sched_setscheduler 119
+#define __NR_sched_getscheduler 120
+#define __NR_sched_getparam 121
+#define __NR_sched_setaffinity 122
+#define __NR_sched_getaffinity 123
+#define __NR_sched_yield 124
+#define __NR_sched_get_priority_max 125
+#define __NR_sched_get_priority_min 126
+#define __NR_sched_rr_get_interval 127
+#define __NR_restart_syscall 128
+#define __NR_kill 129
+#define __NR_tkill 130
+#define __NR_tgkill 131
+#define __NR_sigaltstack 132
+#define __NR_rt_sigsuspend 133
+#define __NR_rt_sigaction 134
+#define __NR_rt_sigprocmask 135
+#define __NR_rt_sigpending 136
+#define __NR_rt_sigtimedwait 137
+#define __NR_rt_sigqueueinfo 138
+#define __NR_rt_sigreturn 139
+#define __NR_setpriority 140
+#define __NR_getpriority 141
+#define __NR_reboot 142
+#define __NR_setregid 143
+#define __NR_setgid 144
+#define __NR_setreuid 145
+#define __NR_setuid 146
+#define __NR_setresuid 147
+#define __NR_getresuid 148
+#define __NR_setresgid 149
+#define __NR_getresgid 150
+#define __NR_setfsuid 151
+#define __NR_setfsgid 152
+#define __NR_times 153
+#define __NR_setpgid 154
+#define __NR_getpgid 155
+#define __NR_getsid 156
+#define __NR_setsid 157
+#define __NR_getgroups 158
+#define __NR_setgroups 159
+#define __NR_uname 160
+#define __NR_sethostname 161
+#define __NR_setdomainname 162
+#define __NR_getrlimit 163
+#define __NR_setrlimit 164
+#define __NR_getrusage 165
+#define __NR_umask 166
+#define __NR_prctl 167
+#define __NR_getcpu 168
+#define __NR_gettimeofday_time32 169
+#define __NR_settimeofday 170
+#define __NR_adjtimex 171
+#define __NR_getpid 172
+#define __NR_getppid 173
+#define __NR_getuid 174
+#define __NR_geteuid 175
+#define __NR_getgid 176
+#define __NR_getegid 177
+#define __NR_gettid 178
+#define __NR_sysinfo 179
+#define __NR_mq_open 180
+#define __NR_mq_unlink 181
+#define __NR_mq_timedsend 182
+#define __NR_mq_timedreceive 183
+#define __NR_mq_notify 184
+#define __NR_mq_getsetattr 185
+#define __NR_msgget 186
+#define __NR_msgctl 187
+#define __NR_msgrcv 188
+#define __NR_msgsnd 189
+#define __NR_semget 190
+#define __NR_semctl 191
+#define __NR_semtimedop 192
+#define __NR_semop 193
+#define __NR_shmget 194
+#define __NR_shmctl 195
+#define __NR_shmat 196
+#define __NR_shmdt 197
+#define __NR_socket 198
+#define __NR_socketpair 199
+#define __NR_bind 200
+#define __NR_listen 201
+#define __NR_accept 202
+#define __NR_connect 203
+#define __NR_getsockname 204
+#define __NR_getpeername 205
+#define __NR_sendto 206
+#define __NR_recvfrom 207
+#define __NR_setsockopt 208
+#define __NR_getsockopt 209
+#define __NR_shutdown 210
+#define __NR_sendmsg 211
+#define __NR_recvmsg 212
+#define __NR_readahead 213
+#define __NR_brk 214
+#define __NR_munmap 215
+#define __NR_mremap 216
+#define __NR_add_key 217
+#define __NR_request_key 218
+#define __NR_keyctl 219
+#define __NR_clone 220
+#define __NR_execve 221
+#define __NR_mmap 222
+#define __NR_fadvise64 223
+#define __NR_swapon 224
+#define __NR_swapoff 225
+#define __NR_mprotect 226
+#define __NR_msync 227
+#define __NR_mlock 228
+#define __NR_munlock 229
+#define __NR_mlockall 230
+#define __NR_munlockall 231
+#define __NR_mincore 232
+#define __NR_madvise 233
+#define __NR_remap_file_pages 234
+#define __NR_mbind 235
+#define __NR_get_mempolicy 236
+#define __NR_set_mempolicy 237
+#define __NR_migrate_pages 238
+#define __NR_move_pages 239
+#define __NR_rt_tgsigqueueinfo 240
+#define __NR_perf_event_open 241
+#define __NR_accept4 242
+#define __NR_recvmmsg 243
+#define __NR_arch_specific_syscall 244
+#define __NR_wait4 260
+#define __NR_prlimit64 261
+#define __NR_fanotify_init 262
+#define __NR_fanotify_mark 263
+#define __NR_name_to_handle_at 264
+#define __NR_open_by_handle_at 265
+#define __NR_clock_adjtime 266
+#define __NR_syncfs 267
+#define __NR_setns 268
+#define __NR_sendmmsg 269
+#define __NR_process_vm_readv 270
+#define __NR_process_vm_writev 271
+#define __NR_kcmp 272
+#define __NR_finit_module 273
+#define __NR_sched_setattr 274
+#define __NR_sched_getattr 275
+#define __NR_renameat2 276
+#define __NR_seccomp 277
+#define __NR_getrandom 278
+#define __NR_memfd_create 279
+#define __NR_bpf 280
+#define __NR_execveat 281
+#define __NR_userfaultfd 282
+#define __NR_membarrier 283
+#define __NR_mlock2 284
+#define __NR_copy_file_range 285
+#define __NR_preadv2 286
+#define __NR_pwritev2 287
+#define __NR_pkey_mprotect 288
+#define __NR_pkey_alloc 289
+#define __NR_pkey_free 290
+#define __NR_statx 291
+#define __NR_clock_gettime64 403
+#define __NR_clock_settime64 404
+#define __NR_clock_adjtime64 405
+#define __NR_clock_getres_time64 406
+#define __NR_clock_nanosleep_time64 407
+#define __NR_timer_gettime64 408
+#define __NR_timer_settime64 409
+#define __NR_timerfd_gettime64 410
+#define __NR_timerfd_settime64 411
+#define __NR_utimensat_time64 412
+#define __NR_pselect6_time64 413
+#define __NR_ppoll_time64 414
+#define __NR_io_pgetevents_time64 416
+#define __NR_recvmmsg_time64 417
+#define __NR_mq_timedsend_time64 418
+#define __NR_mq_timedreceive_time64 419
+#define __NR_semtimedop_time64 420
+#define __NR_rt_sigtimedwait_time64 421
+#define __NR_futex_time64 422
+#define __NR_sched_rr_get_interval_time64 423
+#define __NR_pidfd_send_signal 424
+#define __NR_io_uring_setup 425
+#define __NR_io_uring_enter 426
+#define __NR_io_uring_register 427
+#define __NR_open_tree 428
+#define __NR_move_mount 429
+#define __NR_fsopen 430
+#define __NR_fsconfig 431
+#define __NR_fsmount 432
+#define __NR_fspick 433
+#define __NR_pidfd_open 434
+#define __NR_close_range 436
+#define __NR_openat2 437
+#define __NR_pidfd_getfd 438
+#define __NR_faccessat2 439
+#define __NR_process_madvise 440
+#define __NR_syscalls (__NR_process_madvise+1)
+#define __NR_newfstatat  __NR_fstatat
+#define __NR_fcntl64  __NR_fcntl
+#define __NR_statfs64  __NR_statfs
+#define __NR_fstatfs64  __NR_fstatfs
+#define __NR_truncate64  __NR_truncate
+#define __NR_ftruncate64  __NR_ftruncate
+#define __NR__llseek  __NR_lseek
+#define __NR_sendfile64  __NR_sendfile
+#define __NR_fstatat64  __NR_fstatat
+#define __NR_fstat64  __NR_fstat
+#define __NR_mmap2  __NR_mmap
+#define __NR_fadvise64_64  __NR_fadvise64
diff --git a/arch/hexagon/crt_arch.h b/arch/hexagon/crt_arch.h
new file mode 100644
index 00000000..9f9428cf
--- /dev/null
+++ b/arch/hexagon/crt_arch.h
@@ -0,0 +1,22 @@
+__asm__(
+".weak _DYNAMIC \n"
+".hidden _DYNAMIC \n"
+".text \n"
+".global " START " \n"
+".type " START ", %function \n"
+START ": \n"
+"                                       // Find _DYNAMIC\n"
+"       jump 1f\n"
+".word  _DYNAMIC - .\n"
+"1:     r2 = pc\n"
+"       r2 = add(r2, #-4)\n"
+"       r1 = memw(r2)\n"
+"       r1 = add(r2, r1)\n"
+"	r30 = #0			// Signals the end of backtrace\n"
+"	r0 = r29			// Pointer to argc/argv\n"
+"	r29 = and(r29, #-16)		// Align\n"
+"	memw(r29+#-8) = r29\n"
+"	r29 = add(r29, #-8)\n"
+"	call " START "_c \n"
+".size " START ", .-" START "\n"
+);
diff --git a/arch/hexagon/kstat.h b/arch/hexagon/kstat.h
new file mode 100644
index 00000000..92625f36
--- /dev/null
+++ b/arch/hexagon/kstat.h
@@ -0,0 +1,21 @@
+struct kstat {
+	dev_t st_dev;
+	ino_t st_ino;
+	mode_t st_mode;
+	nlink_t st_nlink;
+	uid_t st_uid;
+	gid_t st_gid;
+	dev_t st_rdev;
+	unsigned long __pad;
+	off_t st_size;
+	blksize_t st_blksize;
+	int __pad2;
+	blkcnt_t st_blocks;
+	long st_atime_sec;
+	long st_atime_nsec;
+	long st_mtime_sec;
+	long st_mtime_nsec;
+	long st_ctime_sec;
+	long st_ctime_nsec;
+	unsigned __unused[2];
+};
diff --git a/arch/hexagon/pthread_arch.h b/arch/hexagon/pthread_arch.h
new file mode 100644
index 00000000..b614fdd1
--- /dev/null
+++ b/arch/hexagon/pthread_arch.h
@@ -0,0 +1,13 @@
+// Hexagon supports variant 2 TLS.
+static inline uintptr_t __get_tp()
+{
+  uintptr_t tp;
+  __asm__ ( "%0 = ugp" : "=r"(tp));
+  return tp;
+}
+
+#define TP_ADJ(p) (p)
+
+#define CANCEL_REG_IP 43
+
+#define MC_PC pc
diff --git a/arch/hexagon/reloc.h b/arch/hexagon/reloc.h
new file mode 100644
index 00000000..de171961
--- /dev/null
+++ b/arch/hexagon/reloc.h
@@ -0,0 +1,16 @@
+#include <endian.h>
+
+#define LDSO_ARCH "hexagon"
+#define TPOFF_K 0
+
+#define REL_SYMBOLIC    R_HEX_32
+#define REL_GOT         R_HEX_GLOB_DAT
+#define REL_PLT         R_HEX_JMP_SLOT
+#define REL_RELATIVE    R_HEX_RELATIVE
+#define REL_COPY        R_HEX_COPY
+#define REL_DTPMOD      R_HEX_DTPMOD_32
+#define REL_TPOFF       R_HEX_TPREL_32
+#define REL_DTPOFF      R_HEX_DTPREL_32
+
+#define CRTJMP(pc,sp) __asm__ __volatile__( \
+	"r29 = %1 ; jumpr %0" : : "r"(pc), "r"(sp) : "memory" )
diff --git a/arch/hexagon/syscall_arch.h b/arch/hexagon/syscall_arch.h
new file mode 100644
index 00000000..625ec039
--- /dev/null
+++ b/arch/hexagon/syscall_arch.h
@@ -0,0 +1,78 @@
+
+#define __SYSCALL_LL_E(x) \
+((union { long long ll; long l[2]; }){ .ll = x }).l[0], \
+((union { long long ll; long l[2]; }){ .ll = x }).l[1]
+#define __SYSCALL_LL_O(x) 0, __SYSCALL_LL_E((x))
+
+#define __asm_syscall(...) do { \
+    __asm__ __volatile__ ( "trap0(#1)" \
+    : "=r"(r0) : __VA_ARGS__ : "memory"); \
+    return r0; \
+    } while (0)
+
+static inline long __syscall0(long n)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0");
+  __asm_syscall("r"(r6));
+}
+
+static inline long __syscall1(long n, long a)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  __asm_syscall("r"(r6), "0"(r0));
+}
+
+static inline long __syscall2(long n, long a, long b)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  register long r1 __asm__("r1") = b;
+  __asm_syscall("r"(r6), "0"(r0), "r"(r1));
+}
+
+static inline long __syscall3(long n, long a, long b, long c)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  register long r1 __asm__("r1") = b;
+  register long r2 __asm__("r2") = c;
+  __asm_syscall("r"(r6), "0"(r0), "r"(r1), "r"(r2));
+}
+
+static inline long __syscall4(long n, long a, long b, long c, long d)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  register long r1 __asm__("r1") = b;
+  register long r2 __asm__("r2") = c;
+  register long r3 __asm__("r3") = d;
+  __asm_syscall("r"(r6), "0"(r0), "r"(r1), "r"(r2), "r"(r3));
+}
+
+static inline long __syscall5(long n, long a, long b, long c, long d, long e)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  register long r1 __asm__("r1") = b;
+  register long r2 __asm__("r2") = c;
+  register long r3 __asm__("r3") = d;
+  register long r4 __asm__("r4") = e;
+  __asm_syscall("r"(r6), "0"(r0), "r"(r1), "r"(r2), "r"(r3), "r"(r4));
+}
+
+static inline long __syscall6(long n, long a, long b, long c, long d, long e,
+                              long f)
+{
+  register long r6 __asm__("r6") = n;
+  register long r0 __asm__("r0") = a;
+  register long r1 __asm__("r1") = b;
+  register long r2 __asm__("r2") = c;
+  register long r3 __asm__("r3") = d;
+  register long r4 __asm__("r4") = e;
+  register long r5 __asm__("r5") = f;
+  __asm_syscall("r"(r6), "0"(r0), "r"(r1), "r"(r2), "r"(r3), "r"(r4), "r"(r5));
+}
+
+#define SYSCALL_FADVISE_6_ARG
diff --git a/configure b/configure
index a5231a0e..93478860 100755
--- a/configure
+++ b/configure
@@ -323,6 +323,7 @@ case "$target" in
 # Catch these early to simplify matching for 32-bit archs
 arm*) ARCH=arm ;;
 aarch64*) ARCH=aarch64 ;;
+hexagon*) ARCH=hexagon ;;
 i?86-nt32*) ARCH=nt32 ;;
 i?86*) ARCH=i386 ;;
 x86_64-x32*|x32*|x86_64*x32) ARCH=x32 ;;
diff --git a/include/elf.h b/include/elf.h
index b5e7befb..f4039193 100644
--- a/include/elf.h
+++ b/include/elf.h
@@ -3286,6 +3286,107 @@ enum
 #define R_RISCV_SET32           56
 #define R_RISCV_32_PCREL        57
 
+#define R_HEX_NONE               0
+#define R_HEX_B22_PCREL          1
+#define R_HEX_B15_PCREL          2
+#define R_HEX_B7_PCREL           3
+#define R_HEX_LO16               4
+#define R_HEX_HI16               5
+#define R_HEX_32                 6
+#define R_HEX_16                 7
+#define R_HEX_8                  8
+#define R_HEX_GPREL16_0          9
+#define R_HEX_GPREL16_1         10
+#define R_HEX_GPREL16_2         11
+#define R_HEX_GPREL16_3         12
+#define R_HEX_HL16              13
+#define R_HEX_B13_PCREL         14
+#define R_HEX_B9_PCREL          15
+#define R_HEX_B32_PCREL_X       16
+#define R_HEX_32_6_X            17
+#define R_HEX_B22_PCREL_X       18
+#define R_HEX_B15_PCREL_X       19
+#define R_HEX_B13_PCREL_X       20
+#define R_HEX_B9_PCREL_X        21
+#define R_HEX_B7_PCREL_X        22
+#define R_HEX_16_X              23
+#define R_HEX_12_X              24
+#define R_HEX_11_X              25
+#define R_HEX_10_X              26
+#define R_HEX_9_X               27
+#define R_HEX_8_X               28
+#define R_HEX_7_X               29
+#define R_HEX_6_X               30
+#define R_HEX_32_PCREL          31
+#define R_HEX_COPY              32
+#define R_HEX_GLOB_DAT          33
+#define R_HEX_JMP_SLOT          34
+#define R_HEX_RELATIVE          35
+#define R_HEX_PLT_B22_PCREL     36
+#define R_HEX_GOTOFF_LO16       37
+#define R_HEX_GOTOFF_HI16       38
+#define R_HEX_GOTOFF_32         39
+#define R_HEX_GOT_LO16          40
+#define R_HEX_GOT_HI16          41
+#define R_HEX_GOT_32            42
+#define R_HEX_GOT_16            43
+#define R_HEX_DTPMOD_32         44
+#define R_HEX_DTPREL_LO16       45
+#define R_HEX_DTPREL_HI16       46
+#define R_HEX_DTPREL_32         47
+#define R_HEX_DTPREL_16         48
+#define R_HEX_GD_PLT_B22_PCREL  49
+#define R_HEX_GD_GOT_LO16       50
+#define R_HEX_GD_GOT_HI16       51
+#define R_HEX_GD_GOT_32         52
+#define R_HEX_GD_GOT_16         53
+#define R_HEX_IE_LO16           54
+#define R_HEX_IE_HI16           55
+#define R_HEX_IE_32             56
+#define R_HEX_IE_GOT_LO16       57
+#define R_HEX_IE_GOT_HI16       58
+#define R_HEX_IE_GOT_32         59
+#define R_HEX_IE_GOT_16         60
+#define R_HEX_TPREL_LO16        61
+#define R_HEX_TPREL_HI16        62
+#define R_HEX_TPREL_32          63
+#define R_HEX_TPREL_16          64
+#define R_HEX_6_PCREL_X         65
+#define R_HEX_GOTREL_32_6_X     66
+#define R_HEX_GOTREL_16_X       67
+#define R_HEX_GOTREL_11_X       68
+#define R_HEX_GOT_32_6_X        69
+#define R_HEX_GOT_16_X          70
+#define R_HEX_GOT_11_X          71
+#define R_HEX_DTPREL_32_6_X     72
+#define R_HEX_DTPREL_16_X       73
+#define R_HEX_DTPREL_11_X       74
+#define R_HEX_GD_GOT_32_6_X     75
+#define R_HEX_GD_GOT_16_X       76
+#define R_HEX_GD_GOT_11_X       77
+#define R_HEX_IE_32_6_X         78
+#define R_HEX_IE_16_X           79
+#define R_HEX_IE_GOT_32_6_X     80
+#define R_HEX_IE_GOT_16_X       81
+#define R_HEX_IE_GOT_11_X       82
+#define R_HEX_TPREL_32_6_X      83
+#define R_HEX_TPREL_16_X        84
+#define R_HEX_TPREL_11_X        85
+#define R_HEX_LD_PLT_B22_PCREL  86
+#define R_HEX_LD_GOT_LO16       87
+#define R_HEX_LD_GOT_HI16       88
+#define R_HEX_LD_GOT_32         89
+#define R_HEX_LD_GOT_16         90
+#define R_HEX_LD_GOT_32_6_X     91
+#define R_HEX_LD_GOT_16_X       92
+#define R_HEX_LD_GOT_11_X       93
+#define R_HEX_23_REG            94
+#define R_HEX_GD_PLT_B22_PCREL_X 95
+#define R_HEX_GD_PLT_B32_PCREL_X 96
+#define R_HEX_LD_PLT_B22_PCREL_X 97
+#define R_HEX_LD_PLT_B32_PCREL_X 98
+
+
 #ifdef __cplusplus
 }
 #endif
diff --git a/src/fenv/hexagon/fenv.S b/src/fenv/hexagon/fenv.S
new file mode 100644
index 00000000..ba1d0c75
--- /dev/null
+++ b/src/fenv/hexagon/fenv.S
@@ -0,0 +1,144 @@
+/*
+ * The Hexagon user status register includes five status fields which work
+ * as sticky flags for the five IEEE-defined exception conditions:
+ * inexact, overflow, underflow, divide by zero, and invalid.
+ * A sticky flag is set when the corresponding exception occurs,
+ * and remains set until explicitly cleared.
+ * 
+ *  usr:23:22 - Rounding Mode
+ *  00: Round toward nearest
+ *  01: Round toward zero
+ *  10: Downward Round toward negative infinity
+ *  11: Upward Round toward positive infinity
+ *
+ *  usr:5 - Floating-point IEEE Inexact Sticky Flag.
+ *  usr:4 - Floating-point IEEE Underflow Sticky Flag.
+ *  usr:3 - Floating-point IEEE Overflow Sticky Flag.
+ *  usr:2 - Floating-point IEEE Divide-By-Zero Sticky Flag.
+ *  usr:1 - Floating-point IEEE Invalid Sticky Flag.
+ *  usr:0 - Sticky Saturation Overflow, when 1 saturation occurred.
+ */
+
+#define FE_ALL_EXCEPT 0x3f
+
+#define USR_FE_MASK 0x3fc0003f
+#define RND_MASK    (0x3 << 22)
+#define RND_NEAR    (0x0 << 22)
+#define RND_ZERO    (0x1 << 22)
+#define RND_DOWN    (0x2 << 22)
+#define RND_UP      (0x3 << 22)
+
+/*
+ * int feclearexcept(int mask)
+ */
+.global feclearexcept
+.type feclearexcept,@function
+feclearexcept:
+  {
+    r0 = and(r0, #FE_ALL_EXCEPT) // Only touch the IEEE flag bits.
+    r1 = usr
+  }
+  r1 = and(r1, ~r0)
+  {
+    usr = r1
+    r0 = #0
+    jumpr r31
+  }
+
+/*
+ * int feraiseexcept(int mask)
+ */
+.global feraiseexcept
+.type feraiseexcept,@function
+feraiseexcept:
+  {
+    r0 = and(r0, #FE_ALL_EXCEPT) // Only touch the IEEE flag bits.
+    r1 = usr
+  }
+  r1 = or(r1, r0)
+  {
+    usr = r1
+    r0 = #0
+    jumpr r31
+  }
+
+
+/*
+ * int fetestexcept(int mask)
+ */
+.global fetestexcept
+.type fetestexcept,@function
+fetestexcept:
+  {
+    r0 = and(r0, #FE_ALL_EXCEPT) // Only touch the IEEE flag bits.
+    r1 = usr
+  }
+  {
+    r0 = and(r1, r0)
+    jumpr r31
+  }
+
+/*
+ *int fegetround(void)
+ */
+.global fegetround
+.type fegetround,@function
+fegetround:
+  r0 = usr
+  r0 = and(r0, ##RND_MASK)
+  r0 = lsr(r0, #22);
+  jumpr r31
+
+/*
+ * int __fesetround(int r)
+ */
+.global __fesetround
+.type __fesetround,@function
+__fesetround:
+  {
+    r0 = and(r0, #0x3) // Can only be 0,1,2, or 3
+    r1 = usr
+    r2 = ##RND_MASK
+  }
+  {
+    r1 = and (r1, ~r2)  // Clear the current rounding bits.
+    r0 = asl (r0, #22)
+  }
+  r1 = or(r1, r0)
+  usr = r1
+  {
+    r0 = #0; jumpr r31
+  }
+
+/*
+ * int fegetenv(fenv_t *envp)
+ */
+.global fegetenv
+.type fegetenv,@function
+fegetenv:
+  r1 = usr
+  memw(r0) = r1
+  {
+    r0 = #0
+    jumpr r31
+  }
+
+/*
+ * int fesetenv(const fenv_t *envp)
+ */
+.global fesetenv
+.type fesetenv,@function
+fesetenv:
+  { p0 = cmp.eq(r0, #-1); if (p0.new) r1 = #0 }  /* The default mode */
+  if (!p0) r1 = memw(r0)                         /* stored in fenv_t */
+
+  r2 = ##USR_FE_MASK // USR:FE bit mask
+  r1 = and(r1, r2)   // MASK the input bits with the FE bits
+  r3 = usr
+  r3 = and(r3, ~r2)  // Clear any currently set FE bits
+  r3 = or(r3, r1)    // Set the newbits
+  usr = r3
+  {
+    r0 = #0
+    jumpr r31
+  }
diff --git a/src/math/hexagon/fmaf.c b/src/math/hexagon/fmaf.c
new file mode 100644
index 00000000..7ce1996c
--- /dev/null
+++ b/src/math/hexagon/fmaf.c
@@ -0,0 +1,8 @@
+#include <math.h>
+
+float fmaf(float x, float y, float z)
+{
+	__asm__ ("%[z]+=sfmpy(%[x], %[y])"
+                 : [z]"+r"(z) : [x]"r"(x), [y]"r"(y));
+	return z;
+}
diff --git a/src/math/hexagon/fmaxf.c b/src/math/hexagon/fmaxf.c
new file mode 100644
index 00000000..0dc52b25
--- /dev/null
+++ b/src/math/hexagon/fmaxf.c
@@ -0,0 +1,8 @@
+#include <math.h>
+
+float fmaxf(float x, float y)
+{
+	__asm__ ("%[x]=sfmax(%[x], %[y])"
+                : [x]"+r"(x) : [y]"r"(y));
+	return x;
+}
diff --git a/src/math/hexagon/fminf.c b/src/math/hexagon/fminf.c
new file mode 100644
index 00000000..aeb20ae0
--- /dev/null
+++ b/src/math/hexagon/fminf.c
@@ -0,0 +1,8 @@
+#include <math.h>
+
+float fminf(float x, float y)
+{
+	__asm__ ("%[x]=sfmin(%[x], %[y])"
+                : [x]"+r"(x) : [y]"r"(y));
+	return x;
+}
diff --git a/src/setjmp/hexagon/longjmp.s b/src/setjmp/hexagon/longjmp.s
new file mode 100644
index 00000000..691b67dd
--- /dev/null
+++ b/src/setjmp/hexagon/longjmp.s
@@ -0,0 +1,25 @@
+.text
+.global _longjmp
+.global longjmp
+.type _longjmp,%function
+.type longjmp,%function
+_longjmp:
+longjmp:
+    { r17:16=memd(r0+#0)
+      r19:18=memd(r0+#8) }
+    { r21:20=memd(r0+#16)
+      r23:22=memd(r0+#24) }
+    { r25:24=memd(r0+#32)
+      r27:26=memd(r0+#40) }
+    { r29:28=memd(r0+#48)
+      r31:30=memd(r0+#56) }
+
+    r0 = r1
+    r1 = #0
+    p0 = cmp.eq(r0,r1)
+    if (!p0) jumpr r31
+    r0 = #1
+
+    jumpr r31
+.size _longjmp, .-_longjmp
+.size longjmp, .-longjmp
diff --git a/src/setjmp/hexagon/setjmp.s b/src/setjmp/hexagon/setjmp.s
new file mode 100644
index 00000000..d29f036e
--- /dev/null
+++ b/src/setjmp/hexagon/setjmp.s
@@ -0,0 +1,24 @@
+.text
+.global __setjmp
+.global _setjmp
+.global setjmp
+.type __setjmp,@function
+.type _setjmp,@function
+.type setjmp,@function
+__setjmp:
+_setjmp:
+setjmp:
+    { memd(r0+#0)=r17:16
+      memd(r0+#8)=r19:18 }
+    { memd(r0+#16)=r21:20
+      memd(r0+#24)=r23:22 }
+    { memd(r0+#32)=r25:24
+      memd(r0+#40)=r27:26 }
+    { memd(r0+#48)=r29:28
+      memd(r0+#56)=r31:30 }
+
+    r0 = #0
+    jumpr r31
+.size __setjmp, .-__setjmp
+.size _setjmp, .-_setjmp
+.size setjmp, .-setjmp
diff --git a/src/signal/hexagon/restore.s b/src/signal/hexagon/restore.s
new file mode 100644
index 00000000..f43f5e02
--- /dev/null
+++ b/src/signal/hexagon/restore.s
@@ -0,0 +1,11 @@
+// TODO - Test this if sa_restorer is ever supported in our kernel
+.global __restore
+.type __restore,%function
+.global __restore_rt
+.type __restore_rt,%function
+__restore:
+__restore_rt:
+	r6 = #139				// SYS_rt_sigreturn
+	trap0(#0)
+.size __restore, .-__restore
+.size __restore_rt, .-__restore_rt
diff --git a/src/signal/hexagon/sigsetjmp.s b/src/signal/hexagon/sigsetjmp.s
new file mode 100644
index 00000000..f1aaf165
--- /dev/null
+++ b/src/signal/hexagon/sigsetjmp.s
@@ -0,0 +1,28 @@
+.global sigsetjmp
+.global __sigsetjmp
+.type sigsetjmp,@function
+.type __sigsetjmp,@function
+.balign 4
+sigsetjmp:
+__sigsetjmp:
+	// if savemask is 0 sigsetjmp behaves like setjmp
+	{
+		p0 = cmp.eq(r1, #0)
+		if (p0.new) jump:t ##setjmp
+	}
+	{
+		memw(r0+#64+4+8) = r16  // save r16 in __ss[2]
+		memw(r0+#64)   = r31  // save linkregister in __fl
+		r16 = r0
+	}
+		call ##setjmp
+	{
+		r1 = r0;
+		r0  = r16             // restore r0
+		r31 = memw(r16+#64)   // restore linkregister
+		r16 = memw(r16+#64+4+8) // restore r16 from __ss[2]
+	}
+.hidden __sigsetjmp_tail
+	jump ##__sigsetjmp_tail
+
+.size	sigsetjmp, .-sigsetjmp
diff --git a/src/thread/hexagon/__set_thread_area.s b/src/thread/hexagon/__set_thread_area.s
new file mode 100644
index 00000000..87a991b7
--- /dev/null
+++ b/src/thread/hexagon/__set_thread_area.s
@@ -0,0 +1,7 @@
+.global __set_thread_area
+.type   __set_thread_area,@function
+__set_thread_area:
+	{ ugp = r0
+	  r0 = #0
+	  jumpr r31 }
+.size __set_thread_area, .-__set_thread_area
diff --git a/src/thread/hexagon/__unmapself.s b/src/thread/hexagon/__unmapself.s
new file mode 100644
index 00000000..c47dce21
--- /dev/null
+++ b/src/thread/hexagon/__unmapself.s
@@ -0,0 +1,11 @@
+#include <syscall.h>
+
+.global __unmapself
+.type   __unmapself,%function
+__unmapself:
+	r6 = #215			// SYS_munmap
+	trap0(#1)
+	r6 = #93			// SYS_exit
+	trap0(#1)
+	jumpr r31
+.size __unmapself, .-__unmapself
diff --git a/src/thread/hexagon/clone.s b/src/thread/hexagon/clone.s
new file mode 100644
index 00000000..42aab67a
--- /dev/null
+++ b/src/thread/hexagon/clone.s
@@ -0,0 +1,37 @@
+// __clone(func, stack, flags, arg, ptid, tls, ctid)
+//         r0,   r1,    r2,    r3,  r4,   r5,  stack
+
+// tid = syscall(SYS_clone, flags, stack, ptid, ctid, tls)
+//               r6,        r0,    r1,    r2,   r3,   r4
+// if (tid != 0) return
+// func(arg)
+// syscall(SYS_exit)
+
+.text
+.global __clone
+.type   __clone,%function
+__clone:
+	allocframe(#8)
+	// Save pointers for later
+	{ r11 = r0
+	  r10 = r3 }
+
+	// Set up syscall args - The stack must be 8 byte aligned.
+	{ r0 = r2
+	  r1 = and(r1, ##0xfffffff8)
+	  r2 = r4 }
+	{
+	  r3 = memw(r30+#8)
+	  r4 = r5 }
+	r6 = #220			// SYS_clone
+	trap0(#1)
+
+	p0 = cmp.eq(r0, #0)
+	if (!p0) dealloc_return
+
+	{ r0 = r10
+	  callr r11 }
+
+	r6 = #93			// SYS_exit
+	trap0(#1)
+.size __clone, .-__clone
diff --git a/src/thread/hexagon/syscall_cp.s b/src/thread/hexagon/syscall_cp.s
new file mode 100644
index 00000000..50383cad
--- /dev/null
+++ b/src/thread/hexagon/syscall_cp.s
@@ -0,0 +1,35 @@
+// __syscall_cp_asm(&self->cancel, nr,  u, v, w, x, y,    z)
+//                  r0             r1  r2 r3 r4 r5  stack stack
+
+// syscall(nr,  u, v, w, x, y, z)
+//         r6  r0 r1 r2 r3 r4 r5
+
+.text
+.global __cp_begin
+.hidden __cp_begin
+.global __cp_end
+.hidden __cp_end
+.global __cp_cancel
+.hidden __cp_cancel
+.hidden __cancel
+.global __syscall_cp_asm
+.hidden __syscall_cp_asm
+.type __syscall_cp_asm,%function
+__syscall_cp_asm:
+__cp_begin:
+	r0 = memw(r0+#0)
+	{
+	  p0 = cmp.eq(r0, #0); if (!p0.new) jump:nt __cancel
+	}
+	{ r6 = r1
+	  r1:0 = combine(r3, r2)
+	  r3:2 = combine(r5, r4) }
+	{ r4 = memw(r29+#0)
+	  r5 = memw(r29+#4) }
+	trap0(#1)
+__cp_end:
+	jumpr r31
+.size __syscall_cp_asm, .-__syscall_cp_asm
+__cp_cancel:
+        jump __cancel
+.size __cp_cancel, .-__cp_cancel

^ permalink raw reply	[flat|nested] 43+ messages in thread

end of thread, other threads:[~2021-03-09 20:26 UTC | newest]

Thread overview: 43+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-15 13:19 [musl] Hexagon DSP support sidneym
2020-04-15 16:30 ` Rich Felker
2020-04-15 17:50   ` sidneym
2020-04-15 18:06     ` Szabolcs Nagy
2020-04-15 18:22       ` sidneym
2020-04-16  9:36         ` Szabolcs Nagy
2020-04-16 15:34           ` Rich Felker
2020-04-16 16:26             ` sidneym
2020-04-16 16:34               ` 'Rich Felker'
2020-04-15 18:26       ` Rich Felker
2020-04-15 19:12         ` sidneym
2020-04-15 19:29           ` 'Rich Felker'
2020-04-30 22:44             ` sidneym
2020-04-30 23:51               ` Rich Felker
2020-05-05 23:37                 ` sidneym
2020-05-06  0:59                   ` Rich Felker
2020-06-18 16:37                     ` sidneym
2020-06-18 21:42                       ` Szabolcs Nagy
2020-06-19 21:58                         ` sidneym
2020-06-19 22:46                           ` Rich Felker
2020-06-20  0:03                             ` [musl] strtok Robert Skopalík
2020-06-20  0:15                               ` Rich Felker
2020-06-20  0:36                                 ` Robert Skopalík
2020-06-20  0:46                                 ` Robert Skopalík
2020-06-20  1:44                                   ` Rich Felker
2020-06-20  7:07                                 ` Patrick Oppenlander
2020-06-20 13:00                                   ` Robert Skopalík
2020-06-22  0:57                                     ` Bery Saidi
2020-06-20  2:29                             ` [musl] Hexagon DSP support sidneym
2020-06-20  3:20                               ` Rich Felker
2020-07-20 21:26                                 ` sidneym
2020-07-23 21:56                                   ` Szabolcs Nagy
2020-07-24 17:49                                     ` sidneym
2020-09-16 20:49                                     ` sidneym
2020-09-17  1:32                                       ` 'Rich Felker'
2020-09-17 22:31                                         ` sidneym
2020-09-18  1:08                                           ` Rich Felker
2020-09-18  8:10                                             ` Szabolcs Nagy
2020-09-20 13:12                                             ` sidneym
2020-09-20 17:17                                               ` 'Rich Felker'
2020-09-21 14:09                                                 ` sidneym
2020-04-15 18:55 ` Fangrui Song
2021-03-09 20:25 sidneym

Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/musl/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).