summaryrefslogtreecommitdiff
path: root/sysdeps/i386
diff options
context:
space:
mode:
authorThomas Schwinge <thomas@codesourcery.com>2013-09-01 19:29:18 +0200
committerThomas Schwinge <thomas@codesourcery.com>2013-09-01 19:29:18 +0200
commitcbb58c37bb81d176f106a4de3c7f3b02dee2ff66 (patch)
treec746d229279f84aac0fe3afe537813fb281f7f78 /sysdeps/i386
parentffeaf5a2df0d177a7780fd7c6f5e7595caba766a (diff)
parentd5860b5273bc00632c65b43cb931d3238db0ab57 (diff)
Merge branch 'baseline' into refs/top-bases/tschwinge/Roger_Whittaker
Conflicts: sysdeps/mach/hurd/i386/init-first.c sysdeps/unix/sysv/linux/ldsodefs.h
Diffstat (limited to 'sysdeps/i386')
-rw-r--r--sysdeps/i386/__longjmp.S6
-rw-r--r--sysdeps/i386/bsd-_setjmp.S6
-rw-r--r--sysdeps/i386/bsd-setjmp.S6
-rw-r--r--sysdeps/i386/dl-machine.h6
-rw-r--r--sysdeps/i386/dl-procinfo.h2
-rw-r--r--sysdeps/i386/fpu/Makefile3
-rw-r--r--sysdeps/i386/fpu/fenv_private.h173
-rw-r--r--sysdeps/i386/fpu/fraiseexcpt.c2
-rw-r--r--sysdeps/i386/fpu/libm-test-ulps1152
-rw-r--r--sysdeps/i386/i686/multiarch/memcmp-sse4.S2
-rw-r--r--sysdeps/i386/i686/multiarch/memset-sse2-rep.S2
-rw-r--r--sysdeps/i386/i686/multiarch/memset-sse2.S2
-rw-r--r--sysdeps/i386/i686/multiarch/strcasecmp.S7
-rw-r--r--sysdeps/i386/i686/multiarch/strcat-sse2.S2
-rw-r--r--sysdeps/i386/i686/multiarch/strcmp-sse4.S16
-rw-r--r--sysdeps/i386/i686/multiarch/strcmp-ssse3.S16
-rw-r--r--sysdeps/i386/i686/multiarch/strcmp.S4
-rw-r--r--sysdeps/i386/i686/multiarch/strcpy-sse2.S6
-rw-r--r--sysdeps/i386/i686/multiarch/strncase.S7
-rw-r--r--sysdeps/i386/setjmp.S6
-rw-r--r--sysdeps/i386/stpncpy.S2
-rw-r--r--sysdeps/i386/strpbrk.S2
22 files changed, 711 insertions, 719 deletions
diff --git a/sysdeps/i386/__longjmp.S b/sysdeps/i386/__longjmp.S
index 30a4013557..a0e7f41e3d 100644
--- a/sysdeps/i386/__longjmp.S
+++ b/sysdeps/i386/__longjmp.S
@@ -40,7 +40,7 @@ ENTRY (__longjmp)
cfi_offset(%esi, JB_SI*4)
cfi_offset(%edi, JB_DI*4)
cfi_offset(%ebp, JB_BP*4)
- /* Restore registers. */
+ /* Restore registers. */
movl (JB_BX*4)(%eax), %ebx
movl (JB_SI*4)(%eax), %esi
movl (JB_DI*4)(%eax), %edi
@@ -59,7 +59,7 @@ ENTRY (__longjmp)
/* Save the return address now. */
movl (JB_PC*4)(%ecx), %edx
LIBC_PROBE (longjmp, 3, 4@%ecx, -4@%eax, 4@%edx)
- /* Restore registers. */
+ /* Restore registers. */
movl (JB_BX*4)(%ecx), %ebx
movl (JB_SI*4)(%ecx), %esi
movl (JB_DI*4)(%ecx), %edi
@@ -68,5 +68,5 @@ ENTRY (__longjmp)
LIBC_PROBE (longjmp_target, 3, 4@%ecx, -4@%ecx, 4@%edx)
#endif
/* Jump to saved PC. */
- jmp *%edx
+ jmp *%edx
END (__longjmp)
diff --git a/sysdeps/i386/bsd-_setjmp.S b/sysdeps/i386/bsd-_setjmp.S
index 54483fea56..5c35d76383 100644
--- a/sysdeps/i386/bsd-_setjmp.S
+++ b/sysdeps/i386/bsd-_setjmp.S
@@ -33,7 +33,7 @@ ENTRY (_setjmp)
xorl %eax, %eax
movl JMPBUF(%esp), %edx
- /* Save registers. */
+ /* Save registers. */
movl %ebx, (JB_BX*4)(%edx)
movl %esi, (JB_SI*4)(%edx)
movl %edi, (JB_DI*4)(%edx)
@@ -41,13 +41,13 @@ ENTRY (_setjmp)
#ifdef PTR_MANGLE
PTR_MANGLE (%ecx)
#endif
- movl %ecx, (JB_SP*4)(%edx)
+ movl %ecx, (JB_SP*4)(%edx)
movl 0(%esp), %ecx /* Save PC we are returning to now. */
LIBC_PROBE (setjmp, 3, 4@%edx, -4@$0, 4@%ecx)
#ifdef PTR_MANGLE
PTR_MANGLE (%ecx)
#endif
- movl %ecx, (JB_PC*4)(%edx)
+ movl %ecx, (JB_PC*4)(%edx)
movl %ebp, (JB_BP*4)(%edx) /* Save caller's frame pointer. */
movl %eax, JB_SIZE(%edx) /* No signal mask set. */
diff --git a/sysdeps/i386/bsd-setjmp.S b/sysdeps/i386/bsd-setjmp.S
index b6daa8c036..803d48ccd6 100644
--- a/sysdeps/i386/bsd-setjmp.S
+++ b/sysdeps/i386/bsd-setjmp.S
@@ -35,7 +35,7 @@ ENTRY (setjmp)
movl JMPBUF(%esp), %eax
- /* Save registers. */
+ /* Save registers. */
movl %ebx, (JB_BX*4)(%eax)
movl %esi, (JB_SI*4)(%eax)
movl %edi, (JB_DI*4)(%eax)
@@ -43,13 +43,13 @@ ENTRY (setjmp)
#ifdef PTR_MANGLE
PTR_MANGLE (%ecx)
#endif
- movl %ecx, (JB_SP*4)(%eax)
+ movl %ecx, (JB_SP*4)(%eax)
movl 0(%esp), %ecx /* Save PC we are returning to now. */
LIBC_PROBE (setjmp, 3, 4@%eax, -4@$1, 4@%ecx)
#ifdef PTR_MANGLE
PTR_MANGLE (%ecx)
#endif
- movl %ecx, (JB_PC*4)(%eax)
+ movl %ecx, (JB_PC*4)(%eax)
movl %ebp, (JB_BP*4)(%eax) /* Save caller's frame pointer. */
/* Call __sigjmp_save. */
diff --git a/sysdeps/i386/dl-machine.h b/sysdeps/i386/dl-machine.h
index 0b4c46736d..b6fc8051e5 100644
--- a/sysdeps/i386/dl-machine.h
+++ b/sysdeps/i386/dl-machine.h
@@ -464,8 +464,7 @@ elf_machine_rel (struct link_map *map, const Elf32_Rel *reloc,
strtab = (const char *) D_PTR (map, l_info[DT_STRTAB]);
_dl_error_printf ("\
%s: Symbol `%s' has different size in shared object, consider re-linking\n",
- rtld_progname ?: "<program name unknown>",
- strtab + refsym->st_name);
+ RTLD_PROGNAME, strtab + refsym->st_name);
}
memcpy (reloc_addr_arg, (void *) value,
MIN (sym->st_size, refsym->st_size));
@@ -610,8 +609,7 @@ elf_machine_rela (struct link_map *map, const Elf32_Rela *reloc,
strtab = (const char *) D_PTR (map, l_info[DT_STRTAB]);
_dl_error_printf ("\
%s: Symbol `%s' has different size in shared object, consider re-linking\n",
- rtld_progname ?: "<program name unknown>",
- strtab + refsym->st_name);
+ RTLD_PROGNAME, strtab + refsym->st_name);
}
memcpy (reloc_addr_arg, (void *) value,
MIN (sym->st_size, refsym->st_size));
diff --git a/sysdeps/i386/dl-procinfo.h b/sysdeps/i386/dl-procinfo.h
index 883fa7f0ab..233a3257e3 100644
--- a/sysdeps/i386/dl-procinfo.h
+++ b/sysdeps/i386/dl-procinfo.h
@@ -61,7 +61,7 @@ enum
};
/* We cannot provide a general printing function. */
-#define _dl_procinfo(word) -1
+#define _dl_procinfo(type, word) -1
static inline const char *
__attribute__ ((unused))
diff --git a/sysdeps/i386/fpu/Makefile b/sysdeps/i386/fpu/Makefile
deleted file mode 100644
index 1309b64c13..0000000000
--- a/sysdeps/i386/fpu/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-ifeq ($(subdir),math)
-$(objpfx)libm.so: $(elfobjdir)/ld.so
-endif
diff --git a/sysdeps/i386/fpu/fenv_private.h b/sysdeps/i386/fpu/fenv_private.h
index 1f8336cf96..3998387c57 100644
--- a/sysdeps/i386/fpu/fenv_private.h
+++ b/sysdeps/i386/fpu/fenv_private.h
@@ -322,6 +322,179 @@ libc_feresetround_387 (fenv_t *e)
# define libc_feholdsetround_53bit libc_feholdsetround_387_53bit
#endif
+/* We have support for rounding mode context. */
+#define HAVE_RM_CTX 1
+
+static __always_inline void
+libc_feholdexcept_setround_sse_ctx (struct rm_ctx *ctx, int r)
+{
+ unsigned int mxcsr, new_mxcsr;
+ asm (STMXCSR " %0" : "=m" (*&mxcsr));
+ new_mxcsr = ((mxcsr | 0x1f80) & ~0x603f) | (r << 3);
+
+ ctx->env.__mxcsr = mxcsr;
+ if (__glibc_unlikely (mxcsr != new_mxcsr))
+ {
+ asm volatile (LDMXCSR " %0" : : "m" (*&new_mxcsr));
+ ctx->updated_status = true;
+ }
+ else
+ ctx->updated_status = false;
+}
+
+/* Unconditional since we want to overwrite any exceptions that occurred in the
+ context. This is also why all fehold* functions unconditionally write into
+ ctx->env. */
+static __always_inline void
+libc_fesetenv_sse_ctx (struct rm_ctx *ctx)
+{
+ libc_fesetenv_sse (&ctx->env);
+}
+
+static __always_inline void
+libc_feupdateenv_sse_ctx (struct rm_ctx *ctx)
+{
+ if (__glibc_unlikely (ctx->updated_status))
+ libc_feupdateenv_test_sse (&ctx->env, 0);
+}
+
+static __always_inline void
+libc_feholdexcept_setround_387_prec_ctx (struct rm_ctx *ctx, int r)
+{
+ libc_feholdexcept_387 (&ctx->env);
+
+ fpu_control_t cw = ctx->env.__control_word;
+ fpu_control_t old_cw = cw;
+ cw &= ~(_FPU_RC_ZERO | _FPU_EXTENDED);
+ cw |= r | 0x3f;
+
+ if (__glibc_unlikely (old_cw != cw))
+ {
+ _FPU_SETCW (cw);
+ ctx->updated_status = true;
+ }
+ else
+ ctx->updated_status = false;
+}
+
+static __always_inline void
+libc_feholdexcept_setround_387_ctx (struct rm_ctx *ctx, int r)
+{
+ libc_feholdexcept_setround_387_prec_ctx (ctx, r | _FPU_EXTENDED);
+}
+
+static __always_inline void
+libc_feholdexcept_setround_387_53bit_ctx (struct rm_ctx *ctx, int r)
+{
+ libc_feholdexcept_setround_387_prec_ctx (ctx, r | _FPU_DOUBLE);
+}
+
+static __always_inline void
+libc_feholdsetround_387_prec_ctx (struct rm_ctx *ctx, int r)
+{
+ fpu_control_t cw, new_cw;
+
+ _FPU_GETCW (cw);
+ new_cw = cw;
+ new_cw &= ~(_FPU_RC_ZERO | _FPU_EXTENDED);
+ new_cw |= r;
+
+ ctx->env.__control_word = cw;
+ if (__glibc_unlikely (new_cw != cw))
+ {
+ _FPU_SETCW (new_cw);
+ ctx->updated_status = true;
+ }
+ else
+ ctx->updated_status = false;
+}
+
+static __always_inline void
+libc_feholdsetround_387_ctx (struct rm_ctx *ctx, int r)
+{
+ libc_feholdsetround_387_prec_ctx (ctx, r | _FPU_EXTENDED);
+}
+
+static __always_inline void
+libc_feholdsetround_387_53bit_ctx (struct rm_ctx *ctx, int r)
+{
+ libc_feholdsetround_387_prec_ctx (ctx, r | _FPU_DOUBLE);
+}
+
+static __always_inline void
+libc_feholdsetround_sse_ctx (struct rm_ctx *ctx, int r)
+{
+ unsigned int mxcsr, new_mxcsr;
+
+ asm (STMXCSR " %0" : "=m" (*&mxcsr));
+ new_mxcsr = (mxcsr & ~0x6000) | (r << 3);
+
+ ctx->env.__mxcsr = mxcsr;
+ if (__glibc_unlikely (new_mxcsr != mxcsr))
+ {
+ asm volatile (LDMXCSR " %0" : : "m" (*&new_mxcsr));
+ ctx->updated_status = true;
+ }
+ else
+ ctx->updated_status = false;
+}
+
+static __always_inline void
+libc_feresetround_sse_ctx (struct rm_ctx *ctx)
+{
+ if (__glibc_unlikely (ctx->updated_status))
+ libc_feresetround_sse (&ctx->env);
+}
+
+static __always_inline void
+libc_feresetround_387_ctx (struct rm_ctx *ctx)
+{
+ if (__glibc_unlikely (ctx->updated_status))
+ _FPU_SETCW (ctx->env.__control_word);
+}
+
+static __always_inline void
+libc_feupdateenv_387_ctx (struct rm_ctx *ctx)
+{
+ if (__glibc_unlikely (ctx->updated_status))
+ libc_feupdateenv_test_387 (&ctx->env, 0);
+}
+
+#ifdef __SSE_MATH__
+# define libc_feholdexcept_setroundf_ctx libc_feholdexcept_setround_sse_ctx
+# define libc_fesetenvf_ctx libc_fesetenv_sse_ctx
+# define libc_feupdateenvf_ctx libc_feupdateenv_sse_ctx
+# define libc_feholdsetroundf_ctx libc_feholdsetround_sse_ctx
+# define libc_feresetroundf_ctx libc_feresetround_sse_ctx
+#else
+# define libc_feholdexcept_setroundf_ctx libc_feholdexcept_setround_387_ctx
+# define libc_feupdateenvf_ctx libc_feupdateenv_387_ctx
+# define libc_feholdsetroundf_ctx libc_feholdsetround_387_ctx
+# define libc_feresetroundf_ctx libc_feresetround_387_ctx
+#endif /* __SSE_MATH__ */
+
+#ifdef __SSE2_MATH__
+# define libc_feholdexcept_setround_ctx libc_feholdexcept_setround_sse_ctx
+# define libc_fesetenv_ctx libc_fesetenv_sse_ctx
+# define libc_feupdateenv_ctx libc_feupdateenv_sse_ctx
+# define libc_feholdsetround_ctx libc_feholdsetround_sse_ctx
+# define libc_feresetround_ctx libc_feresetround_sse_ctx
+#else
+# define libc_feholdexcept_setround_ctx libc_feholdexcept_setround_387_ctx
+# define libc_feupdateenv_ctx libc_feupdateenv_387_ctx
+# define libc_feresetround_ctx libc_feresetround_387_ctx
+#endif /* __SSE2_MATH__ */
+
+#define libc_feholdexcept_setroundl_ctx libc_feholdexcept_setround_387_ctx
+#define libc_feupdateenvl_ctx libc_feupdateenv_387_ctx
+#define libc_feholdsetroundl_ctx libc_feholdsetround_387_ctx
+#define libc_feresetroundl_ctx libc_feresetround_387_ctx
+
+#ifndef __SSE2_MATH__
+# define libc_feholdsetround_53bit_ctx libc_feholdsetround_387_53bit_ctx
+# define libc_feresetround_53bit_ctx libc_feresetround_387_ctx
+#endif
+
#undef __mxcsr
#endif /* FENV_PRIVATE_H */
diff --git a/sysdeps/i386/fpu/fraiseexcpt.c b/sysdeps/i386/fpu/fraiseexcpt.c
index 141681d93f..c359e5e5a5 100644
--- a/sysdeps/i386/fpu/fraiseexcpt.c
+++ b/sysdeps/i386/fpu/fraiseexcpt.c
@@ -31,7 +31,7 @@ __feraiseexcept (int excepts)
/* First: invalid exception. */
if ((FE_INVALID & excepts) != 0)
{
- /* One example of a invalid operation is 0.0 / 0.0. */
+ /* One example of an invalid operation is 0.0 / 0.0. */
double d;
__asm__ __volatile__ ("fldz; fdiv %%st, %%st(0); fwait" : "=t" (d));
(void) &d;
diff --git a/sysdeps/i386/fpu/libm-test-ulps b/sysdeps/i386/fpu/libm-test-ulps
index aff617c353..530dbd7402 100644
--- a/sysdeps/i386/fpu/libm-test-ulps
+++ b/sysdeps/i386/fpu/libm-test-ulps
@@ -76,91 +76,27 @@ Test "acos_upward (0.5)":
ildouble: 1
ldouble: 1
-# asin
-Test "asin (-0.5)":
-ildouble: 1
-ldouble: 1
-Test "asin (-0x0.ffffffff8p0)":
-ildouble: 1
-ldouble: 1
-Test "asin (-0x0.ffffffffffffffffp0)":
-ildouble: 1
-ldouble: 1
-Test "asin (-0x0.ffffffffffffp0)":
-ildouble: 1
-ldouble: 1
-Test "asin (-0x0.ffffffp0)":
-ildouble: 1
-ldouble: 1
-Test "asin (-1.0)":
-ildouble: 1
-ldouble: 1
-Test "asin (0.5)":
-ildouble: 1
-ldouble: 1
-Test "asin (0.75)":
-ildouble: 1
-ldouble: 1
-Test "asin (0x0.ffffffff8p0)":
-ildouble: 1
-ldouble: 1
-Test "asin (0x0.ffffffffffffffffp0)":
-ildouble: 1
-ldouble: 1
-Test "asin (0x0.ffffffffffffp0)":
-ildouble: 1
-ldouble: 1
-Test "asin (0x0.ffffffp0)":
-ildouble: 1
-ldouble: 1
-Test "asin (1.0)":
-ildouble: 1
-ldouble: 1
-
# asin_downward
-Test "asin_downward (-0.5)":
-ildouble: 1
-ldouble: 1
Test "asin_downward (-1.0)":
double: 1
idouble: 1
-ildouble: 1
-ldouble: 1
Test "asin_downward (0.5)":
double: 1
float: 1
idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
Test "asin_downward (1.0)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
-# asin_tonearest
-Test "asin_tonearest (-0.5)":
-ildouble: 1
-ldouble: 1
-Test "asin_tonearest (-1.0)":
-ildouble: 1
-ldouble: 1
-Test "asin_tonearest (0.5)":
-ildouble: 1
-ldouble: 1
-Test "asin_tonearest (1.0)":
-ildouble: 1
-ldouble: 1
-
# asin_towardzero
Test "asin_towardzero (-0.5)":
double: 1
float: 1
idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
Test "asin_towardzero (-1.0)":
float: 1
ifloat: 1
@@ -171,8 +107,6 @@ double: 1
float: 1
idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
Test "asin_towardzero (1.0)":
float: 1
ifloat: 1
@@ -185,21 +119,14 @@ double: 1
float: 1
idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
Test "asin_upward (-1.0)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "asin_upward (0.5)":
-ildouble: 1
-ldouble: 1
Test "asin_upward (1.0)":
double: 1
idouble: 1
-ildouble: 1
-ldouble: 1
# atanh
Test "atanh (0.75)":
@@ -336,9 +263,13 @@ ldouble: 1
Test "Imaginary part of: cacos (-0x0.fffffffffffff8p0 + 0x1p-52 i)":
double: 1
idouble: 1
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: cacos (-0x0.fffffffffffff8p0 - 0x1p-52 i)":
double: 1
idouble: 1
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: cacos (-0x0.ffffffffffffffffp0 + 0x1.fp-16385 i)":
ildouble: 1
ldouble: 1
@@ -495,6 +426,9 @@ double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "Imaginary part of: cacos (-0x1p-23 + 0x1.000002p0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: cacos (-0x1p-23 - 0.5 i)":
double: 1
float: 1
@@ -505,6 +439,9 @@ double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "Imaginary part of: cacos (-0x1p-23 - 0x1.000002p0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: cacos (-0x1p-52 + 0.5 i)":
double: 1
float: 1
@@ -543,6 +480,9 @@ float: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "Imaginary part of: cacos (-1.0 + 0x1.fp-10 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: cacos (-1.0 + 0x1.fp-30 i)":
ildouble: 1
ldouble: 1
@@ -554,6 +494,9 @@ float: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "Imaginary part of: cacos (-1.0 - 0x1.fp-10 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: cacos (-1.0 - 0x1.fp-30 i)":
ildouble: 1
ldouble: 1
@@ -708,12 +651,16 @@ ldouble: 1
Test "Imaginary part of: cacos (0x0.fffffffffffff8p0 + 0x1p-52 i)":
double: 1
idouble: 1
+ildouble: 1
+ldouble: 1
Test "Real part of: cacos (0x0.fffffffffffff8p0 - 0x1p-52 i)":
ildouble: 1
ldouble: 1
Test "Imaginary part of: cacos (0x0.fffffffffffff8p0 - 0x1p-52 i)":
double: 1
idouble: 1
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: cacos (0x0.ffffffffffffffffp0 + 0x1.fp-16385 i)":
ildouble: 1
ldouble: 1
@@ -872,6 +819,9 @@ idouble: 1
Test "Imaginary part of: cacos (0x1.fp127 + 0x1.fp127 i)":
double: 1
idouble: 1
+Test "Imaginary part of: cacos (0x1.fp16383 + 0x1.fp16383 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: cacos (0x1p-105 + 0.5 i)":
float: 1
ifloat: 1
@@ -894,6 +844,9 @@ double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "Imaginary part of: cacos (0x1p-23 + 0x1.000002p0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: cacos (0x1p-23 - 0.5 i)":
double: 1
float: 1
@@ -904,6 +857,9 @@ double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "Imaginary part of: cacos (0x1p-23 - 0x1.000002p0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: cacos (0x1p-52 + 0.5 i)":
double: 1
float: 1
@@ -949,6 +905,9 @@ idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "Imaginary part of: cacos (1.0 + 0x1.fp-10 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: cacos (1.0 + 0x1.fp-30 i)":
double: 1
idouble: 1
@@ -970,6 +929,9 @@ idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "Imaginary part of: cacos (1.0 - 0x1.fp-10 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: cacos (1.0 - 0x1.fp-30 i)":
double: 1
idouble: 1
@@ -1131,9 +1093,13 @@ ldouble: 1
Test "Real part of: cacosh (-0x0.fffffffffffff8p0 + 0x1p-52 i)":
double: 1
idouble: 1
+ildouble: 1
+ldouble: 1
Test "Real part of: cacosh (-0x0.fffffffffffff8p0 - 0x1p-52 i)":
double: 1
idouble: 1
+ildouble: 1
+ldouble: 1
Test "Real part of: cacosh (-0x0.ffffffffffffffffp0 + 0x1.fp-16385 i)":
ildouble: 1
ldouble: 1
@@ -1290,6 +1256,9 @@ double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "Real part of: cacosh (-0x1p-23 + 0x1.000002p0 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: cacosh (-0x1p-23 - 0.5 i)":
double: 1
float: 1
@@ -1300,6 +1269,9 @@ double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "Real part of: cacosh (-0x1p-23 - 0x1.000002p0 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: cacosh (-0x1p-52 + 0.5 i)":
double: 1
float: 1
@@ -1338,6 +1310,9 @@ ldouble: 1
Test "Imaginary part of: cacosh (-1.0 + 0.5 i)":
float: 1
ifloat: 1
+Test "Real part of: cacosh (-1.0 + 0x1.fp-10 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: cacosh (-1.0 + 0x1.fp-30 i)":
ildouble: 1
ldouble: 1
@@ -1349,6 +1324,9 @@ ldouble: 1
Test "Imaginary part of: cacosh (-1.0 - 0.5 i)":
float: 1
ifloat: 1
+Test "Real part of: cacosh (-1.0 - 0x1.fp-10 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: cacosh (-1.0 - 0x1.fp-30 i)":
ildouble: 1
ldouble: 1
@@ -1500,12 +1478,16 @@ ldouble: 1
Test "Real part of: cacosh (0x0.fffffffffffff8p0 + 0x1p-52 i)":
double: 1
idouble: 1
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: cacosh (0x0.fffffffffffff8p0 + 0x1p-52 i)":
ildouble: 1
ldouble: 1
Test "Real part of: cacosh (0x0.fffffffffffff8p0 - 0x1p-52 i)":
double: 1
idouble: 1
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: cacosh (0x0.fffffffffffff8p0 - 0x1p-52 i)":
ildouble: 1
ldouble: 1
@@ -1667,6 +1649,9 @@ idouble: 1
Test "Real part of: cacosh (0x1.fp127 + 0x1.fp127 i)":
double: 1
idouble: 1
+Test "Real part of: cacosh (0x1.fp16383 + 0x1.fp16383 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: cacosh (0x1p-105 + 0.5 i)":
float: 1
ifloat: 1
@@ -1689,6 +1674,9 @@ double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "Real part of: cacosh (0x1p-23 + 0x1.000002p0 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: cacosh (0x1p-23 - 0.5 i)":
double: 1
float: 1
@@ -1699,6 +1687,9 @@ double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "Real part of: cacosh (0x1p-23 - 0x1.000002p0 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: cacosh (0x1p-52 + 0.5 i)":
double: 1
float: 1
@@ -1737,6 +1728,9 @@ ldouble: 1
Test "Imaginary part of: cacosh (1.0 + 0.5 i)":
float: 1
ifloat: 1
+Test "Real part of: cacosh (1.0 + 0x1.fp-10 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: cacosh (1.0 + 0x1.fp-10 i)":
double: 1
float: 1
@@ -1758,6 +1752,9 @@ ldouble: 1
Test "Imaginary part of: cacosh (1.0 - 0.5 i)":
float: 1
ifloat: 1
+Test "Real part of: cacosh (1.0 - 0x1.fp-10 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: cacosh (1.0 - 0x1.fp-10 i)":
double: 1
float: 1
@@ -1932,9 +1929,13 @@ ldouble: 1
Test "Imaginary part of: casin (-0x0.fffffffffffff8p0 + 0x1p-52 i)":
double: 1
idouble: 1
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (-0x0.fffffffffffff8p0 - 0x1p-52 i)":
double: 1
idouble: 1
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (-0x0.ffffffffffffffffp0 + 0x1.fp-16385 i)":
ildouble: 1
ldouble: 1
@@ -1987,28 +1988,52 @@ double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "Real part of: casin (-0x1.fp-100 + 1.0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (-0x1.fp-100 + 1.0 i)":
double: 1
float: 1
idouble: 1
ifloat: 1
+Test "Real part of: casin (-0x1.fp-100 - 1.0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (-0x1.fp-100 - 1.0 i)":
double: 1
float: 1
idouble: 1
ifloat: 1
+Test "Real part of: casin (-0x1.fp-1000 + 1.0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (-0x1.fp-1000 + 1.0 i)":
double: 1
idouble: 1
+Test "Real part of: casin (-0x1.fp-1000 - 1.0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (-0x1.fp-1000 - 1.0 i)":
double: 1
idouble: 1
+Test "Real part of: casin (-0x1.fp-10000 + 1.0 i)":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casin (-0x1.fp-10000 - 1.0 i)":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casin (-0x1.fp-1025 + 1.0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (-0x1.fp-1025 + 1.0 i)":
double: 1
idouble: 1
Test "Imaginary part of: casin (-0x1.fp-1025 + 1.5 i)":
double: 1
idouble: 1
+Test "Real part of: casin (-0x1.fp-1025 - 1.0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (-0x1.fp-1025 - 1.0 i)":
double: 1
idouble: 1
@@ -2027,6 +2052,9 @@ ldouble: 1
Test "Imaginary part of: casin (-0x1.fp-129 + 0x1p-23 i)":
ildouble: 1
ldouble: 1
+Test "Real part of: casin (-0x1.fp-129 + 1.0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (-0x1.fp-129 + 1.0 i)":
double: 1
float: 1
@@ -2047,6 +2075,9 @@ ldouble: 1
Test "Imaginary part of: casin (-0x1.fp-129 - 0x1p-23 i)":
ildouble: 1
ldouble: 1
+Test "Real part of: casin (-0x1.fp-129 - 1.0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (-0x1.fp-129 - 1.0 i)":
double: 1
float: 1
@@ -2113,6 +2144,9 @@ double: 1
float: 1
idouble: 1
ifloat: 1
+Test "Imaginary part of: casin (-0x1p-23 + 0x1.000002p0 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: casin (-0x1p-23 - 0.5 i)":
double: 1
float: 1
@@ -2133,6 +2167,9 @@ double: 1
float: 1
idouble: 1
ifloat: 1
+Test "Imaginary part of: casin (-0x1p-23 - 0x1.000002p0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (-0x1p-52 + 0.5 i)":
double: 1
float: 1
@@ -2191,6 +2228,9 @@ float: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "Imaginary part of: casin (-1.0 + 0x1.fp-10 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (-1.0 + 0x1.fp-30 i)":
ildouble: 1
ldouble: 1
@@ -2204,6 +2244,9 @@ float: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "Imaginary part of: casin (-1.0 - 0x1.fp-10 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (-1.0 - 0x1.fp-30 i)":
ildouble: 1
ldouble: 1
@@ -2328,9 +2371,13 @@ ldouble: 1
Test "Imaginary part of: casin (0x0.fffffffffffff8p0 + 0x1p-52 i)":
double: 1
idouble: 1
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (0x0.fffffffffffff8p0 - 0x1p-52 i)":
double: 1
idouble: 1
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (0x0.ffffffffffffffffp0 + 0x1.fp-16385 i)":
ildouble: 1
ldouble: 1
@@ -2383,28 +2430,52 @@ double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "Real part of: casin (0x1.fp-100 + 1.0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (0x1.fp-100 + 1.0 i)":
double: 1
float: 1
idouble: 1
ifloat: 1
+Test "Real part of: casin (0x1.fp-100 - 1.0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (0x1.fp-100 - 1.0 i)":
double: 1
float: 1
idouble: 1
ifloat: 1
+Test "Real part of: casin (0x1.fp-1000 + 1.0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (0x1.fp-1000 + 1.0 i)":
double: 1
idouble: 1
+Test "Real part of: casin (0x1.fp-1000 - 1.0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (0x1.fp-1000 - 1.0 i)":
double: 1
idouble: 1
+Test "Real part of: casin (0x1.fp-10000 + 1.0 i)":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casin (0x1.fp-10000 - 1.0 i)":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casin (0x1.fp-1025 + 1.0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (0x1.fp-1025 + 1.0 i)":
double: 1
idouble: 1
Test "Imaginary part of: casin (0x1.fp-1025 + 1.5 i)":
double: 1
idouble: 1
+Test "Real part of: casin (0x1.fp-1025 - 1.0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (0x1.fp-1025 - 1.0 i)":
double: 1
idouble: 1
@@ -2423,6 +2494,9 @@ ldouble: 1
Test "Imaginary part of: casin (0x1.fp-129 + 0x1p-23 i)":
ildouble: 1
ldouble: 1
+Test "Real part of: casin (0x1.fp-129 + 1.0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (0x1.fp-129 + 1.0 i)":
double: 1
float: 1
@@ -2443,6 +2517,9 @@ ldouble: 1
Test "Imaginary part of: casin (0x1.fp-129 - 0x1p-23 i)":
ildouble: 1
ldouble: 1
+Test "Real part of: casin (0x1.fp-129 - 1.0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (0x1.fp-129 - 1.0 i)":
double: 1
float: 1
@@ -2483,6 +2560,9 @@ idouble: 1
Test "Imaginary part of: casin (0x1.fp127 + 0x1.fp127 i)":
double: 1
idouble: 1
+Test "Imaginary part of: casin (0x1.fp16383 + 0x1.fp16383 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (0x1p-105 + 0.5 i)":
float: 1
ifloat: 1
@@ -2515,6 +2595,9 @@ double: 1
float: 1
idouble: 1
ifloat: 1
+Test "Imaginary part of: casin (0x1p-23 + 0x1.000002p0 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: casin (0x1p-23 - 0.5 i)":
double: 1
float: 1
@@ -2535,6 +2618,9 @@ double: 1
float: 1
idouble: 1
ifloat: 1
+Test "Imaginary part of: casin (0x1p-23 - 0x1.000002p0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (0x1p-52 + 0.5 i)":
double: 1
float: 1
@@ -2593,6 +2679,9 @@ float: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "Imaginary part of: casin (1.0 + 0x1.fp-10 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (1.0 + 0x1.fp-30 i)":
ildouble: 1
ldouble: 1
@@ -2606,6 +2695,9 @@ float: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "Imaginary part of: casin (1.0 - 0x1.fp-10 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (1.0 - 0x1.fp-30 i)":
ildouble: 1
ldouble: 1
@@ -2796,6 +2888,9 @@ ldouble: 1
Test "Imaginary part of: casinh (-0x1.000002p0 + 0x1.fp-129 i)":
ildouble: 1
ldouble: 1
+Test "Real part of: casinh (-0x1.000002p0 + 0x1p-23 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casinh (-0x1.000002p0 + 0x1p-23 i)":
double: 1
float: 1
@@ -2810,11 +2905,20 @@ ldouble: 1
Test "Imaginary part of: casinh (-0x1.000002p0 - 0x1.fp-129 i)":
ildouble: 1
ldouble: 1
+Test "Real part of: casinh (-0x1.000002p0 - 0x1p-23 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casinh (-0x1.000002p0 - 0x1p-23 i)":
double: 1
float: 1
idouble: 1
ifloat: 1
+Test "Real part of: casinh (-0x1.fp-10 + 1.0 i)":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (-0x1.fp-10 - 1.0 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (-0x1.fp-1025 + 0.5 i)":
ildouble: 1
ldouble: 1
@@ -2911,6 +3015,8 @@ ldouble: 1
Test "Real part of: casinh (-0x1p-52 + 0x0.fffffffffffff8p0 i)":
double: 1
idouble: 1
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (-0x1p-52 + 0x1.0000000000001p0 i)":
ildouble: 1
ldouble: 1
@@ -2922,6 +3028,8 @@ ldouble: 1
Test "Real part of: casinh (-0x1p-52 - 0x0.fffffffffffff8p0 i)":
double: 1
idouble: 1
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (-0x1p-52 - 0x1.0000000000001p0 i)":
ildouble: 1
ldouble: 1
@@ -2965,17 +3073,32 @@ double: 1
float: 1
idouble: 1
ifloat: 1
+Test "Imaginary part of: casinh (-1.0 + 0x1.fp-100 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (-1.0 + 0x1.fp-1000 i)":
double: 1
idouble: 1
+Test "Imaginary part of: casinh (-1.0 + 0x1.fp-1000 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casinh (-1.0 + 0x1.fp-10000 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (-1.0 + 0x1.fp-1025 i)":
double: 1
idouble: 1
+Test "Imaginary part of: casinh (-1.0 + 0x1.fp-1025 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (-1.0 + 0x1.fp-129 i)":
double: 1
float: 1
idouble: 1
ifloat: 1
+Test "Imaginary part of: casinh (-1.0 + 0x1.fp-129 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (-1.0 + 0x1.fp-30 i)":
double: 1
float: 1
@@ -3014,17 +3137,32 @@ double: 1
float: 1
idouble: 1
ifloat: 1
+Test "Imaginary part of: casinh (-1.0 - 0x1.fp-100 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (-1.0 - 0x1.fp-1000 i)":
double: 1
idouble: 1
+Test "Imaginary part of: casinh (-1.0 - 0x1.fp-1000 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casinh (-1.0 - 0x1.fp-10000 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (-1.0 - 0x1.fp-1025 i)":
double: 1
idouble: 1
+Test "Imaginary part of: casinh (-1.0 - 0x1.fp-1025 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (-1.0 - 0x1.fp-129 i)":
double: 1
float: 1
idouble: 1
ifloat: 1
+Test "Imaginary part of: casinh (-1.0 - 0x1.fp-129 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (-1.0 - 0x1.fp-30 i)":
double: 1
float: 1
@@ -3215,6 +3353,9 @@ ldouble: 1
Test "Imaginary part of: casinh (0x1.000002p0 + 0x1.fp-129 i)":
ildouble: 1
ldouble: 1
+Test "Real part of: casinh (0x1.000002p0 + 0x1p-23 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casinh (0x1.000002p0 + 0x1p-23 i)":
double: 1
float: 1
@@ -3229,11 +3370,20 @@ ldouble: 1
Test "Imaginary part of: casinh (0x1.000002p0 - 0x1.fp-129 i)":
ildouble: 1
ldouble: 1
+Test "Real part of: casinh (0x1.000002p0 - 0x1p-23 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casinh (0x1.000002p0 - 0x1p-23 i)":
double: 1
float: 1
idouble: 1
ifloat: 1
+Test "Real part of: casinh (0x1.fp-10 + 1.0 i)":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (0x1.fp-10 - 1.0 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (0x1.fp-1025 + 0.5 i)":
ildouble: 1
ldouble: 1
@@ -3294,6 +3444,9 @@ idouble: 1
Test "Real part of: casinh (0x1.fp127 + 0x1.fp127 i)":
double: 1
idouble: 1
+Test "Real part of: casinh (0x1.fp16383 + 0x1.fp16383 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (0x1p-23 + 0.0 i)":
ildouble: 1
ldouble: 1
@@ -3336,6 +3489,8 @@ ldouble: 1
Test "Real part of: casinh (0x1p-52 + 0x0.fffffffffffff8p0 i)":
double: 1
idouble: 1
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (0x1p-52 + 0x1.0000000000001p0 i)":
ildouble: 1
ldouble: 1
@@ -3347,6 +3502,8 @@ ldouble: 1
Test "Real part of: casinh (0x1p-52 - 0x0.fffffffffffff8p0 i)":
double: 1
idouble: 1
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (0x1p-52 - 0x1.0000000000001p0 i)":
ildouble: 1
ldouble: 1
@@ -3390,17 +3547,32 @@ double: 1
float: 1
idouble: 1
ifloat: 1
+Test "Imaginary part of: casinh (1.0 + 0x1.fp-100 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (1.0 + 0x1.fp-1000 i)":
double: 1
idouble: 1
+Test "Imaginary part of: casinh (1.0 + 0x1.fp-1000 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casinh (1.0 + 0x1.fp-10000 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (1.0 + 0x1.fp-1025 i)":
double: 1
idouble: 1
+Test "Imaginary part of: casinh (1.0 + 0x1.fp-1025 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (1.0 + 0x1.fp-129 i)":
double: 1
float: 1
idouble: 1
ifloat: 1
+Test "Imaginary part of: casinh (1.0 + 0x1.fp-129 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (1.0 + 0x1.fp-30 i)":
double: 1
float: 1
@@ -3439,17 +3611,32 @@ double: 1
float: 1
idouble: 1
ifloat: 1
+Test "Imaginary part of: casinh (1.0 - 0x1.fp-100 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (1.0 - 0x1.fp-1000 i)":
double: 1
idouble: 1
+Test "Imaginary part of: casinh (1.0 - 0x1.fp-1000 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casinh (1.0 - 0x1.fp-10000 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (1.0 - 0x1.fp-1025 i)":
double: 1
idouble: 1
+Test "Imaginary part of: casinh (1.0 - 0x1.fp-1025 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (1.0 - 0x1.fp-129 i)":
double: 1
float: 1
idouble: 1
ifloat: 1
+Test "Imaginary part of: casinh (1.0 - 0x1.fp-129 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (1.0 - 0x1.fp-30 i)":
double: 1
float: 1
@@ -3494,6 +3681,9 @@ ifloat: 1
Test "Imaginary part of: catan (-0x1.0000000000001p0 + 0x1p-27 i)":
ildouble: 1
ldouble: 1
+Test "Imaginary part of: catan (-0x1.0000000000001p0 - 0x1p-27 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: catan (-0x1.000002p0 - 0x1p-13 i)":
double: 1
idouble: 1
@@ -3527,30 +3717,57 @@ ldouble: 1
Test "Imaginary part of: catan (-0x1p-1022 - 0x0.ffffffffffffffffp0 i)":
ildouble: 1
ldouble: 1
+Test "Imaginary part of: catan (-0x1p-13 + 0x0.ffffffp0 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: catan (-0x1p-13 + 1.0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: catan (-0x1p-16382 + 0x0.ffffffffffffffffp0 i)":
ildouble: 1
ldouble: 1
Test "Imaginary part of: catan (-0x1p-16382 - 0x0.ffffffffffffffffp0 i)":
ildouble: 1
ldouble: 1
+Test "Imaginary part of: catan (-0x1p-27 - 0x0.fffffffffffff8p0 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: catan (-0x1p-27 - 0x1.0000000000001p0 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: catan (-0x1p-27 - 1.0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: catan (-0x1p-33 + 0x0.ffffffffffffffffp0 i)":
ildouble: 1
ldouble: 1
+Test "Imaginary part of: catan (-0x1p-33 + 0x1.0000000000000002p0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: catan (-0x1p-33 - 0x0.ffffffffffffffffp0 i)":
ildouble: 1
ldouble: 1
+Test "Imaginary part of: catan (-0x1p-33 - 0x1.0000000000000002p0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: catan (-0x1p-64 + 1.0 i)":
ildouble: 1
ldouble: 1
Test "Imaginary part of: catan (-0x1p-64 - 1.0 i)":
ildouble: 1
ldouble: 1
+Test "Imaginary part of: catan (-1.0 + 0x1p-27 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: catan (-1.0 + 0x1p-64 i)":
ildouble: 1
ldouble: 1
Test "Imaginary part of: catan (-1.0 - 0x1p-13 i)":
ildouble: 1
ldouble: 1
+Test "Imaginary part of: catan (-1.0 - 0x1p-27 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: catan (-1.0 - 0x1p-64 i)":
ildouble: 1
ldouble: 1
@@ -3573,6 +3790,9 @@ ifloat: 1
Test "Imaginary part of: catan (0x1.0000000000001p0 + 0x1p-27 i)":
ildouble: 1
ldouble: 1
+Test "Imaginary part of: catan (0x1.0000000000001p0 - 0x1p-27 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: catan (0x1.000002p0 - 0x1p-13 i)":
double: 1
idouble: 1
@@ -3606,35 +3826,68 @@ ldouble: 1
Test "Imaginary part of: catan (0x1p-1022 - 0x0.ffffffffffffffffp0 i)":
ildouble: 1
ldouble: 1
+Test "Imaginary part of: catan (0x1p-13 + 0x0.ffffffp0 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: catan (0x1p-13 + 1.0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: catan (0x1p-16382 + 0x0.ffffffffffffffffp0 i)":
ildouble: 1
ldouble: 1
Test "Imaginary part of: catan (0x1p-16382 - 0x0.ffffffffffffffffp0 i)":
ildouble: 1
ldouble: 1
+Test "Imaginary part of: catan (0x1p-27 - 0x0.fffffffffffff8p0 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: catan (0x1p-27 - 0x1.0000000000001p0 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: catan (0x1p-27 - 1.0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: catan (0x1p-33 + 0x0.ffffffffffffffffp0 i)":
ildouble: 1
ldouble: 1
+Test "Imaginary part of: catan (0x1p-33 + 0x1.0000000000000002p0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: catan (0x1p-33 - 0x0.ffffffffffffffffp0 i)":
ildouble: 1
ldouble: 1
+Test "Imaginary part of: catan (0x1p-33 - 0x1.0000000000000002p0 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: catan (0x1p-64 + 1.0 i)":
ildouble: 1
ldouble: 1
Test "Imaginary part of: catan (0x1p-64 - 1.0 i)":
ildouble: 1
ldouble: 1
+Test "Imaginary part of: catan (1.0 + 0x1p-27 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: catan (1.0 + 0x1p-64 i)":
ildouble: 1
ldouble: 1
Test "Imaginary part of: catan (1.0 - 0x1p-13 i)":
ildouble: 1
ldouble: 1
+Test "Imaginary part of: catan (1.0 - 0x1p-27 i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: catan (1.0 - 0x1p-64 i)":
ildouble: 1
ldouble: 1
# catanh
+Test "Real part of: catanh (-0x0.fffffffffffff8p0 + 0x1p-27 i)":
+ildouble: 1
+ldouble: 1
+Test "Real part of: catanh (-0x0.fffffffffffff8p0 - 0x1p-27 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: catanh (-0x0.ffffffffffffffffp0 + 0x1p-1022 i)":
ildouble: 1
ldouble: 1
@@ -3653,6 +3906,18 @@ ldouble: 1
Test "Real part of: catanh (-0x0.ffffffffffffffffp0 - 0x1p-33 i)":
ildouble: 1
ldouble: 1
+Test "Real part of: catanh (-0x1.0000000000000002p0 + 0x1p-33 i)":
+ildouble: 1
+ldouble: 1
+Test "Real part of: catanh (-0x1.0000000000000002p0 - 0x1p-33 i)":
+ildouble: 1
+ldouble: 1
+Test "Real part of: catanh (-0x1.0000000000001p0 + 0x1p-27 i)":
+ildouble: 1
+ldouble: 1
+Test "Real part of: catanh (-0x1.0000000000001p0 - 0x1p-27 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: catanh (-0x1.fp1023 + 0x1.fp1023 i)":
ildouble: 1
ldouble: 1
@@ -3677,6 +3942,18 @@ idouble: 1
Test "Real part of: catanh (-0x1p-13 - 1.0 i)":
ildouble: 1
ldouble: 1
+Test "Real part of: catanh (-0x1p-27 + 0x1.0000000000001p0 i)":
+ildouble: 1
+ldouble: 1
+Test "Real part of: catanh (-0x1p-27 + 1.0 i)":
+ildouble: 1
+ldouble: 1
+Test "Real part of: catanh (-0x1p-27 - 0x1.0000000000001p0 i)":
+ildouble: 1
+ldouble: 1
+Test "Real part of: catanh (-0x1p-27 - 1.0 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: catanh (-0x1p-64 + 1.0 i)":
ildouble: 1
ldouble: 1
@@ -3689,6 +3966,9 @@ ldouble: 1
Test "Real part of: catanh (-1.0 + 0x1p-1020 i)":
ildouble: 1
ldouble: 1
+Test "Real part of: catanh (-1.0 + 0x1p-27 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: catanh (-1.0 + 0x1p-64 i)":
ildouble: 1
ldouble: 1
@@ -3698,16 +3978,15 @@ ldouble: 1
Test "Real part of: catanh (-1.0 - 0x1p-1020 i)":
ildouble: 1
ldouble: 1
-Test "Real part of: catanh (-1.0 - 0x1p-64 i)":
+Test "Real part of: catanh (-1.0 - 0x1p-27 i)":
ildouble: 1
ldouble: 1
-Test "Real part of: catanh (-2 - 3 i)":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
+Test "Real part of: catanh (-1.0 - 0x1p-64 i)":
ildouble: 1
ldouble: 1
+Test "Real part of: catanh (-2 - 3 i)":
+double: 1
+idouble: 1
Test "Real part of: catanh (0.75 + 1.25 i)":
double: 1
idouble: 1
@@ -3731,6 +4010,18 @@ ldouble: 1
Test "Real part of: catanh (0x0.ffffffffffffffffp0 - 0x1p-33 i)":
ildouble: 1
ldouble: 1
+Test "Real part of: catanh (0x0.ffffffp0 + 0x1p-13 i)":
+ildouble: 1
+ldouble: 1
+Test "Real part of: catanh (0x0.ffffffp0 - 0x1p-13 i)":
+ildouble: 1
+ldouble: 1
+Test "Real part of: catanh (0x1.0000000000000002p0 + 0x1p-33 i)":
+ildouble: 1
+ldouble: 1
+Test "Real part of: catanh (0x1.0000000000000002p0 - 0x1p-33 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: catanh (0x1.fp1023 + 0x1.fp1023 i)":
ildouble: 1
ldouble: 1
@@ -3759,12 +4050,18 @@ idouble: 1
Test "Real part of: catanh (0x1p-27 + 0x1.0000000000001p0 i)":
ildouble: 1
ldouble: 1
+Test "Real part of: catanh (0x1p-27 + 1.0 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: catanh (0x1p-27 - 0x0.fffffffffffff8p0 i)":
double: 1
idouble: 1
Test "Real part of: catanh (0x1p-27 - 0x1.0000000000001p0 i)":
ildouble: 1
ldouble: 1
+Test "Real part of: catanh (0x1p-27 - 1.0 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: catanh (0x1p-33 + 0x0.ffffffffffffffffp0 i)":
ildouble: 1
ldouble: 1
@@ -3783,6 +4080,9 @@ ldouble: 1
Test "Real part of: catanh (1.0 + 0x1p-1020 i)":
ildouble: 1
ldouble: 1
+Test "Real part of: catanh (1.0 + 0x1p-13 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: catanh (1.0 + 0x1p-64 i)":
ildouble: 1
ldouble: 1
@@ -3792,6 +4092,9 @@ ldouble: 1
Test "Real part of: catanh (1.0 - 0x1p-1020 i)":
ildouble: 1
ldouble: 1
+Test "Real part of: catanh (1.0 - 0x1p-13 i)":
+ildouble: 1
+ldouble: 1
Test "Real part of: catanh (1.0 - 0x1p-64 i)":
ildouble: 1
ldouble: 1
@@ -3829,14 +4132,9 @@ ifloat: 1
Test "Imaginary part of: ccos (-0.75 - 89.5 i)":
float: 1
ifloat: 1
-Test "Real part of: ccos (-2 - 3 i)":
-float: 1
-ifloat: 1
Test "Imaginary part of: ccos (-2 - 3 i)":
float: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
Test "Real part of: ccos (0.75 + 1.25 i)":
double: 1
float: 1
@@ -3877,9 +4175,7 @@ idouble: 1
# ccosh
Test "Imaginary part of: ccosh (-2 - 3 i)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
@@ -3908,14 +4204,10 @@ Test "Imaginary part of: ccosh (-89.5 - 0.75 i)":
float: 1
ifloat: 1
Test "Real part of: ccosh (0.75 + 1.25 i)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
Test "Imaginary part of: ccosh (0.75 + 1.25 i)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
Test "Imaginary part of: ccosh (1440 + 0x1p-1074 i)":
double: 1
@@ -3949,14 +4241,9 @@ ifloat: 1
Test "Real part of: cexp (-10000 + 0x1p16383 i)":
ildouble: 1
ldouble: 1
-Test "Real part of: cexp (-2.0 - 3.0 i)":
-ildouble: 1
-ldouble: 1
Test "Imaginary part of: cexp (-2.0 - 3.0 i)":
float: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
Test "Real part of: cexp (-95 + 0.75 i)":
double: 1
idouble: 1
@@ -3965,17 +4252,6 @@ ldouble: 1
Test "Imaginary part of: cexp (-95 + 0.75 i)":
double: 1
idouble: 1
-Test "Imaginary part of: cexp (0 + 0x1p65 i)":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cexp (0 - 0x1p65 i)":
-float: 1
-ifloat: 1
-Test "Real part of: cexp (0.75 + 1.25 i)":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
Test "Imaginary part of: cexp (0.75 + 1.25 i)":
ildouble: 1
ldouble: 1
@@ -3986,18 +4262,13 @@ Test "Imaginary part of: cexp (1440 + 0x1p-1074 i)":
double: 1
idouble: 1
Test "Real part of: cexp (50 + 0x1p127 i)":
-double: 2
-idouble: 2
+double: 1
+idouble: 1
Test "Imaginary part of: cexp (50 + 0x1p127 i)":
double: 1
-float: 1
idouble: 1
-ifloat: 1
ildouble: 1
ldouble: 1
-Test "Real part of: cexp (500 + 0x1p1023 i)":
-double: 1
-idouble: 1
Test "Real part of: cexp (709.8125 + 0.75 i)":
double: 1
idouble: 1
@@ -4048,11 +4319,6 @@ ldouble: 1
Test "Real part of: clog (-0x1p-16445 - 0x1.fp+16383 i)":
ildouble: 1
ldouble: 1
-Test "Real part of: clog (0.75 + 1.25 i)":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
Test "Real part of: clog (0x0.ffffffffffffffffp0 + 0x0.ffffffffffffffffp-15000 i)":
ildouble: 1
ldouble: 1
@@ -4065,9 +4331,6 @@ ldouble: 1
Test "Real part of: clog (0x1.000566p0 + 0x1.234p-100 i)":
float: 1
ifloat: 1
-Test "Real part of: clog (0x1.234566p-30 + 1.0 i)":
-ildouble: 1
-ldouble: 1
Test "Real part of: clog (0x1.fffffep+127 + 0x1.fffffep+127 i)":
ildouble: 1
ldouble: 1
@@ -4083,9 +4346,6 @@ ldouble: 1
Test "Real part of: clog (0x1.fp+16383 - 0x1p-16445 i)":
ildouble: 1
ldouble: 1
-Test "Imaginary part of: clog (0x1367a310575591p-54 + 0x3cfcc0a0541f60p-54 i)":
-ildouble: 1
-ldouble: 1
Test "Real part of: clog (0x1p-1074 + 0x1p-1074 i)":
ildouble: 1
ldouble: 1
@@ -4201,8 +4461,6 @@ idouble: 1
Test "Imaginary part of: clog10 (-2 - 3 i)":
double: 1
idouble: 1
-ildouble: 1
-ldouble: 1
Test "Imaginary part of: clog10 (-3 + inf i)":
double: 1
float: 1
@@ -4246,13 +4504,6 @@ double: 1
float: 1
idouble: 1
ifloat: 1
-Test "Real part of: clog10 (0.75 + 1.25 i)":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
Test "Real part of: clog10 (0x0.fffffffffffff8p0 + 0x0.fffffffffffff8p-1000 i)":
ildouble: 1
ldouble: 1
@@ -4306,9 +4557,6 @@ ldouble: 1
Test "Real part of: clog10 (0x1.fp+16383 + 0x1.fp+16383 i)":
ildouble: 1
ldouble: 1
-Test "Real part of: clog10 (0x1.fp+16383 + 0x1p+16383 i)":
-ildouble: 1
-ldouble: 1
Test "Real part of: clog10 (0x1.fp+16383 + 0x1p-16445 i)":
ildouble: 1
ldouble: 1
@@ -4327,8 +4575,6 @@ idouble: 1
Test "Imaginary part of: clog10 (0x1367a310575591p-54 + 0x3cfcc0a0541f60p-54 i)":
double: 1
idouble: 1
-ildouble: 1
-ldouble: 1
Test "Imaginary part of: clog10 (0x164c74eea876p-45 + 0x16f393482f77p-45 i)":
double: 1
idouble: 1
@@ -4512,52 +4758,33 @@ idouble: 1
ifloat: 1
# cos
-Test "cos (0x1p+50)":
-float: 1
-ifloat: 1
Test "cos (M_PI_6l * 2.0)":
double: 1
-float: 1
idouble: 1
-ifloat: 1
Test "cos (M_PI_6l * 4.0)":
double: 2
float: 1
idouble: 2
ifloat: 1
-ildouble: 1
-ldouble: 1
# cos_downward
Test "cos_downward (1)":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
ildouble: 1
ldouble: 1
Test "cos_downward (10)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
Test "cos_downward (2)":
-float: 1
-ifloat: 1
ildouble: 1
ldouble: 1
Test "cos_downward (3)":
-double: 1
-idouble: 1
ildouble: 1
ldouble: 1
Test "cos_downward (4)":
float: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
Test "cos_downward (5)":
float: 1
ifloat: 1
@@ -4567,42 +4794,21 @@ ifloat: 1
ildouble: 1
ldouble: 1
Test "cos_downward (8)":
-float: 1
-ifloat: 1
ildouble: 1
ldouble: 1
Test "cos_downward (9)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
-
-# cos_tonearest
-Test "cos_tonearest (2)":
-float: 1
-ifloat: 1
-Test "cos_tonearest (8)":
-ildouble: 1
-ldouble: 1
-Test "cos_tonearest (9)":
-ildouble: 1
-ldouble: 1
# cos_towardzero
Test "cos_towardzero (1)":
-double: 1
-idouble: 1
ildouble: 1
ldouble: 1
Test "cos_towardzero (10)":
ildouble: 1
ldouble: 1
Test "cos_towardzero (2)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
@@ -4611,9 +4817,6 @@ float: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "cos_towardzero (4)":
-double: 1
-idouble: 1
Test "cos_towardzero (5)":
float: 1
ifloat: 1
@@ -4623,9 +4826,7 @@ ifloat: 1
ildouble: 1
ldouble: 1
Test "cos_towardzero (8)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
@@ -4634,45 +4835,25 @@ ldouble: 1
Test "cos_upward (1)":
float: 1
ifloat: 1
-Test "cos_upward (10)":
-ildouble: 1
-ldouble: 1
Test "cos_upward (2)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
Test "cos_upward (3)":
float: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
Test "cos_upward (4)":
-double: 1
-idouble: 1
ildouble: 1
ldouble: 1
Test "cos_upward (5)":
-double: 1
-idouble: 1
ildouble: 1
ldouble: 1
Test "cos_upward (6)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "cos_upward (7)":
-double: 1
-idouble: 1
Test "cos_upward (8)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
@@ -4729,6 +4910,7 @@ ldouble: 1
# cosh_upward
Test "cosh_upward (22)":
ildouble: 2
+ldouble: 1
Test "cosh_upward (23)":
ildouble: 2
ldouble: 1
@@ -4743,18 +4925,13 @@ float: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "Imaginary part of: cpow (0.75 + 1.25 i, 0.0 + 1.0 i)":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
Test "Real part of: cpow (0.75 + 1.25 i, 0.75 + 1.25 i)":
double: 1
-float: 4
+float: 3
idouble: 1
-ifloat: 4
-ildouble: 6
-ldouble: 6
+ifloat: 3
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: cpow (0.75 + 1.25 i, 0.75 + 1.25 i)":
float: 1
ifloat: 1
@@ -4767,9 +4944,6 @@ idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "Imaginary part of: cpow (0.75 + 1.25 i, 1.0 + 0.0 i)":
-float: 1
-ifloat: 1
Test "Real part of: cpow (0.75 + 1.25 i, 1.0 + 1.0 i)":
double: 2
float: 4
@@ -4791,17 +4965,10 @@ ifloat: 5
ildouble: 1
ldouble: 1
Test "Imaginary part of: cpow (2 + 3 i, 4 + 0 i)":
-float: 2
-ifloat: 2
+float: 1
+ifloat: 1
ildouble: 4
ldouble: 4
-Test "Imaginary part of: cpow (e + 0 i, 0 + 2 * M_PIl i)":
-double: 2
-float: 3
-idouble: 2
-ifloat: 3
-ildouble: 1
-ldouble: 1
# csin
Test "Real part of: csin (-0.75 + 710.5 i)":
@@ -4828,9 +4995,6 @@ ifloat: 1
Test "Imaginary part of: csin (-0.75 - 89.5 i)":
float: 1
ifloat: 1
-Test "Imaginary part of: csin (-2 - 3 i)":
-float: 1
-ifloat: 1
Test "Real part of: csin (0.75 + 1.25 i)":
float: 1
ifloat: 1
@@ -4868,16 +5032,11 @@ double: 1
idouble: 1
# csinh
-Test "Real part of: csinh (-2 - 3 i)":
-double: 1
-idouble: 1
Test "Imaginary part of: csinh (-2 - 3 i)":
double: 1
float: 1
idouble: 1
ifloat: 1
-ildouble: 2
-ldouble: 2
Test "Real part of: csinh (-710.5 + 0.75 i)":
double: 1
idouble: 1
@@ -4903,15 +5062,10 @@ Test "Imaginary part of: csinh (-89.5 - 0.75 i)":
float: 1
ifloat: 1
Test "Real part of: csinh (0.75 + 1.25 i)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "Imaginary part of: csinh (0.75 + 1.25 i)":
-float: 1
-ifloat: 1
Test "Imaginary part of: csinh (1440 + 0x1p-1074 i)":
double: 1
idouble: 1
@@ -4993,20 +5147,11 @@ ifloat: 1
ildouble: 1
ldouble: 1
Test "Imaginary part of: ctan (-2 - 3 i)":
-float: 1
-ifloat: 1
-ildouble: 2
-ldouble: 2
-Test "Real part of: ctan (0.75 + 1.25 i)":
ildouble: 1
ldouble: 1
Test "Imaginary part of: ctan (0.75 + 1.25 i)":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 3
-ldouble: 3
+ildouble: 1
+ldouble: 1
Test "Real part of: ctan (0x1p1023 + 1 i)":
double: 1
idouble: 1
@@ -5015,9 +5160,6 @@ ldouble: 1
Test "Imaginary part of: ctan (0x1p1023 + 1 i)":
ildouble: 1
ldouble: 1
-Test "Real part of: ctan (0x1p127 + 1 i)":
-float: 1
-ifloat: 1
Test "Real part of: ctan (0x3.243f6cp-1 + 0 i)":
float: 1
ifloat: 1
@@ -5044,14 +5186,12 @@ ildouble: 3
ldouble: 3
Test "Real part of: ctan_downward (0x1.921fb6p+0 + 0x1p-149 i)":
double: 1
-float: 1
idouble: 1
-ifloat: 1
ildouble: 3
ldouble: 3
Test "Imaginary part of: ctan_downward (0x1.921fb6p+0 + 0x1p-149 i)":
-float: 3
-ifloat: 3
+float: 2
+ifloat: 2
ildouble: 4
ldouble: 4
@@ -5086,8 +5226,8 @@ ifloat: 1
ildouble: 1
ldouble: 1
Test "Imaginary part of: ctan_towardzero (0x1.921fb6p+0 + 0x1p-149 i)":
-float: 3
-ifloat: 3
+float: 1
+ifloat: 1
ildouble: 4
ldouble: 4
@@ -5107,8 +5247,6 @@ idouble: 1
ildouble: 4
ldouble: 4
Test "Real part of: ctan_upward (0x1.921fb6p+0 + 0x1p-149 i)":
-float: 1
-ifloat: 1
ildouble: 2
ldouble: 2
Test "Imaginary part of: ctan_upward (0x1.921fb6p+0 + 0x1p-149 i)":
@@ -5123,33 +5261,20 @@ ldouble: 1
Test "Real part of: ctanh (-2 - 3 i)":
float: 1
ifloat: 1
-ildouble: 3
-ldouble: 3
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: ctanh (-2 - 3 i)":
-float: 1
-ifloat: 1
ildouble: 1
ldouble: 1
Test "Imaginary part of: ctanh (0 + 0x3.243f6cp-1 i)":
float: 1
ifloat: 1
Test "Imaginary part of: ctanh (0 + pi/4 i)":
-float: 1
-ifloat: 1
ildouble: 1
ldouble: 1
-Test "Real part of: ctanh (0.75 + 1.25 i)":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
Test "Imaginary part of: ctanh (0.75 + 1.25 i)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
Test "Real part of: ctanh (1 + 0x1p1023 i)":
ildouble: 1
ldouble: 1
@@ -5158,9 +5283,6 @@ double: 1
idouble: 1
ildouble: 1
ldouble: 1
-Test "Imaginary part of: ctanh (1 + 0x1p127 i)":
-float: 1
-ifloat: 1
Test "Imaginary part of: ctanh (45 + 1 i)":
ildouble: 1
ldouble: 1
@@ -5180,15 +5302,13 @@ idouble: 1
ildouble: 2
ldouble: 2
Test "Real part of: ctanh_downward (0x1p-149 + 0x1.921fb6p+0 i)":
-float: 3
-ifloat: 3
+float: 2
+ifloat: 2
ildouble: 4
ldouble: 4
Test "Imaginary part of: ctanh_downward (0x1p-149 + 0x1.921fb6p+0 i)":
double: 1
-float: 1
idouble: 1
-ifloat: 1
ildouble: 3
ldouble: 3
Test "Imaginary part of: ctanh_downward (0x1p-16445 + 0x1.921fb54442d1846ap+0 i)":
@@ -5221,8 +5341,8 @@ idouble: 1
ildouble: 1
ldouble: 1
Test "Real part of: ctanh_towardzero (0x1p-149 + 0x1.921fb6p+0 i)":
-float: 3
-ifloat: 3
+float: 1
+ifloat: 1
ildouble: 4
ldouble: 4
Test "Imaginary part of: ctanh_towardzero (0x1p-149 + 0x1.921fb6p+0 i)":
@@ -5248,8 +5368,6 @@ ifloat: 2
ildouble: 1
ldouble: 1
Test "Imaginary part of: ctanh_upward (0x1p-149 + 0x1.921fb6p+0 i)":
-float: 1
-ifloat: 1
ildouble: 2
ldouble: 2
Test "Real part of: ctanh_upward (0x1p-16445 + 0x1.921fb54442d1846ap+0 i)":
@@ -5265,9 +5383,6 @@ double: 1
idouble: 1
# erfc
-Test "erfc (0.75)":
-float: 1
-ifloat: 1
Test "erfc (0x1.f7303cp+1)":
double: 1
idouble: 1
@@ -5291,20 +5406,10 @@ idouble: 1
ildouble: 1
ldouble: 1
-# exp
-Test "exp (0.75)":
-ildouble: 1
-
# exp10
-Test "exp10 (-1)":
+Test "exp10 (0.75)":
ildouble: 1
ldouble: 1
-Test "exp10 (0.75)":
-ildouble: 2
-ldouble: 2
-Test "exp10 (3)":
-ildouble: 8
-ldouble: 8
# exp_downward
Test "exp_downward (1)":
@@ -5355,8 +5460,6 @@ ifloat: 1
Test "expm1 (-45.0)":
ildouble: 1
ldouble: 1
-Test "expm1 (1)":
-ildouble: 1
Test "expm1 (11356.25)":
ildouble: 1
ldouble: 1
@@ -5410,9 +5513,9 @@ ildouble: 2
ldouble: 2
Test "j0 (-4.0)":
double: 1
-float: 2
+float: 1
idouble: 1
-ifloat: 2
+ifloat: 1
ildouble: 2
ldouble: 2
Test "j0 (0x1.d7ce3ap+107)":
@@ -5425,20 +5528,18 @@ Test "j0 (0x1p16382)":
ildouble: 1
ldouble: 1
Test "j0 (10.0)":
-double: 3
+double: 1
float: 1
-idouble: 3
+idouble: 1
ifloat: 1
Test "j0 (2.0)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
Test "j0 (4.0)":
double: 1
-float: 2
+float: 1
idouble: 1
-ifloat: 2
+ifloat: 1
ildouble: 2
ldouble: 2
Test "j0 (8.0)":
@@ -5446,12 +5547,9 @@ float: 1
ifloat: 1
# j1
-Test "j1 (0.75)":
-double: 1
-idouble: 1
Test "j1 (0x1.3ffp+74)":
-float: 2
-ifloat: 2
+float: 1
+ifloat: 1
ildouble: 1
ldouble: 1
Test "j1 (0x1.ff00000000002p+840)":
@@ -5471,44 +5569,35 @@ Test "j1 (2.0)":
double: 1
idouble: 1
Test "j1 (8.0)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
# jn
Test "jn (0, -4.0)":
double: 1
-float: 2
+float: 1
idouble: 1
-ifloat: 2
+ifloat: 1
ildouble: 2
ldouble: 2
Test "jn (0, 10.0)":
-double: 3
+double: 1
float: 1
-idouble: 3
+idouble: 1
ifloat: 1
Test "jn (0, 2.0)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
Test "jn (0, 4.0)":
double: 1
-float: 2
+float: 1
idouble: 1
-ifloat: 2
+ifloat: 1
ildouble: 2
ldouble: 2
Test "jn (0, 8.0)":
float: 1
ifloat: 1
-Test "jn (1, 0.75)":
-double: 1
-idouble: 1
Test "jn (1, 10.0)":
double: 2
float: 1
@@ -5520,12 +5609,8 @@ Test "jn (1, 2.0)":
double: 1
idouble: 1
Test "jn (1, 8.0)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
Test "jn (10, -1.0)":
double: 1
float: 1
@@ -5534,9 +5619,7 @@ ifloat: 1
ildouble: 1
ldouble: 1
Test "jn (10, 0.125)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
Test "jn (10, 0.75)":
float: 1
@@ -5551,15 +5634,13 @@ ifloat: 1
ildouble: 1
ldouble: 1
Test "jn (10, 10.0)":
-double: 5
-float: 2
-idouble: 5
-ifloat: 2
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
ildouble: 2
ldouble: 2
Test "jn (10, 2.0)":
-double: 2
-idouble: 2
ildouble: 1
ldouble: 1
Test "jn (2, 0x1.ffff62p+99)":
@@ -5577,19 +5658,12 @@ ldouble: 1
Test "jn (3, -1.0)":
ildouble: 1
ldouble: 1
-Test "jn (3, 0.75)":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
Test "jn (3, 1.0)":
ildouble: 1
ldouble: 1
Test "jn (3, 10.0)":
-double: 5
-float: 2
-idouble: 5
-ifloat: 2
+float: 1
+ifloat: 1
ildouble: 1
ldouble: 1
Test "jn (3, 2.0)":
@@ -5642,9 +5716,7 @@ idouble: 1
ildouble: 1
ldouble: 1
Test "lgamma (0.7)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
Test "lgamma (1.2)":
double: 1
@@ -5654,11 +5726,6 @@ ifloat: 2
ildouble: 1
ldouble: 1
-# log
-Test "log (e)":
-float: 1
-ifloat: 1
-
# log10
Test "log10 (0.75)":
ildouble: 1
@@ -5683,25 +5750,17 @@ ldouble: 1
Test "pow_downward (1.0625, 1.125)":
double: 1
idouble: 1
-ildouble: 1
-ldouble: 1
Test "pow_downward (1.5, 1.03125)":
float: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
# pow_towardzero
Test "pow_towardzero (1.0625, 1.125)":
double: 1
idouble: 1
-ildouble: 1
-ldouble: 1
Test "pow_towardzero (1.5, 1.03125)":
float: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
# pow_upward
Test "pow_upward (1.0625, 1.125)":
@@ -5715,82 +5774,28 @@ idouble: 1
ildouble: 1
ldouble: 1
-# sin
-Test "sin (-0x1p65)":
-float: 1
-ifloat: 1
-Test "sin (0x1.fffff8p+127)":
-float: 1
-Test "sin (0x1p+127)":
-float: 1
-Test "sin (0x1p65)":
-float: 1
-ifloat: 1
-
# sin_downward
Test "sin_downward (1)":
ildouble: 1
ldouble: 1
-Test "sin_downward (10)":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "sin_downward (2)":
-double: 1
-idouble: 1
Test "sin_downward (3)":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "sin_downward (4)":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "sin_downward (5)":
-double: 1
-idouble: 1
ildouble: 1
ldouble: 1
Test "sin_downward (6)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
Test "sin_downward (7)":
ildouble: 1
ldouble: 1
Test "sin_downward (8)":
-double: 1
-idouble: 1
ildouble: 1
ldouble: 1
Test "sin_downward (9)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
-# sin_tonearest
-Test "sin_tonearest (1)":
-float: 1
-ifloat: 1
-Test "sin_tonearest (10)":
-ildouble: 1
-ldouble: 1
-Test "sin_tonearest (4)":
-ildouble: 1
-ldouble: 1
-Test "sin_tonearest (9)":
-ildouble: 1
-ldouble: 1
-
# sin_towardzero
Test "sin_towardzero (1)":
ildouble: 1
@@ -5798,9 +5803,6 @@ ldouble: 1
Test "sin_towardzero (10)":
float: 1
ifloat: 1
-Test "sin_towardzero (2)":
-double: 1
-idouble: 1
Test "sin_towardzero (3)":
ildouble: 1
ldouble: 1
@@ -5810,30 +5812,21 @@ ifloat: 1
Test "sin_towardzero (5)":
float: 1
ifloat: 1
-Test "sin_towardzero (6)":
-ildouble: 1
-ldouble: 1
Test "sin_towardzero (7)":
ildouble: 1
ldouble: 1
Test "sin_towardzero (8)":
-double: 1
-idouble: 1
ildouble: 1
ldouble: 1
Test "sin_towardzero (9)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
# sin_upward
Test "sin_upward (1)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
Test "sin_upward (10)":
float: 1
@@ -5846,9 +5839,7 @@ ifloat: 1
ildouble: 1
ldouble: 1
Test "sin_upward (3)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
@@ -5866,31 +5857,13 @@ Test "sin_upward (6)":
ildouble: 1
ldouble: 1
Test "sin_upward (7)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
Test "sin_upward (8)":
float: 1
ifloat: 1
-Test "sin_upward (9)":
-float: 1
-ifloat: 1
# sincos
-Test "sincos (-0x1p65) extra output 1":
-float: 1
-ifloat: 1
-Test "sincos (0x1.fffff8p+127) extra output 1":
-float: 1
-Test "sincos (0x1p+127) extra output 1":
-float: 1
-Test "sincos (0x1p+50) extra output 2":
-float: 1
-ifloat: 1
-Test "sincos (0x1p65) extra output 1":
-float: 1
-ifloat: 1
Test "sincos (M_PI_6l*2.0) extra output 1":
double: 1
float: 1
@@ -5900,14 +5873,14 @@ ildouble: 1
ldouble: 1
Test "sincos (M_PI_6l*2.0) extra output 2":
double: 1
-float: 1
idouble: 1
-ifloat: 1
# sinh
Test "sinh (0.75)":
-double: 1
ildouble: 1
+Test "sinh (0x8p-32)":
+ildouble: 1
+ldouble: 1
# sinh_downward
Test "sinh_downward (22)":
@@ -6006,16 +5979,12 @@ Test "tan (1e22)":
ildouble: 1
ldouble: 1
Test "tan (pi/4)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
# tan_downward
Test "tan_downward (1)":
-double: 1
float: 2
-idouble: 1
ifloat: 2
ildouble: 1
ldouble: 1
@@ -6025,31 +5994,20 @@ ifloat: 1
ildouble: 1
ldouble: 1
Test "tan_downward (2)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
Test "tan_downward (3)":
-double: 1
-idouble: 1
ildouble: 1
ldouble: 1
Test "tan_downward (4)":
float: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
Test "tan_downward (5)":
ildouble: 1
ldouble: 1
Test "tan_downward (6)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
-Test "tan_downward (7)":
-double: 1
-idouble: 1
Test "tan_downward (8)":
float: 1
ifloat: 1
@@ -6068,22 +6026,12 @@ float: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "tan_tonearest (6)":
-ildouble: 1
-ldouble: 1
Test "tan_tonearest (8)":
ildouble: 1
ldouble: 1
-Test "tan_tonearest (9)":
-ildouble: 1
-ldouble: 1
# tan_towardzero
Test "tan_towardzero (1)":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
ildouble: 1
ldouble: 1
Test "tan_towardzero (10)":
@@ -6097,34 +6045,18 @@ ldouble: 1
Test "tan_towardzero (3)":
float: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
Test "tan_towardzero (4)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
Test "tan_towardzero (5)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
Test "tan_towardzero (6)":
ildouble: 1
ldouble: 1
-Test "tan_towardzero (7)":
-double: 1
-idouble: 1
-Test "tan_towardzero (8)":
-double: 1
-idouble: 1
-ildouble: 2
-ldouble: 2
Test "tan_towardzero (9)":
-double: 1
-idouble: 1
ildouble: 1
ldouble: 1
@@ -6135,8 +6067,6 @@ ifloat: 1
ildouble: 1
ldouble: 1
Test "tan_upward (10)":
-double: 1
-idouble: 1
ildouble: 1
ldouble: 1
Test "tan_upward (2)":
@@ -6145,45 +6075,25 @@ ldouble: 1
Test "tan_upward (3)":
float: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "tan_upward (4)":
-double: 1
-idouble: 1
Test "tan_upward (5)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
ildouble: 2
ldouble: 2
Test "tan_upward (6)":
ildouble: 1
ldouble: 1
-Test "tan_upward (7)":
-float: 1
-ifloat: 1
+Test "tan_upward (8)":
ildouble: 1
ldouble: 1
-Test "tan_upward (8)":
-double: 1
-idouble: 1
-ildouble: 2
-ldouble: 2
Test "tan_upward (9)":
-double: 1
-idouble: 1
ildouble: 1
ldouble: 1
# tgamma
Test "tgamma (-0.5)":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-ildouble: 1
-ldouble: 1
+double: 1
+idouble: 1
Test "tgamma (-0x0.ffffffffffffffffp0)":
ildouble: 1
ldouble: 1
@@ -6231,8 +6141,8 @@ ldouble: 2
Test "tgamma (-0x1e.00002p0)":
float: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
Test "tgamma (-0x1f4.00000000000002p0)":
ildouble: 3
ldouble: 3
@@ -6741,8 +6651,6 @@ ldouble: 1
Test "tgamma (4)":
float: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
Test "tgamma (4.5)":
double: 1
idouble: 1
@@ -6790,8 +6698,8 @@ float: 1
idouble: 1
ifloat: 1
Test "y0 (0x1.3ffp+74)":
-float: 2
-ifloat: 2
+float: 1
+ifloat: 1
ildouble: 1
ldouble: 1
Test "y0 (0x1.ff00000000002p+840)":
@@ -6823,28 +6731,15 @@ Test "y0 (0x1p16382)":
ildouble: 1
ldouble: 1
Test "y0 (1.0)":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
ildouble: 1
ldouble: 1
-Test "y0 (1.5)":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
Test "y0 (10.0)":
double: 1
float: 1
idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
Test "y0 (8.0)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
@@ -6872,9 +6767,6 @@ idouble: 1
Test "y1 (0x1p16382)":
ildouble: 1
ldouble: 1
-Test "y1 (1.0)":
-double: 1
-idouble: 1
Test "y1 (10.0)":
double: 2
float: 2
@@ -6888,12 +6780,8 @@ ifloat: 2
ildouble: 1
ldouble: 1
Test "y1 (8.0)":
-double: 1
float: 2
-idouble: 1
ifloat: 2
-ildouble: 1
-ldouble: 1
# yn
Test "yn (0, 0.125)":
@@ -6905,37 +6793,21 @@ float: 1
idouble: 1
ifloat: 1
Test "yn (0, 1.0)":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
ildouble: 1
ldouble: 1
-Test "yn (0, 1.5)":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
Test "yn (0, 10.0)":
double: 1
float: 1
idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
Test "yn (0, 8.0)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
Test "yn (1, 0.125)":
ildouble: 1
ldouble: 1
-Test "yn (1, 1.0)":
-double: 1
-idouble: 1
Test "yn (1, 10.0)":
double: 2
float: 2
@@ -6949,47 +6821,35 @@ ifloat: 2
ildouble: 1
ldouble: 1
Test "yn (1, 8.0)":
-double: 1
float: 2
-idouble: 1
ifloat: 2
-ildouble: 1
-ldouble: 1
Test "yn (10, 0.125)":
double: 1
-float: 1
idouble: 1
-ifloat: 1
ildouble: 2
ldouble: 2
Test "yn (10, 0.75)":
-float: 2
-ifloat: 2
+float: 1
+ifloat: 1
ildouble: 4
ldouble: 4
Test "yn (10, 1.0)":
-double: 1
float: 2
-idouble: 1
ifloat: 2
Test "yn (10, 10.0)":
double: 2
-float: 3
+float: 1
idouble: 2
-ifloat: 3
+ifloat: 1
Test "yn (10, 2.0)":
-double: 2
float: 3
-idouble: 2
ifloat: 3
Test "yn (3, 0.125)":
ildouble: 1
ldouble: 1
Test "yn (3, 0.75)":
double: 1
-float: 1
idouble: 1
-ifloat: 1
ildouble: 2
ldouble: 2
Test "yn (3, 10.0)":
@@ -6998,9 +6858,7 @@ float: 1
idouble: 1
ifloat: 1
Test "yn (3, 2.0)":
-double: 1
float: 1
-idouble: 1
ifloat: 1
# Maximal error of functions:
@@ -7030,10 +6888,6 @@ idouble: 1
ildouble: 1
ldouble: 1
-Function: "asin":
-ildouble: 1
-ldouble: 1
-
Function: "asin_downward":
double: 1
float: 1
@@ -7042,10 +6896,6 @@ ifloat: 1
ildouble: 1
ldouble: 1
-Function: "asin_tonearest":
-ildouble: 1
-ldouble: 1
-
Function: "asin_towardzero":
double: 1
float: 1
@@ -7139,9 +6989,9 @@ ildouble: 1
ldouble: 1
Function: Real part of "catanh":
-double: 2
+double: 1
float: 1
-idouble: 2
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
@@ -7181,9 +7031,9 @@ ildouble: 1
ldouble: 1
Function: Real part of "cexp":
-double: 2
+double: 1
float: 1
-idouble: 2
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
@@ -7204,10 +7054,6 @@ ifloat: 1
ildouble: 1
ldouble: 1
-Function: Imaginary part of "clog":
-ildouble: 1
-ldouble: 1
-
Function: Real part of "clog10":
double: 1
float: 1
@@ -7233,31 +7079,19 @@ ildouble: 1
ldouble: 1
Function: "cos_downward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 1
-ldouble: 1
-
-Function: "cos_tonearest":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
Function: "cos_towardzero":
-double: 1
float: 1
-idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
Function: "cos_upward":
-double: 1
float: 1
-idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
@@ -7292,14 +7126,14 @@ double: 2
float: 5
idouble: 2
ifloat: 5
-ildouble: 5
-ldouble: 5
+ildouble: 3
+ldouble: 3
Function: Imaginary part of "cpow":
-double: 2
-float: 3
-idouble: 2
-ifloat: 3
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
ildouble: 4
ldouble: 4
@@ -7330,8 +7164,6 @@ double: 1
float: 1
idouble: 1
ifloat: 1
-ildouble: 2
-ldouble: 2
Function: Real part of "csqrt":
ildouble: 1
@@ -7351,23 +7183,19 @@ ldouble: 2
Function: Imaginary part of "ctan":
double: 1
-float: 1
idouble: 1
-ifloat: 1
ildouble: 1
ldouble: 1
Function: Real part of "ctan_downward":
double: 1
-float: 1
idouble: 1
-ifloat: 1
ildouble: 3
ldouble: 3
Function: Imaginary part of "ctan_downward":
-float: 3
-ifloat: 3
+float: 2
+ifloat: 2
ildouble: 4
ldouble: 4
@@ -7390,14 +7218,12 @@ ildouble: 1
ldouble: 1
Function: Imaginary part of "ctan_towardzero":
-float: 3
-ifloat: 3
+float: 1
+ifloat: 1
ildouble: 4
ldouble: 4
Function: Real part of "ctan_upward":
-float: 1
-ifloat: 1
ildouble: 2
ldouble: 2
@@ -7426,16 +7252,14 @@ ildouble: 2
ldouble: 2
Function: Real part of "ctanh_downward":
-float: 3
-ifloat: 3
+float: 2
+ifloat: 2
ildouble: 4
ldouble: 4
Function: Imaginary part of "ctanh_downward":
double: 1
-float: 1
idouble: 1
-ifloat: 1
ildouble: 3
ldouble: 3
@@ -7450,8 +7274,8 @@ float: 1
ifloat: 1
Function: Real part of "ctanh_towardzero":
-float: 3
-ifloat: 3
+float: 1
+ifloat: 1
ildouble: 4
ldouble: 4
@@ -7472,8 +7296,6 @@ ildouble: 4
ldouble: 4
Function: Imaginary part of "ctanh_upward":
-float: 1
-ifloat: 1
ildouble: 2
ldouble: 2
@@ -7483,15 +7305,13 @@ idouble: 1
Function: "erfc":
double: 1
-float: 1
idouble: 1
-ifloat: 1
ildouble: 1
ldouble: 1
Function: "exp10":
-ildouble: 8
-ldouble: 8
+ildouble: 1
+ldouble: 1
Function: "exp_downward":
double: 1
@@ -7532,25 +7352,25 @@ float: 1
ifloat: 1
Function: "j0":
-double: 3
-float: 2
-idouble: 3
-ifloat: 2
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
ildouble: 2
ldouble: 2
Function: "j1":
double: 2
-float: 2
+float: 1
idouble: 2
-ifloat: 2
+ifloat: 1
ildouble: 1
ldouble: 1
Function: "jn":
-double: 5
+double: 2
float: 4
-idouble: 5
+idouble: 2
ifloat: 4
ildouble: 3
ldouble: 3
@@ -7586,16 +7406,12 @@ double: 1
float: 1
idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
Function: "pow_towardzero":
double: 1
float: 1
idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
Function: "pow_upward":
double: 1
@@ -7605,36 +7421,20 @@ ifloat: 1
ildouble: 1
ldouble: 1
-Function: "sin":
-float: 1
-ifloat: 1
-
Function: "sin_downward":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "sin_tonearest":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
Function: "sin_towardzero":
-double: 1
float: 1
-idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
Function: "sin_upward":
-double: 1
float: 1
-idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
@@ -7648,8 +7448,8 @@ ildouble: 1
ldouble: 1
Function: "sinh":
-double: 1
ildouble: 1
+ldouble: 1
Function: "sinh_downward":
double: 1
@@ -7682,9 +7482,7 @@ ildouble: 1
ldouble: 1
Function: "tan_downward":
-double: 1
float: 2
-idouble: 1
ifloat: 2
ildouble: 1
ldouble: 1
@@ -7696,17 +7494,13 @@ ildouble: 1
ldouble: 1
Function: "tan_towardzero":
-double: 1
float: 1
-idouble: 1
ifloat: 1
-ildouble: 2
-ldouble: 2
+ildouble: 1
+ldouble: 1
Function: "tan_upward":
-double: 1
float: 1
-idouble: 1
ifloat: 1
ildouble: 2
ldouble: 2
@@ -7720,10 +7514,10 @@ ildouble: 4
ldouble: 4
Function: "y0":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
ildouble: 1
ldouble: 1
diff --git a/sysdeps/i386/i686/multiarch/memcmp-sse4.S b/sysdeps/i386/i686/multiarch/memcmp-sse4.S
index 14226f5a84..2984a374cf 100644
--- a/sysdeps/i386/i686/multiarch/memcmp-sse4.S
+++ b/sysdeps/i386/i686/multiarch/memcmp-sse4.S
@@ -58,7 +58,7 @@
/* Get the entry and convert the relative offset to the \
absolute address. */ \
addl (%ebx,INDEX,SCALE), %ebx; \
-/* We loaded the jump table and adjuested EDX/ESI. Go. */ \
+/* We loaded the jump table and adjusted EDX/ESI. Go. */ \
jmp *%ebx
# else
# define JMPTBL(I, B) I
diff --git a/sysdeps/i386/i686/multiarch/memset-sse2-rep.S b/sysdeps/i386/i686/multiarch/memset-sse2-rep.S
index 53a0b3df0e..bcea296a9a 100644
--- a/sysdeps/i386/i686/multiarch/memset-sse2-rep.S
+++ b/sysdeps/i386/i686/multiarch/memset-sse2-rep.S
@@ -62,7 +62,7 @@
absolute address. */ \
add (%ebx,%ecx,4), %ebx; \
add %ecx, %edx; \
- /* We loaded the jump table and adjuested EDX. Go. */ \
+ /* We loaded the jump table and adjusted EDX. Go. */ \
jmp *%ebx
#else
# define ENTRANCE
diff --git a/sysdeps/i386/i686/multiarch/memset-sse2.S b/sysdeps/i386/i686/multiarch/memset-sse2.S
index 2db588446e..36bca84a78 100644
--- a/sysdeps/i386/i686/multiarch/memset-sse2.S
+++ b/sysdeps/i386/i686/multiarch/memset-sse2.S
@@ -62,7 +62,7 @@
absolute address. */ \
add (%ebx,%ecx,4), %ebx; \
add %ecx, %edx; \
- /* We loaded the jump table and adjuested EDX. Go. */ \
+ /* We loaded the jump table and adjusted EDX. Go. */ \
jmp *%ebx
#else
# define ENTRANCE
diff --git a/sysdeps/i386/i686/multiarch/strcasecmp.S b/sysdeps/i386/i686/multiarch/strcasecmp.S
index 3b38214c9b..25de4daf47 100644
--- a/sysdeps/i386/i686/multiarch/strcasecmp.S
+++ b/sysdeps/i386/i686/multiarch/strcasecmp.S
@@ -37,6 +37,8 @@ ENTRY(__strcasecmp)
leal __strcasecmp_ssse3@GOTOFF(%ebx), %eax
testl $bit_SSE4_2, CPUID_OFFSET+index_SSE4_2+__cpu_features@GOTOFF(%ebx)
jz 2f
+ testl $bit_Slow_SSE4_2, CPUID_OFFSET+index_Slow_SSE4_2+__cpu_features@GOTOFF(%ebx)
+ jnz 2f
leal __strcasecmp_sse4_2@GOTOFF(%ebx), %eax
2: popl %ebx
cfi_adjust_cfa_offset (-4)
@@ -54,12 +56,11 @@ ENTRY(__strcasecmp)
testl $bit_SSSE3, CPUID_OFFSET+index_SSSE3+__cpu_features
jz 2f
leal __strcasecmp_ssse3, %eax
-#if 0
- // XXX Temporarily
testl $bit_SSE4_2, CPUID_OFFSET+index_SSE4_2+__cpu_features
jz 2f
+ testl $bit_Slow_SSE4_2, CPUID_OFFSET+index_Slow_SSE4_2+__cpu_features
+ jnz 2f
leal __strcasecmp_sse4_2, %eax
-#endif
2: ret
END(__strcasecmp)
#endif
diff --git a/sysdeps/i386/i686/multiarch/strcat-sse2.S b/sysdeps/i386/i686/multiarch/strcat-sse2.S
index 72a1acad42..62d60cdb78 100644
--- a/sysdeps/i386/i686/multiarch/strcat-sse2.S
+++ b/sysdeps/i386/i686/multiarch/strcat-sse2.S
@@ -49,7 +49,7 @@
/* Get the entry and convert the relative offset to the \
absolute address. */ \
addl (%ecx,INDEX,SCALE), %ecx; \
- /* We loaded the jump table and adjuested ECX. Go. */ \
+ /* We loaded the jump table and adjusted ECX. Go. */ \
jmp *%ecx
# else
# define JMPTBL(I, B) I
diff --git a/sysdeps/i386/i686/multiarch/strcmp-sse4.S b/sysdeps/i386/i686/multiarch/strcmp-sse4.S
index 7177205d0f..355ed4e674 100644
--- a/sysdeps/i386/i686/multiarch/strcmp-sse4.S
+++ b/sysdeps/i386/i686/multiarch/strcmp-sse4.S
@@ -53,7 +53,7 @@
# define STR1 8
# endif
# define STR2 STR1+4
-# define LOCALE 12 /* Loaded before the adjustement. */
+# define LOCALE 12 /* Loaded before the adjustment. */
# ifdef PIC
# define RETURN POP (%edi); POP (%ebx); ret; \
.p2align 4; CFI_PUSH (%ebx); CFI_PUSH (%edi)
@@ -73,7 +73,7 @@
# endif
# define STR2 STR1+4
# define CNT STR2+4
-# define LOCALE 16 /* Loaded before the adjustement. */
+# define LOCALE 16 /* Loaded before the adjustment. */
# ifdef PIC
# define RETURN POP (%edi); POP (REM); POP (%ebx); ret; \
.p2align 4; \
@@ -121,8 +121,14 @@ ENTRY (__strcasecmp_sse4_2)
movl (%eax), %eax
# endif
testl $1, LOCALE_DATA_VALUES+_NL_CTYPE_NONASCII_CASE*SIZEOF_VALUES(%eax)
+# ifdef PIC
+ je L(ascii)
+ POP (%ebx)
+ jmp __strcasecmp_nonascii
+# else
jne __strcasecmp_nonascii
jmp L(ascii)
+# endif
END (__strcasecmp_sse4_2)
#endif
@@ -152,8 +158,14 @@ ENTRY (__strncasecmp_sse4_2)
movl (%eax), %eax
# endif
testl $1, LOCALE_DATA_VALUES+_NL_CTYPE_NONASCII_CASE*SIZEOF_VALUES(%eax)
+# ifdef PIC
+ je L(ascii)
+ POP (%ebx)
+ jmp __strncasecmp_nonascii
+# else
jne __strncasecmp_nonascii
jmp L(ascii)
+# endif
END (__strncasecmp_sse4_2)
#endif
diff --git a/sysdeps/i386/i686/multiarch/strcmp-ssse3.S b/sysdeps/i386/i686/multiarch/strcmp-ssse3.S
index f2bc204273..3eb304bca0 100644
--- a/sysdeps/i386/i686/multiarch/strcmp-ssse3.S
+++ b/sysdeps/i386/i686/multiarch/strcmp-ssse3.S
@@ -61,7 +61,7 @@
# define STR1 4
# endif
# define STR2 STR1+4
-# define LOCALE 12 /* Loaded before the adjustement. */
+# define LOCALE 12 /* Loaded before the adjustment. */
# ifdef PIC
# define RETURN POP (%ebx); ret; .p2align 4; CFI_PUSH (%ebx)
# else
@@ -82,7 +82,7 @@
# endif
# define STR2 STR1+4
# define CNT STR2+4
-# define LOCALE 16 /* Loaded before the adjustement. */
+# define LOCALE 16 /* Loaded before the adjustment. */
# ifdef PIC
# define RETURN POP (REM); POP (%ebx); ret; \
.p2align 4; CFI_PUSH (%ebx); CFI_PUSH (REM)
@@ -138,8 +138,14 @@ ENTRY (__strcasecmp_ssse3)
movl (%eax), %eax
# endif
testl $1, LOCALE_DATA_VALUES+_NL_CTYPE_NONASCII_CASE*SIZEOF_VALUES(%eax)
+# ifdef PIC
+ je L(ascii)
+ POP (%ebx)
+ jmp __strcasecmp_nonascii
+# else
jne __strcasecmp_nonascii
jmp L(ascii)
+# endif
END (__strcasecmp_ssse3)
#endif
@@ -169,8 +175,14 @@ ENTRY (__strncasecmp_ssse3)
movl (%eax), %eax
# endif
testl $1, LOCALE_DATA_VALUES+_NL_CTYPE_NONASCII_CASE*SIZEOF_VALUES(%eax)
+# ifdef PIC
+ je L(ascii)
+ POP (%ebx)
+ jmp __strncasecmp_nonascii
+# else
jne __strncasecmp_nonascii
jmp L(ascii)
+# endif
END (__strncasecmp_ssse3)
#endif
diff --git a/sysdeps/i386/i686/multiarch/strcmp.S b/sysdeps/i386/i686/multiarch/strcmp.S
index 7dc2cefabe..41dd3b3f1c 100644
--- a/sysdeps/i386/i686/multiarch/strcmp.S
+++ b/sysdeps/i386/i686/multiarch/strcmp.S
@@ -68,6 +68,8 @@ ENTRY(STRCMP)
leal __STRCMP_SSSE3@GOTOFF(%ebx), %eax
testl $bit_SSE4_2, CPUID_OFFSET+index_SSE4_2+__cpu_features@GOTOFF(%ebx)
jz 2f
+ testl $bit_Slow_SSE4_2, CPUID_OFFSET+index_Slow_SSE4_2+__cpu_features@GOTOFF(%ebx)
+ jnz 2f
leal __STRCMP_SSE4_2@GOTOFF(%ebx), %eax
2: popl %ebx
cfi_adjust_cfa_offset (-4)
@@ -87,6 +89,8 @@ ENTRY(STRCMP)
leal __STRCMP_SSSE3, %eax
testl $bit_SSE4_2, CPUID_OFFSET+index_SSE4_2+__cpu_features
jz 2f
+ testl $bit_Slow_SSE4_2, CPUID_OFFSET+index_Slow_SSE4_2+__cpu_features
+ jnz 2f
leal __STRCMP_SSE4_2, %eax
2: ret
END(STRCMP)
diff --git a/sysdeps/i386/i686/multiarch/strcpy-sse2.S b/sysdeps/i386/i686/multiarch/strcpy-sse2.S
index 07db134fa6..d942ac2852 100644
--- a/sysdeps/i386/i686/multiarch/strcpy-sse2.S
+++ b/sysdeps/i386/i686/multiarch/strcpy-sse2.S
@@ -64,7 +64,7 @@
/* Get the entry and convert the relative offset to the \
absolute address. */ \
addl (%ecx,INDEX,SCALE), %ecx; \
- /* We loaded the jump table and adjuested ECX. Go. */ \
+ /* We loaded the jump table and adjusted ECX. Go. */ \
jmp *%ecx
# else
# define JMPTBL(I, B) I
@@ -128,7 +128,7 @@ ENTRY (STRCPY)
sub %ecx, %edi
-/* If source adress alignment != destination adress alignment */
+/* If source address alignment != destination address alignment */
.p2align 4
L(Unalign16Both):
mov $16, %ecx
@@ -271,7 +271,7 @@ L(Unaligned64Leave):
lea 49(%edi, %edx), %edi
jmp L(StrncpyFillTailWithZero)
-/* If source adress alignment == destination adress alignment */
+/* If source address alignment == destination address alignment */
L(SourceStringAlignmentZero):
pxor %xmm0, %xmm0
diff --git a/sysdeps/i386/i686/multiarch/strncase.S b/sysdeps/i386/i686/multiarch/strncase.S
index 51c6d721c9..de97e1b1a2 100644
--- a/sysdeps/i386/i686/multiarch/strncase.S
+++ b/sysdeps/i386/i686/multiarch/strncase.S
@@ -37,6 +37,8 @@ ENTRY(__strncasecmp)
leal __strncasecmp_ssse3@GOTOFF(%ebx), %eax
testl $bit_SSE4_2, CPUID_OFFSET+index_SSE4_2+__cpu_features@GOTOFF(%ebx)
jz 2f
+ testl $bit_Slow_SSE4_2, CPUID_OFFSET+index_Slow_SSE4_2+__cpu_features@GOTOFF(%ebx)
+ jnz 2f
leal __strncasecmp_sse4_2@GOTOFF(%ebx), %eax
2: popl %ebx
cfi_adjust_cfa_offset (-4)
@@ -54,12 +56,11 @@ ENTRY(__strncasecmp)
testl $bit_SSSE3, CPUID_OFFSET+index_SSSE3+__cpu_features
jz 2f
leal __strncasecmp_ssse3, %eax
-#if 0
- // XXX Temporarily
testl $bit_SSE4_2, CPUID_OFFSET+index_SSE4_2+__cpu_features
jz 2f
+ testl $bit_Slow_SSE4_2, CPUID_OFFSET+index_Slow_SSE4_2+__cpu_features
+ jnz 2f
leal __strncasecmp_sse4_2, %eax
-#endif
2: ret
END(__strncasecmp)
#endif
diff --git a/sysdeps/i386/setjmp.S b/sysdeps/i386/setjmp.S
index 039f6c4fa3..14d36c7e40 100644
--- a/sysdeps/i386/setjmp.S
+++ b/sysdeps/i386/setjmp.S
@@ -29,7 +29,7 @@ ENTRY (__sigsetjmp)
movl JMPBUF(%esp), %eax
- /* Save registers. */
+ /* Save registers. */
movl %ebx, (JB_BX*4)(%eax)
movl %esi, (JB_SI*4)(%eax)
movl %edi, (JB_DI*4)(%eax)
@@ -37,13 +37,13 @@ ENTRY (__sigsetjmp)
#ifdef PTR_MANGLE
PTR_MANGLE (%ecx)
#endif
- movl %ecx, (JB_SP*4)(%eax)
+ movl %ecx, (JB_SP*4)(%eax)
movl 0(%esp), %ecx /* Save PC we are returning to now. */
LIBC_PROBE (setjmp, 3, 4@%eax, -4@SIGMSK(%esp), 4@%ecx)
#ifdef PTR_MANGLE
PTR_MANGLE (%ecx)
#endif
- movl %ecx, (JB_PC*4)(%eax)
+ movl %ecx, (JB_PC*4)(%eax)
movl %ebp, (JB_BP*4)(%eax) /* Save caller's frame pointer. */
#if defined NOT_IN_libc && defined IS_IN_rtld
diff --git a/sysdeps/i386/stpncpy.S b/sysdeps/i386/stpncpy.S
index 11882738d9..b23e8208a0 100644
--- a/sysdeps/i386/stpncpy.S
+++ b/sysdeps/i386/stpncpy.S
@@ -1,4 +1,4 @@
-/* copy no more then N bytes from SRC to DEST, returning the address of
+/* copy no more than N bytes from SRC to DEST, returning the address of
the terminating '\0' in DEST.
For Intel 80x86, x>=3.
Copyright (C) 1994-2013 Free Software Foundation, Inc.
diff --git a/sysdeps/i386/strpbrk.S b/sysdeps/i386/strpbrk.S
index bbc0cbeb6f..246ae27c53 100644
--- a/sysdeps/i386/strpbrk.S
+++ b/sysdeps/i386/strpbrk.S
@@ -205,7 +205,7 @@ L(1): leal -4(%edx), %eax /* prepare loop */
1. a character in the stopset was found
and
2. the end of the string was found
- But as a sign that the chracter is in the stopset we store its
+ But as a sign that the character is in the stopset we store its
value in the table. But the value of NUL is NUL so the loop
terminates for NUL in every case. */