diff options
author | Andreas Schwab <schwab@linux-m68k.org> | 2014-02-10 20:05:01 +0100 |
---|---|---|
committer | Andreas Schwab <schwab@linux-m68k.org> | 2014-02-10 20:22:40 +0100 |
commit | 73588a7223bec40d652fd4c75f1cb4772c5d2612 (patch) | |
tree | dfc1f1965e78e62e611199d91c482d1b76ff109d /ports/sysdeps | |
parent | 87569616d27a2c742f87b5dbcac2f2e3437fd874 (diff) | |
download | glibc-73588a7223bec40d652fd4c75f1cb4772c5d2612.tar.gz |
Move m68k from ports to libc
Diffstat (limited to 'ports/sysdeps')
399 files changed, 0 insertions, 29748 deletions
diff --git a/ports/sysdeps/m68k/Implies b/ports/sysdeps/m68k/Implies deleted file mode 100644 index beaba937de..0000000000 --- a/ports/sysdeps/m68k/Implies +++ /dev/null @@ -1,4 +0,0 @@ -wordsize-32 -# 68k uses IEEE 754 floating point. -ieee754/dbl-64 -ieee754/flt-32 diff --git a/ports/sysdeps/m68k/Makefile b/ports/sysdeps/m68k/Makefile deleted file mode 100644 index 58ebd5ec4a..0000000000 --- a/ports/sysdeps/m68k/Makefile +++ /dev/null @@ -1,40 +0,0 @@ -# Copyright (C) 1993-2014 Free Software Foundation, Inc. -# This file is part of the GNU C Library. - -# The GNU C Library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. - -# The GNU C Library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. - -# You should have received a copy of the GNU Lesser General Public -# License along with the GNU C Library. If not, see -# <http://www.gnu.org/licenses/>. - -# The mpn functions need this. All existing 68k ports use MIT syntax. If -# a new port wants to use Motorola or Sony syntax, it can redefine this -# variable. -ifndef m68k-syntax-flag -m68k-syntax-flag = -DMIT_SYNTAX -endif - -asm-CPPFLAGS += $(m68k-syntax-flag) - -pic-ccflag = -fpic - -ifeq ($(subdir),setjmp) -# Make sure setjmp.c is compiled with a frame pointer -CFLAGS-setjmp.c := -fno-omit-frame-pointer -endif - -ifeq ($(subdir),debug) -CFLAGS-backtrace.c += -funwind-tables -endif - -ifeq ($(subdir),elf) -CFLAGS-rtld.c += -Wno-uninitialized -Wno-unused -endif diff --git a/ports/sysdeps/m68k/Versions b/ports/sysdeps/m68k/Versions deleted file mode 100644 index f450291a9b..0000000000 --- a/ports/sysdeps/m68k/Versions +++ /dev/null @@ -1,13 +0,0 @@ -libc { - GLIBC_2.0 { - # Functions from libgcc. - __divdi3; __moddi3; __udivdi3; __umoddi3; - } -} -libm { - GLIBC_2.1 { - # A generic bug got this omitted from other configurations' version - # sets, but we always had it. - exp2l; - } -} diff --git a/ports/sysdeps/m68k/__longjmp.c b/ports/sysdeps/m68k/__longjmp.c deleted file mode 100644 index e1f8c8b9f8..0000000000 --- a/ports/sysdeps/m68k/__longjmp.c +++ /dev/null @@ -1,61 +0,0 @@ -/* Copyright (C) 1991-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <setjmp.h> -#include <stdlib.h> - -/* Jump to the position specified by ENV, causing the - setjmp call there to return VAL, or 1 if VAL is 0. */ -void -__longjmp (__jmp_buf env, int val) -{ - /* This restores the FP and SP that setjmp's caller had, - and puts the return address into A0 and VAL into D0. */ - -#ifdef CHECK_SP - CHECK_SP (env[0].__sp); -#endif - -#if defined(__HAVE_68881__) || defined(__HAVE_FPU__) - /* Restore the floating-point registers. */ - asm volatile("fmovem%.x %0, %/fp0-%/fp7" : - /* No outputs. */ : "g" (env[0].__fpregs[0])); -#elif defined (__mcffpu__) - asm volatile("fmovem %0, %/fp0-%/fp7" : - /* No outputs. */ : "m" (env[0].__fpregs[0])); -#endif - - /* Put VAL in D0. */ - asm volatile("move%.l %0, %/d0" : /* No outputs. */ : - "g" (val == 0 ? 1 : val) : "d0"); - - asm volatile(/* Restore the data and address registers. */ - "movem%.l %0, %/d1-%/d7/%/a0-%/a7\n" - /* Return to setjmp's caller. */ -#ifdef __motorola__ - "jmp (%/a0)" -#else - "jmp %/a0@" -#endif - : /* No outputs. */ : "g" (env[0].__dregs[0]) - /* We don't bother with the clobbers, - because this code always jumps out anyway. */ - ); - - /* Avoid `volatile function does return' warnings. */ - for (;;); -} diff --git a/ports/sysdeps/m68k/abort-instr.h b/ports/sysdeps/m68k/abort-instr.h deleted file mode 100644 index b43c9efe1d..0000000000 --- a/ports/sysdeps/m68k/abort-instr.h +++ /dev/null @@ -1,2 +0,0 @@ -/* An instruction which should crash any program is `illegal'. */ -#define ABORT_INSTRUCTION asm ("illegal") diff --git a/ports/sysdeps/m68k/asm-syntax.h b/ports/sysdeps/m68k/asm-syntax.h deleted file mode 100644 index e162836ba9..0000000000 --- a/ports/sysdeps/m68k/asm-syntax.h +++ /dev/null @@ -1,82 +0,0 @@ -/* Definitions for 68k syntax variations. - Copyright (C) 1992-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. Its master source is NOT part of - the C library, however. The master source lives in the GNU MP Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -/* For ELF we need to prefix register names and local labels. */ -#define R_(r) %##r -#define R(r) R_(r) -#define L(label) .##label - -#ifdef MIT_SYNTAX -#define MEM(base)R(base)@ -#define MEM_DISP(base,displacement)R(base)@(displacement) -#define MEM_INDX(base,idx,size_suffix)R(base)@(R(idx):size_suffix) -#define MEM_INDX1(base,idx,size_suffix,scale)R(base)@(R(idx):size_suffix:scale) -#define MEM_PREDEC(memory_base)R(memory_base)@- -#define MEM_POSTINC(memory_base)R(memory_base)@+ -#define TEXT .text -/* Use variable sized opcodes. */ -#define bcc jcc -#define bcs jcs -#define bls jls -#define beq jeq -#define bne jne -#define bra jra -#endif - -#ifdef MOTOROLA_SYNTAX -#define MEM(base)(R(base)) -#define MEM_DISP(base,displacement)(displacement,R(base)) -#define MEM_PREDEC(memory_base)-(R(memory_base)) -#define MEM_POSTINC(memory_base)(R(memory_base))+ -#define MEM_INDX_(base,idx,size_suffix)(R(base),R(idx##.##size_suffix)) -#define MEM_INDX(base,idx,size_suffix)MEM_INDX_(base,idx,size_suffix) -#define MEM_INDX1_(base,idx,size_suffix,scale)(R(base),R(idx##.##size_suffix*scale)) -#define MEM_INDX1(base,idx,size_suffix,scale)MEM_INDX1_(base,idx,size_suffix,scale) -#define TEXT .text -#define bcc jbcc -#define bcs jbcs -#define bls jbls -#define beq jbeq -#define bne jbne -#define bra jbra -#define movel move.l -#define moveml movem.l -#define moveql moveq.l -#define cmpl cmp.l -#define orl or.l -#define clrl clr.l -#define andw and.w -#define eorw eor.w -#define andl and.l -#define lsrl lsr.l -#define lsll lsl.l -#define roxrl roxr.l -#define roxll roxl.l -#define addl add.l -#define addxl addx.l -#define addql addq.l -#define subl sub.l -#define subxl subx.l -#define subqw subq.w -#define subql subq.l -#define negl neg.l -#define mulul mulu.l -#define tstw tst.w -#define tstl tst.l -#endif diff --git a/ports/sysdeps/m68k/backtrace.c b/ports/sysdeps/m68k/backtrace.c deleted file mode 100644 index b346420442..0000000000 --- a/ports/sysdeps/m68k/backtrace.c +++ /dev/null @@ -1,159 +0,0 @@ -/* Return backtrace of current program state. - Copyright (C) 2013-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#include <bits/libc-lock.h> -#include <dlfcn.h> -#include <execinfo.h> -#include <stdlib.h> -#include <unwind.h> - -struct trace_arg -{ - void **array; - int cnt, size; - void *lastfp, *lastsp; -}; - -#ifdef SHARED -static _Unwind_Reason_Code (*unwind_backtrace) (_Unwind_Trace_Fn, void *); -static _Unwind_Ptr (*unwind_getip) (struct _Unwind_Context *); -static _Unwind_Ptr (*unwind_getcfa) (struct _Unwind_Context *); -static _Unwind_Ptr (*unwind_getgr) (struct _Unwind_Context *, int); -static void *libgcc_handle; - -static void -init (void) -{ - libgcc_handle = __libc_dlopen ("libgcc_s.so.2"); - - if (libgcc_handle == NULL) - return; - - unwind_backtrace = __libc_dlsym (libgcc_handle, "_Unwind_Backtrace"); - unwind_getip = __libc_dlsym (libgcc_handle, "_Unwind_GetIP"); - unwind_getcfa = __libc_dlsym (libgcc_handle, "_Unwind_GetCFA"); - unwind_getgr = __libc_dlsym (libgcc_handle, "_Unwind_GetGR"); - if (unwind_getip == NULL || unwind_getgr == NULL || unwind_getcfa == NULL) - { - unwind_backtrace = NULL; - __libc_dlclose (libgcc_handle); - libgcc_handle = NULL; - } -} -#else -# define unwind_backtrace _Unwind_Backtrace -# define unwind_getip _Unwind_GetIP -# define unwind_getcfa _Unwind_GetCFA -# define unwind_getgr _Unwind_GetGR -#endif - -static _Unwind_Reason_Code -backtrace_helper (struct _Unwind_Context *ctx, void *a) -{ - struct trace_arg *arg = a; - - /* We are first called with address in the __backtrace function. - Skip it. */ - if (arg->cnt != -1) - arg->array[arg->cnt] = (void *) unwind_getip (ctx); - if (++arg->cnt == arg->size) - return _URC_END_OF_STACK; - - /* %fp is DWARF2 register 14 on M68K. */ - arg->lastfp = (void *) unwind_getgr (ctx, 14); - arg->lastsp = (void *) unwind_getcfa (ctx); - return _URC_NO_REASON; -} - - -/* This is a global variable set at program start time. It marks the - highest used stack address. */ -extern void *__libc_stack_end; - - -/* This is the stack layout we see with every stack frame - if not compiled without frame pointer. - - +-----------------+ +-----------------+ - %fp -> | %fp last frame--------> | %fp last frame--->... - | | | | - | return address | | return address | - +-----------------+ +-----------------+ - - First try as far to get as far as possible using - _Unwind_Backtrace which handles -fomit-frame-pointer - as well, but requires .eh_frame info. Then fall back to - walking the stack manually. */ - -struct layout -{ - struct layout *fp; - void *ret; -}; - - -int -__backtrace (void **array, int size) -{ - struct trace_arg arg = { .array = array, .size = size, .cnt = -1 }; -#ifdef SHARED - __libc_once_define (static, once); - - __libc_once (once, init); - if (unwind_backtrace == NULL) - return 0; -#endif - - if (size >= 1) - unwind_backtrace (backtrace_helper, &arg); - - if (arg.cnt > 1 && arg.array[arg.cnt - 1] == NULL) - --arg.cnt; - else if (arg.cnt < size) - { - struct layout *fp = (struct layout *) arg.lastfp; - - while (arg.cnt < size) - { - /* Check for out of range. */ - if ((void *) fp < arg.lastsp || (void *) fp > __libc_stack_end - || ((long) fp & 1)) - break; - - array[arg.cnt++] = fp->ret; - fp = fp->fp; - } - } - return arg.cnt != -1 ? arg.cnt : 0; -} -weak_alias (__backtrace, backtrace) -libc_hidden_def (__backtrace) - - -#ifdef SHARED -/* Free all resources if necessary. */ -libc_freeres_fn (free_mem) -{ - unwind_backtrace = NULL; - if (libgcc_handle != NULL) - { - __libc_dlclose (libgcc_handle); - libgcc_handle = NULL; - } -} -#endif diff --git a/ports/sysdeps/m68k/bits/byteswap.h b/ports/sysdeps/m68k/bits/byteswap.h deleted file mode 100644 index 9e7fd87615..0000000000 --- a/ports/sysdeps/m68k/bits/byteswap.h +++ /dev/null @@ -1,88 +0,0 @@ -/* Macros to swap the order of bytes in integer values. m68k version. - Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#if !defined _BYTESWAP_H && !defined _NETINET_IN_H && !defined _ENDIAN_H -# error "Never use <bits/byteswap.h> directly; include <byteswap.h> instead." -#endif - -#ifndef _BITS_BYTESWAP_H -#define _BITS_BYTESWAP_H 1 - -/* Swap bytes in 16 bit value. We don't provide an assembler version - because GCC is smart enough to generate optimal assembler output, and - this allows for better cse. */ -#define __bswap_constant_16(x) \ - ((((x) >> 8) & 0xffu) | (((x) & 0xffu) << 8)) - -static __inline unsigned short int -__bswap_16 (unsigned short int __bsx) -{ - return __bswap_constant_16 (__bsx); -} - -/* Swap bytes in 32 bit value. */ -#define __bswap_constant_32(x) \ - ((((x) & 0xff000000u) >> 24) | (((x) & 0x00ff0000u) >> 8) | \ - (((x) & 0x0000ff00u) << 8) | (((x) & 0x000000ffu) << 24)) - -#if !defined(__mcoldfire__) -static __inline unsigned int -__bswap_32 (unsigned int __bsx) -{ - if (__builtin_constant_p (__bsx)) - return __bswap_constant_32 (__bsx); - __asm__ __volatile__ ("ror%.w %#8, %0;" - "swap %0;" - "ror%.w %#8, %0" - : "+d" (__bsx)); - return __bsx; -} -#else -static __inline unsigned int -__bswap_32 (unsigned int __bsx) -{ - return __bswap_constant_32 (__bsx); -} -#endif - -#if defined __GNUC__ && __GNUC__ >= 2 -/* Swap bytes in 64 bit value. */ -# define __bswap_constant_64(x) \ - __extension__ \ - ((((x) & 0xff00000000000000ull) >> 56) \ - | (((x) & 0x00ff000000000000ull) >> 40) \ - | (((x) & 0x0000ff0000000000ull) >> 24) \ - | (((x) & 0x000000ff00000000ull) >> 8) \ - | (((x) & 0x00000000ff000000ull) << 8) \ - | (((x) & 0x0000000000ff0000ull) << 24) \ - | (((x) & 0x000000000000ff00ull) << 40) \ - | (((x) & 0x00000000000000ffull) << 56)) - -/* Swap bytes in 64 bit value. */ -__extension__ -static __inline unsigned long long -__bswap_64 (unsigned long long __bsx) -{ - if (__builtin_constant_p (__bsx)) - return __bswap_constant_64 (__bsx); - return (__bswap_32 (__bsx >> 32) - | ((unsigned long long) __bswap_32 (__bsx) << 32)); -} -#endif - -#endif /* _BITS_BYTESWAP_H */ diff --git a/ports/sysdeps/m68k/bits/endian.h b/ports/sysdeps/m68k/bits/endian.h deleted file mode 100644 index bf4ecb60a4..0000000000 --- a/ports/sysdeps/m68k/bits/endian.h +++ /dev/null @@ -1,7 +0,0 @@ -/* m68k is big-endian. */ - -#ifndef _ENDIAN_H -# error "Never use <bits/endian.h> directly; include <endian.h> instead." -#endif - -#define __BYTE_ORDER __BIG_ENDIAN diff --git a/ports/sysdeps/m68k/bits/link.h b/ports/sysdeps/m68k/bits/link.h deleted file mode 100644 index f8f32e8865..0000000000 --- a/ports/sysdeps/m68k/bits/link.h +++ /dev/null @@ -1,57 +0,0 @@ -/* Copyright (C) 2005-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef _LINK_H -# error "Never include <bits/link.h> directly; use <link.h> instead." -#endif - - -/* Registers for entry into PLT on M68K. */ -typedef struct La_m68k_regs -{ - uint32_t lr_a0; - uint32_t lr_a1; - uint32_t lr_sp; -} La_m68k_regs; - -/* Return values for calls from PLT on M68K. */ -typedef struct La_m68k_retval -{ - uint32_t lrv_d0; - uint32_t lrv_d1; - uint32_t lrv_a0; - long double lrv_fp0; -} La_m68k_retval; - - -__BEGIN_DECLS - -extern Elf32_Addr la_m68k_gnu_pltenter (Elf32_Sym *__sym, unsigned int __ndx, - uintptr_t *__refcook, - uintptr_t *__defcook, - La_m68k_regs *__regs, - unsigned int *__flags, - const char *__symname, - long int *__framesizep); -extern unsigned int la_m68k_gnu_pltexit (Elf32_Sym *__sym, unsigned int __ndx, - uintptr_t *__refcook, - uintptr_t *__defcook, - const La_m68k_regs *__inregs, - La_m68k_retval *__outregs, - const char *__symname); - -__END_DECLS diff --git a/ports/sysdeps/m68k/bits/setjmp.h b/ports/sysdeps/m68k/bits/setjmp.h deleted file mode 100644 index 5588eb4a05..0000000000 --- a/ports/sysdeps/m68k/bits/setjmp.h +++ /dev/null @@ -1,46 +0,0 @@ -/* Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -/* Define the machine-dependent type `jmp_buf'. m68k version. */ -#ifndef _BITS_SETJMP_H -#define _BITS_SETJMP_H 1 - -#if !defined _SETJMP_H && !defined _PTHREAD_H -# error "Never include <bits/setjmp.h> directly; use <setjmp.h> instead." -#endif - -typedef struct __jmp_buf_internal_tag - { - /* There are eight 4-byte data registers, but D0 is not saved. */ - long int __dregs[7]; - - /* There are six 4-byte address registers, plus the FP and SP. */ - int *__aregs[6]; - int *__fp; - int *__sp; - -#if defined __HAVE_68881__ || defined __HAVE_FPU__ - /* There are eight floating point registers which - are saved in IEEE 96-bit extended format. */ - char __fpregs[8 * (96 / 8)]; -#elif defined __mcffpu__ - char __fpregs[8 * (64 / 8)]; -#endif - - } __jmp_buf[1]; - -#endif /* bits/setjmp.h */ diff --git a/ports/sysdeps/m68k/bsd-_setjmp.c b/ports/sysdeps/m68k/bsd-_setjmp.c deleted file mode 100644 index e9e728d062..0000000000 --- a/ports/sysdeps/m68k/bsd-_setjmp.c +++ /dev/null @@ -1,21 +0,0 @@ -/* BSD `_setjmp' entry point to `sigsetjmp (..., 0)'. m68k version. - Copyright (C) 1994-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#define BSD__SETJMP -#include <sysdeps/m68k/setjmp.c> -libc_hidden_def (_setjmp) diff --git a/ports/sysdeps/m68k/bsd-setjmp.c b/ports/sysdeps/m68k/bsd-setjmp.c deleted file mode 100644 index 7815532764..0000000000 --- a/ports/sysdeps/m68k/bsd-setjmp.c +++ /dev/null @@ -1,20 +0,0 @@ -/* BSD `setjmp' entry point to `sigsetjmp (..., 1)'. m68k version. - Copyright (C) 1994-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#define BSD_SETJMP -#include <sysdeps/m68k/setjmp.c> diff --git a/ports/sysdeps/m68k/coldfire/bits/atomic.h b/ports/sysdeps/m68k/coldfire/bits/atomic.h deleted file mode 100644 index ec0c59a7da..0000000000 --- a/ports/sysdeps/m68k/coldfire/bits/atomic.h +++ /dev/null @@ -1,68 +0,0 @@ -/* Copyright (C) 2003-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef _BITS_ATOMIC_H -#define _BITS_ATOMIC_H 1 - -#include <stdint.h> - -/* Coldfire has no atomic compare-and-exchange operation, and the - kernel provides no userspace atomicity operations. Here we just - use generic non-atomic implementations instead. */ - -typedef int8_t atomic8_t; -typedef uint8_t uatomic8_t; -typedef int_fast8_t atomic_fast8_t; -typedef uint_fast8_t uatomic_fast8_t; - -typedef int16_t atomic16_t; -typedef uint16_t uatomic16_t; -typedef int_fast16_t atomic_fast16_t; -typedef uint_fast16_t uatomic_fast16_t; - -typedef int32_t atomic32_t; -typedef uint32_t uatomic32_t; -typedef int_fast32_t atomic_fast32_t; -typedef uint_fast32_t uatomic_fast32_t; - -typedef int64_t atomic64_t; -typedef uint64_t uatomic64_t; -typedef int_fast64_t atomic_fast64_t; -typedef uint_fast64_t uatomic_fast64_t; - -typedef intptr_t atomicptr_t; -typedef uintptr_t uatomicptr_t; -typedef intmax_t atomic_max_t; -typedef uintmax_t uatomic_max_t; - -/* The only basic operation needed is compare and exchange. */ -#define atomic_compare_and_exchange_val_acq(mem, newval, oldval) \ - ({ __typeof (mem) __gmemp = (mem); \ - __typeof (*mem) __gret = *__gmemp; \ - __typeof (*mem) __gnewval = (newval); \ - \ - if (__gret == (oldval)) \ - *__gmemp = __gnewval; \ - __gret; }) - -#define atomic_compare_and_exchange_bool_acq(mem, newval, oldval) \ - ({ __typeof (mem) __gmemp = (mem); \ - __typeof (*mem) __gnewval = (newval); \ - \ - *__gmemp == (oldval) ? (*__gmemp = __gnewval, 0) : 1; }) - -#endif diff --git a/ports/sysdeps/m68k/coldfire/fpu/bits/mathinline.h b/ports/sysdeps/m68k/coldfire/fpu/bits/mathinline.h deleted file mode 100644 index bfd2bd61e8..0000000000 --- a/ports/sysdeps/m68k/coldfire/fpu/bits/mathinline.h +++ /dev/null @@ -1,44 +0,0 @@ -/* Inline math functions for Coldfire. - Copyright (C) 2012-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef _MATH_H -# error "Never use <bits/mathinline.h> directly; include <math.h> instead." -#endif - -#ifndef __extern_always_inline -# define __MATH_INLINE __inline -#else -# define __MATH_INLINE __extern_always_inline -#endif - -#if defined __USE_ISOC99 && defined __GNUC__ - -/* Test for negative number. Used in the signbit macro. */ -__MATH_INLINE int -__NTH (__signbitf (float __x)) -{ - return __builtin_signbitf (__x); -} - -__MATH_INLINE int -__NTH (__signbit (double __x)) -{ - return __builtin_signbit (__x); -} - -#endif diff --git a/ports/sysdeps/m68k/coldfire/fpu/e_sqrt.c b/ports/sysdeps/m68k/coldfire/fpu/e_sqrt.c deleted file mode 100644 index 5914de6029..0000000000 --- a/ports/sysdeps/m68k/coldfire/fpu/e_sqrt.c +++ /dev/null @@ -1,24 +0,0 @@ -/* Copyright (C) 2006-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -double -__ieee754_sqrt (double x) -{ - asm ("fdsqrt.d %1,%0" : "=f" (x) : "fm" (x)); - return x; -} -strong_alias (__ieee754_sqrt, __sqrt_finite) diff --git a/ports/sysdeps/m68k/coldfire/fpu/e_sqrtf.c b/ports/sysdeps/m68k/coldfire/fpu/e_sqrtf.c deleted file mode 100644 index 7e7448db78..0000000000 --- a/ports/sysdeps/m68k/coldfire/fpu/e_sqrtf.c +++ /dev/null @@ -1,25 +0,0 @@ -/* Copyright (C) 2006-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -float -__ieee754_sqrtf (float x) -{ - double result; - asm ("fssqrt.s %1,%0" : "=f" (result) : "dm" (x)); - return result; -} -strong_alias (__ieee754_sqrtf, __sqrtf_finite) diff --git a/ports/sysdeps/m68k/coldfire/fpu/fraiseexcpt.c b/ports/sysdeps/m68k/coldfire/fpu/fraiseexcpt.c deleted file mode 100644 index 3d75deb6ac..0000000000 --- a/ports/sysdeps/m68k/coldfire/fpu/fraiseexcpt.c +++ /dev/null @@ -1,66 +0,0 @@ -/* Raise given exceptions. - Copyright (C) 2006-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <fenv.h> -#include <float.h> -#include <math.h> - -int -feraiseexcept (int excepts) -{ - /* Raise exceptions represented by EXCEPTS. But we must raise only one - signal at a time. It is important that if the overflow/underflow - exception and the divide by zero exception are given at the same - time, the overflow/underflow exception follows the divide by zero - exception. - - The Coldfire FPU allows an exception to be raised by asserting - the associated EXC bit and then executing an arbitrary arithmetic - instruction. fmove.l is classified as an arithmetic instruction - and suffices for this purpose. - - We therefore raise an exception by setting both the EXC and AEXC - bit associated with the exception (the former being 6 bits to the - left of the latter) and then loading the longword at (%sp) into an - FP register. */ - - inline void - raise_one_exception (int mask) - { - if (excepts & mask) - { - int fpsr; - double unused; - - asm volatile ("fmove%.l %/fpsr,%0" : "=d" (fpsr)); - fpsr |= (mask << 6) | mask; - asm volatile ("fmove%.l %0,%/fpsr" :: "d" (fpsr)); - asm volatile ("fmove%.l (%%sp),%0" : "=f" (unused)); - } - } - - raise_one_exception (FE_INVALID); - raise_one_exception (FE_DIVBYZERO); - raise_one_exception (FE_OVERFLOW); - raise_one_exception (FE_UNDERFLOW); - raise_one_exception (FE_INEXACT); - - /* Success. */ - return 0; -} -libm_hidden_def (feraiseexcept) diff --git a/ports/sysdeps/m68k/coldfire/fpu/libm-test-ulps b/ports/sysdeps/m68k/coldfire/fpu/libm-test-ulps deleted file mode 100644 index 05be5a92b6..0000000000 --- a/ports/sysdeps/m68k/coldfire/fpu/libm-test-ulps +++ /dev/null @@ -1,820 +0,0 @@ -# Begin of automatic generation - -# atan2 -Test "atan2 (-0.75, -1.0)": -float: 1 -ifloat: 1 -Test "atan2 (0.75, -1.0)": -float: 1 -ifloat: 1 -Test "atan2 (1.390625, 0.9296875)": -float: 1 -ifloat: 1 - -# atanh -Test "atanh (0.75)": -float: 1 -ifloat: 1 - -# cacosh -Test "Imaginary part of: cacosh (-2 - 3 i)": -float: 1 -ifloat: 1 - -# casin -Test "Real part of: casin (0.75 + 1.25 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 - -# casinh -Test "Real part of: casinh (-2 - 3 i)": -double: 5 -float: 1 -idouble: 5 -ifloat: 1 -Test "Imaginary part of: casinh (-2 - 3 i)": -double: 3 -float: 6 -idouble: 3 -ifloat: 6 -Test "Real part of: casinh (0.75 + 1.25 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: casinh (0.75 + 1.25 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 - -# catan -Test "Imaginary part of: catan (-2 - 3 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 - -# catanh -Test "Real part of: catanh (-2 - 3 i)": -double: 4 -idouble: 4 -Test "Real part of: catanh (0.75 + 1.25 i)": -double: 1 -idouble: 1 - -# cbrt -Test "cbrt (-27.0)": -double: 1 -idouble: 1 -Test "cbrt (0.75)": -double: 1 -idouble: 1 -Test "cbrt (0.9921875)": -double: 1 -idouble: 1 - -# ccos -Test "Imaginary part of: ccos (-2 - 3 i)": -float: 1 -ifloat: 1 -Test "Real part of: ccos (0.75 + 1.25 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: ccos (0.75 + 1.25 i)": -float: 1 -ifloat: 1 - -# ccosh -Test "Real part of: ccosh (-2 - 3 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: ccosh (-2 - 3 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)": -float: 1 -ifloat: 1 - -# cexp -Test "Imaginary part of: cexp (-2.0 - 3.0 i)": -float: 1 -ifloat: 1 -Test "Real part of: cexp (0.75 + 1.25 i)": -float: 1 -ifloat: 1 - -# clog -Test "Real part of: clog (0.75 + 1.25 i)": -float: 1 -ifloat: 1 - -# clog10 -Test "Imaginary part of: clog10 (-0 + inf i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog10 (-0 - inf i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog10 (-2 - 3 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog10 (-3 + inf i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog10 (-3 - inf i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog10 (-inf + 0 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog10 (-inf + 1 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog10 (-inf - 0 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog10 (-inf - 1 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog10 (0 + inf i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog10 (0 - inf i)": -float: 1 -ifloat: 1 -Test "Real part of: clog10 (0.75 + 1.25 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog10 (3 + inf i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog10 (3 - inf i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog10 (inf + inf i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog10 (inf - inf i)": -float: 1 -ifloat: 1 - -# cos -Test "cos (M_PI_6l * 2.0)": -double: 1 -idouble: 1 -Test "cos (M_PI_6l * 4.0)": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 - -# cpow -Test "Real part of: cpow (0.75 + 1.25 i, 0.0 + 1.0 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cpow (0.75 + 1.25 i, 0.0 + 1.0 i)": -float: 1 -ifloat: 1 -Test "Real part of: cpow (0.75 + 1.25 i, 0.75 + 1.25 i)": -double: 1 -float: 4 -idouble: 1 -ifloat: 4 -Test "Real part of: cpow (0.75 + 1.25 i, 1.0 + 1.0 i)": -double: 2 -float: 3 -idouble: 2 -ifloat: 3 -Test "Real part of: cpow (2 + 3 i, 4 + 0 i)": -double: 1 -float: 4 -idouble: 1 -ifloat: 4 -Test "Imaginary part of: cpow (2 + 3 i, 4 + 0 i)": -float: 2 -ifloat: 2 -Test "Imaginary part of: cpow (e + 0 i, 0 + 2 * M_PIl i)": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 - -# csinh -Test "Imaginary part of: csinh (-2 - 3 i)": -double: 1 -idouble: 1 -Test "Real part of: csinh (0.75 + 1.25 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: csinh (0.75 + 1.25 i)": -float: 1 -ifloat: 1 - -# csqrt -Test "Real part of: csqrt (-2 + 3 i)": -float: 1 -ifloat: 1 -Test "Real part of: csqrt (-2 - 3 i)": -float: 1 -ifloat: 1 - -# ctan -Test "Imaginary part of: ctan (0.75 + 1.25 i)": -double: 1 -idouble: 1 - -# ctanh -Test "Real part of: ctanh (-2 - 3 i)": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -Test "Imaginary part of: ctanh (0 + pi/4 i)": -float: 1 -ifloat: 1 -Test "Real part of: ctanh (0.75 + 1.25 i)": -double: 1 -idouble: 1 - -# erf -Test "erf (1.25)": -double: 1 -idouble: 1 - -# erfc -Test "erfc (2.0)": -double: 1 -idouble: 1 -Test "erfc (4.125)": -double: 1 -idouble: 1 - -# exp10 -Test "exp10 (-1)": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -Test "exp10 (0.75)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "exp10 (3)": -double: 6 -float: 2 -idouble: 6 -ifloat: 2 - -# expm1 -Test "expm1 (0.75)": -double: 1 -idouble: 1 -Test "expm1 (1)": -float: 1 -ifloat: 1 - -# hypot -Test "hypot (-0.7, -12.4)": -float: 1 -ifloat: 1 -Test "hypot (-0.7, 12.4)": -float: 1 -ifloat: 1 -Test "hypot (-12.4, -0.7)": -float: 1 -ifloat: 1 -Test "hypot (-12.4, 0.7)": -float: 1 -ifloat: 1 -Test "hypot (0.7, -12.4)": -float: 1 -ifloat: 1 -Test "hypot (0.7, 12.4)": -float: 1 -ifloat: 1 -Test "hypot (12.4, -0.7)": -float: 1 -ifloat: 1 -Test "hypot (12.4, 0.7)": -float: 1 -ifloat: 1 - -# j0 -Test "j0 (-4.0)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "j0 (0.75)": -float: 1 -ifloat: 1 -Test "j0 (10.0)": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -Test "j0 (2.0)": -float: 2 -ifloat: 2 -Test "j0 (4.0)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "j0 (8.0)": -float: 1 -ifloat: 1 - -# j1 -Test "j1 (10.0)": -float: 2 -ifloat: 2 -Test "j1 (2.0)": -double: 1 -idouble: 1 -Test "j1 (8.0)": -double: 1 -idouble: 1 - -# jn -Test "jn (0, -4.0)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "jn (0, 0.75)": -float: 1 -ifloat: 1 -Test "jn (0, 10.0)": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -Test "jn (0, 2.0)": -float: 2 -ifloat: 2 -Test "jn (0, 4.0)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "jn (0, 8.0)": -float: 1 -ifloat: 1 -Test "jn (1, 10.0)": -float: 2 -ifloat: 2 -Test "jn (1, 2.0)": -double: 1 -idouble: 1 -Test "jn (1, 8.0)": -double: 1 -idouble: 1 -Test "jn (10, 0.125)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "jn (10, 0.75)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "jn (10, 10.0)": -double: 4 -float: 3 -idouble: 4 -ifloat: 3 -Test "jn (10, 2.0)": -float: 4 -ifloat: 4 -Test "jn (3, 0.125)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "jn (3, 0.75)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "jn (3, 10.0)": -double: 3 -float: 1 -idouble: 3 -ifloat: 1 -Test "jn (3, 2.0)": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 - -# lgamma -Test "lgamma (0.7)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "lgamma (1.2)": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 - -# log10 -Test "log10 (0.75)": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -Test "log10 (e)": -float: 1 -ifloat: 1 - -# log1p -Test "log1p (-0.25)": -float: 1 -ifloat: 1 - -# sincos -Test "sincos (M_PI_6l*2.0) extra output 1": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "sincos (M_PI_6l*2.0) extra output 2": -double: 1 -idouble: 1 -Test "sincos (pi/6) extra output 2": -float: 1 -ifloat: 1 - -# tgamma -Test "tgamma (-0.5)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "tgamma (0.5)": -float: 1 -ifloat: 1 -Test "tgamma (0.7)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 - -# y0 -Test "y0 (1.0)": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -Test "y0 (1.5)": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -Test "y0 (10.0)": -float: 1 -ifloat: 1 -Test "y0 (8.0)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 - -# y1 -Test "y1 (0.125)": -double: 1 -idouble: 1 -Test "y1 (1.5)": -float: 1 -ifloat: 1 -Test "y1 (10.0)": -double: 3 -float: 1 -idouble: 3 -ifloat: 1 -Test "y1 (2.0)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "y1 (8.0)": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 - -# yn -Test "yn (0, 1.0)": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -Test "yn (0, 1.5)": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -Test "yn (0, 10.0)": -float: 1 -ifloat: 1 -Test "yn (0, 8.0)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "yn (1, 0.125)": -double: 1 -idouble: 1 -Test "yn (1, 1.5)": -float: 1 -ifloat: 1 -Test "yn (1, 10.0)": -double: 3 -float: 1 -idouble: 3 -ifloat: 1 -Test "yn (1, 2.0)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "yn (1, 8.0)": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -Test "yn (10, 0.125)": -double: 1 -idouble: 1 -Test "yn (10, 0.75)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "yn (10, 1.0)": -double: 1 -idouble: 1 -Test "yn (10, 10.0)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "yn (10, 2.0)": -double: 2 -idouble: 2 -Test "yn (3, 0.125)": -double: 1 -idouble: 1 -Test "yn (3, 0.75)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "yn (3, 10.0)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "yn (3, 2.0)": -double: 1 -idouble: 1 - -# Maximal error of functions: -Function: "atan2": -float: 1 -ifloat: 1 - -Function: "atanh": -float: 1 -ifloat: 1 - -Function: Imaginary part of "cacosh": -float: 1 -ifloat: 1 - -Function: Real part of "casin": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 - -Function: Real part of "casinh": -double: 5 -float: 1 -idouble: 5 -ifloat: 1 - -Function: Imaginary part of "casinh": -double: 3 -float: 6 -idouble: 3 -ifloat: 6 - -Function: Imaginary part of "catan": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 - -Function: Real part of "catanh": -double: 4 -idouble: 4 - -Function: "cbrt": -double: 1 -idouble: 1 - -Function: Real part of "ccos": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 - -Function: Imaginary part of "ccos": -float: 1 -ifloat: 1 - -Function: Real part of "ccosh": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 - -Function: Imaginary part of "ccosh": -float: 1 -ifloat: 1 - -Function: Real part of "cexp": -float: 1 -ifloat: 1 - -Function: Imaginary part of "cexp": -float: 1 -ifloat: 1 - -Function: Real part of "clog": -float: 1 -ifloat: 1 - -Function: Real part of "clog10": -float: 1 -ifloat: 1 - -Function: Imaginary part of "clog10": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 - -Function: "cos": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 - -Function: Real part of "cpow": -double: 2 -float: 4 -idouble: 2 -ifloat: 4 - -Function: Imaginary part of "cpow": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 - -Function: Real part of "csinh": -float: 1 -ifloat: 1 - -Function: Imaginary part of "csinh": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 - -Function: Real part of "csqrt": -float: 1 -ifloat: 1 - -Function: Imaginary part of "ctan": -double: 1 -idouble: 1 - -Function: Real part of "ctanh": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 - -Function: Imaginary part of "ctanh": -float: 1 -ifloat: 1 - -Function: "erf": -double: 1 -idouble: 1 - -Function: "erfc": -double: 1 -idouble: 1 - -Function: "exp10": -double: 6 -float: 2 -idouble: 6 -ifloat: 2 - -Function: "expm1": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 - -Function: "hypot": -float: 1 -ifloat: 1 - -Function: "j0": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 - -Function: "j1": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 - -Function: "jn": -double: 4 -float: 4 -idouble: 4 -ifloat: 4 - -Function: "lgamma": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 - -Function: "log10": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 - -Function: "log1p": -float: 1 -ifloat: 1 - -Function: "sincos": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 - -Function: "tan": -double: 1 -idouble: 1 - -Function: "tgamma": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 - -Function: "y0": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 - -Function: "y1": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 - -Function: "yn": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 - -# end of automatic generation diff --git a/ports/sysdeps/m68k/coldfire/fpu/s_fabs.c b/ports/sysdeps/m68k/coldfire/fpu/s_fabs.c deleted file mode 100644 index dc8d31e872..0000000000 --- a/ports/sysdeps/m68k/coldfire/fpu/s_fabs.c +++ /dev/null @@ -1,28 +0,0 @@ -/* Copyright (C) 2006-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -double -__fabs (double x) -{ - asm ("fdabs.d %1,%0" : "=f" (x) : "fm" (x)); - return x; -} -weak_alias (__fabs, fabs) -#ifdef NO_LONG_DOUBLE -strong_alias (__fabs, __fabsl) -weak_alias (__fabs, fabsl) -#endif diff --git a/ports/sysdeps/m68k/coldfire/fpu/s_fabsf.c b/ports/sysdeps/m68k/coldfire/fpu/s_fabsf.c deleted file mode 100644 index 29a25ccdad..0000000000 --- a/ports/sysdeps/m68k/coldfire/fpu/s_fabsf.c +++ /dev/null @@ -1,24 +0,0 @@ -/* Copyright (C) 2006-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -float -__fabsf (float x) -{ - asm ("fsabs.s %1,%0" : "=f" (x) : "dm" (x)); - return x; -} -weak_alias (__fabsf, fabsf) diff --git a/ports/sysdeps/m68k/coldfire/fpu/s_lrint.c b/ports/sysdeps/m68k/coldfire/fpu/s_lrint.c deleted file mode 100644 index 7de6b44d30..0000000000 --- a/ports/sysdeps/m68k/coldfire/fpu/s_lrint.c +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright (C) 2006-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -long int -__lrint (double x) -{ - long int result; - asm ("fmove.l %1,%0" : "=dm" (result) : "f" (x)); - return result; -} -weak_alias (__lrint, lrint) -#ifdef NO_LONG_DOUBLE -strong_alias (__lrint, __lrintl) -weak_alias (__lrint, lrintl) -#endif diff --git a/ports/sysdeps/m68k/coldfire/fpu/s_lrintf.c b/ports/sysdeps/m68k/coldfire/fpu/s_lrintf.c deleted file mode 100644 index a73dd12a80..0000000000 --- a/ports/sysdeps/m68k/coldfire/fpu/s_lrintf.c +++ /dev/null @@ -1,25 +0,0 @@ -/* Copyright (C) 2006-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -long int -__lrintf (float x) -{ - long int result; - asm ("fmove.l %1,%0" : "=dm" (result) : "f" (x)); - return result; -} -weak_alias (__lrintf, lrintf) diff --git a/ports/sysdeps/m68k/coldfire/fpu/s_rint.c b/ports/sysdeps/m68k/coldfire/fpu/s_rint.c deleted file mode 100644 index a98bb47eb1..0000000000 --- a/ports/sysdeps/m68k/coldfire/fpu/s_rint.c +++ /dev/null @@ -1,28 +0,0 @@ -/* Copyright (C) 2006-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -double -__rint (double x) -{ - asm ("fint.d %1,%0" : "=f" (x) : "fm" (x)); - return x; -} -weak_alias (__rint, rint) -#ifdef NO_LONG_DOUBLE -strong_alias (__rint, __rintl) -weak_alias (__rint, rintl) -#endif diff --git a/ports/sysdeps/m68k/coldfire/fpu/s_rintf.c b/ports/sysdeps/m68k/coldfire/fpu/s_rintf.c deleted file mode 100644 index 83bf5137e2..0000000000 --- a/ports/sysdeps/m68k/coldfire/fpu/s_rintf.c +++ /dev/null @@ -1,25 +0,0 @@ -/* Copyright (C) 2006-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -float -__rintf (float x) -{ - double result; - asm ("fint.s %1,%0" : "=f" (result) : "dm" (x)); - return (float) result; -} -weak_alias (__rintf, rintf) diff --git a/ports/sysdeps/m68k/coldfire/shlib-versions b/ports/sysdeps/m68k/coldfire/shlib-versions deleted file mode 100644 index f4c68b2a51..0000000000 --- a/ports/sysdeps/m68k/coldfire/shlib-versions +++ /dev/null @@ -1 +0,0 @@ -m68k-.*-linux.* DEFAULT GLIBC_2.4 diff --git a/ports/sysdeps/m68k/coldfire/sysdep.h b/ports/sysdeps/m68k/coldfire/sysdep.h deleted file mode 100644 index 2228481566..0000000000 --- a/ports/sysdeps/m68k/coldfire/sysdep.h +++ /dev/null @@ -1,40 +0,0 @@ -/* Assembler macros for Coldfire. - Copyright (C) 1998-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <sysdeps/m68k/sysdep.h> - -#ifdef __ASSEMBLER__ - -/* Perform operation OP with PC-relative SRC as the first operand and - DST as the second. TMP is available as a temporary if needed. */ -# define PCREL_OP(OP, SRC, DST, TMP) \ - move.l &SRC - ., TMP; OP (-8, %pc, TMP), DST - -/* Load the address of the GOT into register R. */ -# define LOAD_GOT(R) \ - move.l &_GLOBAL_OFFSET_TABLE_@GOTPC, R; \ - lea (-6, %pc, R), R - -#else - -/* As above, but PC is the spelling of the PC register. We need this - so that the macro can be used in both normal and extended asms. */ -# define PCREL_OP(OP, SRC, DST, TMP, PC) \ - "move.l #" SRC " - ., " TMP "\n\t" OP " (-8, " PC ", " TMP "), " DST - -#endif /* __ASSEMBLER__ */ diff --git a/ports/sysdeps/m68k/crti.S b/ports/sysdeps/m68k/crti.S deleted file mode 100644 index 75a3ce5f25..0000000000 --- a/ports/sysdeps/m68k/crti.S +++ /dev/null @@ -1,82 +0,0 @@ -/* Special .init and .fini section support for m68k. - Copyright (C) 2012-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - In addition to the permissions in the GNU Lesser General Public - License, the Free Software Foundation gives you unlimited - permission to link the compiled version of this file with other - programs, and to distribute those programs without any restriction - coming from the use of this file. (The GNU Lesser General Public - License restrictions do apply in other respects; for example, they - cover modification of the file, and distribution when not linked - into another program.) - - Note that people who make modified versions of this file are not - obligated to grant this special exception for their modified - versions; it is their choice whether to do so. The GNU Lesser - General Public License gives permission to release a modified - version without this exception; this exception also makes it - possible to release a modified version which carries forward this - exception. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -/* crti.S puts a function prologue at the beginning of the .init and - .fini sections and defines global symbols for those addresses, so - they can be called as functions. The symbols _init and _fini are - magic and cause the linker to emit DT_INIT and DT_FINI. */ - -#include <libc-symbols.h> -#include <sysdep.h> - -#ifndef PREINIT_FUNCTION -# define PREINIT_FUNCTION __gmon_start__ -#endif - -#ifndef PREINIT_FUNCTION_WEAK -# define PREINIT_FUNCTION_WEAK 1 -#endif - -#if PREINIT_FUNCTION_WEAK - weak_extern (PREINIT_FUNCTION) -#else - .hidden PREINIT_FUNCTION -#endif - - .section .init,"ax",@progbits - .align 2 - .globl _init - .type _init, @function -_init: - link.w %fp, #0 - move.l %a5, -(%sp) - LOAD_GOT (%a5) -#if PREINIT_FUNCTION_WEAK - tst.l PREINIT_FUNCTION@GOT(%a5) - jeq 1f - jbsr PREINIT_FUNCTION@PLTPC -1: -#else - jbsr PREINIT_FUNCTION -#endif - - .section .fini,"ax",@progbits - .align 2 - .globl _fini - .type _fini, @function -_fini: - link.w %fp, #0 - move.l %a5, -(%sp) - LOAD_GOT (%a5) diff --git a/ports/sysdeps/m68k/crtn.S b/ports/sysdeps/m68k/crtn.S deleted file mode 100644 index 3938783c1e..0000000000 --- a/ports/sysdeps/m68k/crtn.S +++ /dev/null @@ -1,47 +0,0 @@ -/* Special .init and .fini section support for m68k. - Copyright (C) 2012-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - In addition to the permissions in the GNU Lesser General Public - License, the Free Software Foundation gives you unlimited - permission to link the compiled version of this file with other - programs, and to distribute those programs without any restriction - coming from the use of this file. (The GNU Lesser General Public - License restrictions do apply in other respects; for example, they - cover modification of the file, and distribution when not linked - into another program.) - - Note that people who make modified versions of this file are not - obligated to grant this special exception for their modified - versions; it is their choice whether to do so. The GNU Lesser - General Public License gives permission to release a modified - version without this exception; this exception also makes it - possible to release a modified version which carries forward this - exception. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -/* crtn.S puts function epilogues in the .init and .fini sections - corresponding to the prologues in crti.S. */ - - .section .init,"ax",@progbits - move.l -4(%fp), %a5 - unlk %fp - rts - - .section .fini,"ax",@progbits - move.l -4(%fp), %a5 - unlk %fp - rts diff --git a/ports/sysdeps/m68k/dl-machine.h b/ports/sysdeps/m68k/dl-machine.h deleted file mode 100644 index 3ec9862f8c..0000000000 --- a/ports/sysdeps/m68k/dl-machine.h +++ /dev/null @@ -1,318 +0,0 @@ -/* Machine-dependent ELF dynamic relocation inline functions. m68k version. - Copyright (C) 1996-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef dl_machine_h -#define dl_machine_h - -#define ELF_MACHINE_NAME "m68k" - -#include <sys/param.h> -#include <sysdep.h> -#include <dl-tls.h> - -/* Return nonzero iff ELF header is compatible with the running host. */ -static inline int -elf_machine_matches_host (const Elf32_Ehdr *ehdr) -{ - return ehdr->e_machine == EM_68K; -} - - -/* Return the link-time address of _DYNAMIC. - This must be inlined in a function which uses global data. */ -static inline Elf32_Addr -elf_machine_dynamic (void) -{ - Elf32_Addr addr; - - asm ("move.l _DYNAMIC@GOT.w(%%a5), %0" - : "=a" (addr)); - return addr; -} - - -/* Return the run-time load address of the shared object. */ -static inline Elf32_Addr -elf_machine_load_address (void) -{ - Elf32_Addr addr; - asm (PCREL_OP ("lea", "_dl_start", "%0", "%0", "%%pc") "\n\t" - "sub.l _dl_start@GOT.w(%%a5), %0" - : "=a" (addr)); - return addr; -} - - -/* Set up the loaded object described by L so its unrelocated PLT - entries will jump to the on-demand fixup code in dl-runtime.c. */ - -static inline int __attribute__ ((always_inline)) -elf_machine_runtime_setup (struct link_map *l, int lazy, int profile) -{ - Elf32_Addr *got; - extern void _dl_runtime_resolve (Elf32_Word); - extern void _dl_runtime_profile (Elf32_Word); - - if (l->l_info[DT_JMPREL] && lazy) - { - /* The GOT entries for functions in the PLT have not yet been - filled in. Their initial contents will arrange when called - to push an offset into the .rela.plt section, push - _GLOBAL_OFFSET_TABLE_[1], and then jump to - _GLOBAL_OFFSET_TABLE_[2]. */ - got = (Elf32_Addr *) D_PTR (l, l_info[DT_PLTGOT]); - got[1] = (Elf32_Addr) l; /* Identify this shared object. */ - - /* The got[2] entry contains the address of a function which gets - called to get the address of a so far unresolved function and - jump to it. The profiling extension of the dynamic linker allows - to intercept the calls to collect information. In this case we - don't store the address in the GOT so that all future calls also - end in this function. */ - if (profile) - { - got[2] = (Elf32_Addr) &_dl_runtime_profile; - - if (GLRO(dl_profile) != NULL - && _dl_name_match_p (GLRO(dl_profile), l)) - { - /* This is the object we are looking for. Say that we really - want profiling and the timers are started. */ - GL(dl_profile_map) = l; - } - } - else - /* This function will get called to fix up the GOT entry indicated by - the offset on the stack, and then jump to the resolved address. */ - got[2] = (Elf32_Addr) &_dl_runtime_resolve; - } - - return lazy; -} - -#define ELF_MACHINE_RUNTIME_FIXUP_ARGS long int save_a0, long int save_a1 -#define ELF_MACHINE_RUNTIME_FIXUP_PARAMS save_a0, save_a1 - - -/* Mask identifying addresses reserved for the user program, - where the dynamic linker should not map anything. */ -#define ELF_MACHINE_USER_ADDRESS_MASK 0x80000000UL - -/* Initial entry point code for the dynamic linker. - The C function `_dl_start' is the real entry point; - its return value is the user program's entry point. */ - -#define RTLD_START asm ("\ - .text\n\ - .globl _start\n\ - .type _start,@function\n\ -_start:\n\ - sub.l %fp, %fp\n\ - move.l %sp, -(%sp)\n\ - jbsr _dl_start\n\ - addq.l #4, %sp\n\ - /* FALLTHRU */\n\ -\n\ - .globl _dl_start_user\n\ - .type _dl_start_user,@function\n\ -_dl_start_user:\n\ - | Save the user entry point address in %a4.\n\ - move.l %d0, %a4\n\ - | See if we were run as a command with the executable file\n\ - | name as an extra leading argument.\n\ - " PCREL_OP ("move.l", "_dl_skip_args", "%d0", "%d0", "%pc") "\n\ - | Pop the original argument count\n\ - move.l (%sp)+, %d1\n\ - | Subtract _dl_skip_args from it.\n\ - sub.l %d0, %d1\n\ - | Adjust the stack pointer to skip _dl_skip_args words.\n\ - lea (%sp, %d0*4), %sp\n\ - | Push back the modified argument count.\n\ - move.l %d1, -(%sp)\n\ - # Call _dl_init (struct link_map *main_map, int argc, char **argv, char **env)\n\ - pea 8(%sp, %d1*4)\n\ - pea 8(%sp)\n\ - move.l %d1, -(%sp)\n\ - " PCREL_OP ("move.l", "_rtld_local", "-(%sp)", "%d0", "%pc") "\n\ - jbsr _dl_init_internal@PLTPC\n\ - addq.l #8, %sp\n\ - addq.l #8, %sp\n\ - | Pass our finalizer function to the user in %a1.\n\ - " PCREL_OP ("lea", "_dl_fini", "%a1", "%a1", "%pc") "\n\ - | Initialize %fp with the stack pointer.\n\ - move.l %sp, %fp\n\ - | Jump to the user's entry point.\n\ - jmp (%a4)\n\ - .size _dl_start_user, . - _dl_start_user\n\ - .previous"); - -/* ELF_RTYPE_CLASS_PLT iff TYPE describes relocation of a PLT entry or - TLS variable, so undefined references should not be allowed to - define the value. - ELF_RTYPE_CLASS_NOCOPY iff TYPE should not be allowed to resolve to one - of the main executable's symbols, as for a COPY reloc. */ -#define elf_machine_type_class(type) \ - ((((type) == R_68K_JMP_SLOT \ - || (type) == R_68K_TLS_DTPMOD32 \ - || (type) == R_68K_TLS_DTPREL32 \ - || (type) == R_68K_TLS_TPREL32) * ELF_RTYPE_CLASS_PLT) \ - | (((type) == R_68K_COPY) * ELF_RTYPE_CLASS_COPY)) - -/* A reloc type used for ld.so cmdline arg lookups to reject PLT entries. */ -#define ELF_MACHINE_JMP_SLOT R_68K_JMP_SLOT - -/* The m68k never uses Elf32_Rel relocations. */ -#define ELF_MACHINE_NO_REL 1 - -static inline Elf32_Addr -elf_machine_fixup_plt (struct link_map *map, lookup_t t, - const Elf32_Rela *reloc, - Elf32_Addr *reloc_addr, Elf32_Addr value) -{ - return *reloc_addr = value; -} - -/* Return the final value of a plt relocation. On the m68k the JMP_SLOT - relocation ignores the addend. */ -static inline Elf32_Addr -elf_machine_plt_value (struct link_map *map, const Elf32_Rela *reloc, - Elf32_Addr value) -{ - return value; -} - -/* Names of the architecture-specific auditing callback functions. */ -#define ARCH_LA_PLTENTER m68k_gnu_pltenter -#define ARCH_LA_PLTEXIT m68k_gnu_pltexit - -#endif /* !dl_machine_h */ - -#ifdef RESOLVE_MAP - -/* Perform the relocation specified by RELOC and SYM (which is fully resolved). - MAP is the object containing the reloc. */ - -auto inline void __attribute__ ((unused, always_inline)) -elf_machine_rela (struct link_map *map, const Elf32_Rela *reloc, - const Elf32_Sym *sym, const struct r_found_version *version, - void *const reloc_addr_arg, int skip_ifunc) -{ - Elf32_Addr *const reloc_addr = reloc_addr_arg; - const unsigned int r_type = ELF32_R_TYPE (reloc->r_info); - - if (__builtin_expect (r_type == R_68K_RELATIVE, 0)) - *reloc_addr = map->l_addr + reloc->r_addend; - else - { - const Elf32_Sym *const refsym = sym; - struct link_map *sym_map = RESOLVE_MAP (&sym, version, r_type); - Elf32_Addr value = sym == NULL ? 0 : sym_map->l_addr + sym->st_value; - - switch (r_type) - { - case R_68K_COPY: - if (sym == NULL) - /* This can happen in trace mode if an object could not be - found. */ - break; - if (sym->st_size > refsym->st_size - || (sym->st_size < refsym->st_size && GLRO(dl_verbose))) - { - const char *strtab; - - strtab = (const void *) 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, strtab + refsym->st_name); - } - memcpy (reloc_addr_arg, (void *) value, - MIN (sym->st_size, refsym->st_size)); - break; - case R_68K_GLOB_DAT: - case R_68K_JMP_SLOT: - *reloc_addr = value; - break; - case R_68K_8: - *(char *) reloc_addr = value + reloc->r_addend; - break; - case R_68K_16: - *(short *) reloc_addr = value + reloc->r_addend; - break; - case R_68K_32: - *reloc_addr = value + reloc->r_addend; - break; - case R_68K_PC8: - *(char *) reloc_addr - = value + reloc->r_addend - (Elf32_Addr) reloc_addr; - break; - case R_68K_PC16: - *(short *) reloc_addr - = value + reloc->r_addend - (Elf32_Addr) reloc_addr; - break; - case R_68K_PC32: - *reloc_addr = value + reloc->r_addend - (Elf32_Addr) reloc_addr; - break; -#ifndef RTLD_BOOTSTRAP - case R_68K_TLS_DTPMOD32: - /* Get the information from the link map returned by the - resolv function. */ - if (sym_map != NULL) - *reloc_addr = sym_map->l_tls_modid; - break; - case R_68K_TLS_DTPREL32: - if (sym != NULL) - *reloc_addr = TLS_DTPREL_VALUE (sym, reloc); - break; - case R_68K_TLS_TPREL32: - if (sym != NULL) - { - CHECK_STATIC_TLS (map, sym_map); - *reloc_addr = TLS_TPREL_VALUE (sym_map, sym, reloc); - } - break; -#endif /* !RTLD_BOOTSTRAP */ - case R_68K_NONE: /* Alright, Wilbur. */ - break; - default: - _dl_reloc_bad_type (map, r_type, 0); - break; - } - } -} - -auto inline void __attribute__ ((unused, always_inline)) -elf_machine_rela_relative (Elf32_Addr l_addr, const Elf32_Rela *reloc, - void *const reloc_addr_arg) -{ - Elf32_Addr *const reloc_addr = reloc_addr_arg; - *reloc_addr = l_addr + reloc->r_addend; -} - -auto inline void __attribute__ ((unused, always_inline)) -elf_machine_lazy_rel (struct link_map *map, - Elf32_Addr l_addr, const Elf32_Rela *reloc, - int skip_ifunc) -{ - Elf32_Addr *const reloc_addr = (void *) (l_addr + reloc->r_offset); - if (ELF32_R_TYPE (reloc->r_info) == R_68K_JMP_SLOT) - *reloc_addr += l_addr; - else - _dl_reloc_bad_type (map, ELF32_R_TYPE (reloc->r_info), 1); -} - -#endif /* RESOLVE_MAP */ diff --git a/ports/sysdeps/m68k/dl-tls.h b/ports/sysdeps/m68k/dl-tls.h deleted file mode 100644 index 38e958c975..0000000000 --- a/ports/sysdeps/m68k/dl-tls.h +++ /dev/null @@ -1,50 +0,0 @@ -/* Thread-local storage handling in the ELF dynamic linker. M68K version. - Copyright (C) 2010-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Maxim Kuvyrkov <maxim@codesourcery.com>, 2010. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - - -/* Type used for the representation of TLS information in the GOT. */ -typedef struct -{ - unsigned long int ti_module; - unsigned long int ti_offset; -} tls_index; - -/* The thread pointer points 0x7000 past the first static TLS block. */ -#define TLS_TP_OFFSET 0x7000 - -/* Dynamic thread vector pointers point 0x8000 past the start of each - TLS block. */ -#define TLS_DTV_OFFSET 0x8000 - -/* Compute the value for a TPREL reloc. */ -#define TLS_TPREL_VALUE(sym_map, sym, reloc) \ - ((sym_map)->l_tls_offset + (sym)->st_value + (reloc)->r_addend \ - - TLS_TP_OFFSET) - -/* Compute the value for a DTPREL reloc. */ -#define TLS_DTPREL_VALUE(sym, reloc) \ - ((sym)->st_value + (reloc)->r_addend - TLS_DTV_OFFSET) - -extern void *__tls_get_addr (tls_index *ti); - -#define GET_ADDR_OFFSET (ti->ti_offset + TLS_DTV_OFFSET) -#define __TLS_GET_ADDR(__ti) (__tls_get_addr (__ti) - TLS_DTV_OFFSET) - -/* Value used for dtv entries for which the allocation is delayed. */ -#define TLS_DTV_UNALLOCATED ((void *) -1l) diff --git a/ports/sysdeps/m68k/dl-trampoline.S b/ports/sysdeps/m68k/dl-trampoline.S deleted file mode 100644 index 1c1bbf301b..0000000000 --- a/ports/sysdeps/m68k/dl-trampoline.S +++ /dev/null @@ -1,222 +0,0 @@ -/* PLT trampolines. m68k version. - Copyright (C) 2005-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <sysdep.h> - -#if !defined (__mcoldfire__) -# define FMOVE fmove.x -# define FPSPACE 12 -#elif defined (__mcffpu__) -# define FMOVE fmove.d -# define FPSPACE 8 -#else -# define FPSPACE 0 -#endif - - .text - .globl _dl_runtime_resolve - .type _dl_runtime_resolve, @function -_dl_runtime_resolve: - cfi_startproc - cfi_adjust_cfa_offset (8) - | Save %a0 (struct return address) and %a1. - move.l %a0, -(%sp) - cfi_adjust_cfa_offset (4) - move.l %a1, -(%sp) - cfi_adjust_cfa_offset (4) - | Call the real address resolver. - jbsr _dl_fixup - | Restore register %a0 and %a1. - move.l (%sp)+, %a1 - cfi_adjust_cfa_offset (-4) - move.l (%sp)+, %a0 - cfi_adjust_cfa_offset (-4) - | Pop parameters - addq.l #8, %sp - cfi_adjust_cfa_offset (-8) - | Call real function. -#ifdef __mcoldfire__ - move.l %d0,-(%sp) - cfi_adjust_cfa_offset (4) - rts -#else - jmp (%d0) -#endif - cfi_endproc - .size _dl_runtime_resolve, . - _dl_runtime_resolve - - .text - .globl _dl_runtime_profile - .type _dl_runtime_profile, @function -_dl_runtime_profile: - cfi_startproc - cfi_adjust_cfa_offset (8) - pea 8(%sp) - cfi_adjust_cfa_offset (4) - move.l %a1, -(%sp) - cfi_adjust_cfa_offset (4) - move.l %a0, -(%sp) - cfi_adjust_cfa_offset (4) - pea -1.w - cfi_adjust_cfa_offset (4) - | Push parameters for _dl_profile_fixup - pea (%sp) - cfi_adjust_cfa_offset (4) - pea 8(%sp) - cfi_adjust_cfa_offset (4) - move.l 32(%sp), -(%sp) - cfi_adjust_cfa_offset (4) - move.l 32(%sp), -(%sp) - cfi_adjust_cfa_offset (4) - move.l 32(%sp), -(%sp) - cfi_adjust_cfa_offset (4) - subq.l #8, %sp - cfi_adjust_cfa_offset (8) - | Call the real address resolver. - jbsr _dl_profile_fixup - | Pop parameters - lea 28(%sp), %sp - cfi_adjust_cfa_offset (-28) - move.l (%sp), %d1 - jpl 1f - addq.l #4, %sp - cfi_adjust_cfa_offset (-4) - | Restore register %a0 and %a1. - move.l (%sp)+, %a0 - cfi_adjust_cfa_offset (-4) - move.l (%sp)+, %a1 - cfi_adjust_cfa_offset (-4) - lea 12(%sp), %sp - cfi_adjust_cfa_offset (-12) - | Call real function. -#ifdef __mcoldfire__ - move.l %d0,-(%sp) - cfi_adjust_cfa_offset (4) - rts -#else - jmp (%d0) -#endif - - /* - +24 return address - +20 PLT1 - +16 PLT2 - +12 %sp - +8 %a1 - +4 %a0 - %sp free - */ -#ifdef __mcoldfire__ - cfi_adjust_cfa_offset (20) -#else - cfi_adjust_cfa_offset (24) -#endif -1: move.l %a2, (%sp) - cfi_rel_offset (%a2, 0) - move.l %sp, %a2 - move.l %sp, %a0 - lea 28(%sp), %a1 - | Round framesize up to longword alignment - addq.l #3, %d1 - and.l #-3, %d1 - sub.l %d1, %a0 - move.l %a0, %sp - cfi_def_cfa_register (%a2) -#ifdef __mcoldfire__ - tst.l %d1 - beq 2f -1: move.l (%a1)+, (%a0)+ - subq.l #4,%d1 - bne 1b -2: -#else - lsr.l #2,%d1 - jra 2f -1: move.l (%a1)+, (%a0)+ -2: dbra %d1,1b -#endif - /* - %a2+24 return address - %a2+20 PLT1 - %a2+16 PLT2 - %a2+12 %sp - %a2+8 %a1 - %a2+4 %a0 - %a2 %a2 - %sp copied stack frame - */ - - move.l 4(%a2), %a0 - move.l 8(%a2), %a1 -#ifdef __mcoldfire__ - pea 2f(%pc) - move.l %d0,-(%sp) - rts -2: -#else - jsr (%d0) -#endif - move.l %a2, %sp - cfi_def_cfa_register (%sp) - move.l (%sp)+, %a2 - cfi_adjust_cfa_offset (4) - cfi_restore (%a2) - /* - +20 return address - +16 PLT1 - +12 PLT2 - +8 %sp - +4 %a1 - %sp %a0 - */ -#ifdef FMOVE - FMOVE %fp0, -(%sp) - cfi_adjust_cfa_offset (FPSPACE) -#endif - move.l %a0, -(%sp) - cfi_adjust_cfa_offset (4) - move.l %d1, -(%sp) - cfi_adjust_cfa_offset (4) - move.l %d0, -(%sp) - cfi_adjust_cfa_offset (4) - pea (%sp) - cfi_adjust_cfa_offset (4) - pea (16+FPSPACE)(%sp) - cfi_adjust_cfa_offset (4) - move.l (32+FPSPACE)(%sp), -(%sp) - cfi_adjust_cfa_offset (4) - move.l (32+FPSPACE)(%sp), -(%sp) - cfi_adjust_cfa_offset (4) - jbsr _dl_call_pltexit - lea 16(%sp), %sp - cfi_adjust_cfa_offset (-16) - move.l (%sp)+, %d0 - cfi_adjust_cfa_offset (-4) - move.l (%sp)+, %d1 - cfi_adjust_cfa_offset (-4) - move.l (%sp)+, %a0 - cfi_adjust_cfa_offset (-4) -#ifdef FMOVE - FMOVE (%sp)+, %fp0 - cfi_adjust_cfa_offset (-FPSPACE) -#endif - lea 20(%sp), %sp - cfi_adjust_cfa_offset (-20) - rts - cfi_endproc - .size _dl_runtime_profile, . - _dl_runtime_profile diff --git a/ports/sysdeps/m68k/ffs.c b/ports/sysdeps/m68k/ffs.c deleted file mode 100644 index 633c0012cb..0000000000 --- a/ports/sysdeps/m68k/ffs.c +++ /dev/null @@ -1,48 +0,0 @@ -/* ffs -- find first set bit in a word, counted from least significant end. - For mc68020, mc68030, mc68040. - This file is part of the GNU C Library. - Copyright (C) 1991-2014 Free Software Foundation, Inc. - Contributed by Torbjorn Granlund (tege@sics.se). - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#define ffsl __something_else -#include <string.h> - -#undef ffs - -#if defined (__GNUC__) && defined (__mc68020__) - -int -__ffs (x) - int x; -{ - int cnt; - - asm ("bfffo %1{#0:#0},%0" : "=d" (cnt) : "dm" (x & -x)); - - return 32 - cnt; -} -weak_alias (__ffs, ffs) -libc_hidden_def (__ffs) -libc_hidden_builtin_def (ffs) -#undef ffsl -weak_alias (__ffs, ffsl) - -#else - -#include <string/ffs.c> - -#endif diff --git a/ports/sysdeps/m68k/fpu/bits/fenv.h b/ports/sysdeps/m68k/fpu/bits/fenv.h deleted file mode 100644 index e16412514f..0000000000 --- a/ports/sysdeps/m68k/fpu/bits/fenv.h +++ /dev/null @@ -1,87 +0,0 @@ -/* Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef _FENV_H -# error "Never use <bits/fenv.h> directly; include <fenv.h> instead." -#endif - - -/* Define bits representing the exception. We use the bit positions of - the appropriate bits in the FPSR Accrued Exception Byte. */ -enum - { - FE_INEXACT = -#define FE_INEXACT (1 << 3) - FE_INEXACT, - FE_DIVBYZERO = -#define FE_DIVBYZERO (1 << 4) - FE_DIVBYZERO, - FE_UNDERFLOW = -#define FE_UNDERFLOW (1 << 5) - FE_UNDERFLOW, - FE_OVERFLOW = -#define FE_OVERFLOW (1 << 6) - FE_OVERFLOW, - FE_INVALID = -#define FE_INVALID (1 << 7) - FE_INVALID - }; - -#define FE_ALL_EXCEPT \ - (FE_INEXACT | FE_DIVBYZERO | FE_UNDERFLOW | FE_OVERFLOW | FE_INVALID) - -/* The m68k FPU supports all of the four defined rounding modes. We use - the bit positions in the FPCR Mode Control Byte as the values for the - appropriate macros. */ -enum - { - FE_TONEAREST = -#define FE_TONEAREST 0 - FE_TONEAREST, - FE_TOWARDZERO = -#define FE_TOWARDZERO (1 << 4) - FE_TOWARDZERO, - FE_DOWNWARD = -#define FE_DOWNWARD (2 << 4) - FE_DOWNWARD, - FE_UPWARD = -#define FE_UPWARD (3 << 4) - FE_UPWARD - }; - - -/* Type representing exception flags. */ -typedef unsigned int fexcept_t; - - -/* Type representing floating-point environment. This structure - corresponds to the layout of the block written by `fmovem'. */ -typedef struct - { - unsigned int __control_register; - unsigned int __status_register; - unsigned int __instruction_address; - } -fenv_t; - -/* If the default argument is used we use this value. */ -#define FE_DFL_ENV ((const fenv_t *) -1) - -#ifdef __USE_GNU -/* Floating-point environment where none of the exceptions are masked. */ -# define FE_NOMASK_ENV ((const fenv_t *) -2) -#endif diff --git a/ports/sysdeps/m68k/fpu/fclrexcpt.c b/ports/sysdeps/m68k/fpu/fclrexcpt.c deleted file mode 100644 index 16836f8f5c..0000000000 --- a/ports/sysdeps/m68k/fpu/fclrexcpt.c +++ /dev/null @@ -1,50 +0,0 @@ -/* Clear given exceptions in current floating-point environment. - Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <fenv.h> - -int -__feclearexcept (int excepts) -{ - fexcept_t fpsr; - - /* Mask out unsupported bits/exceptions. */ - excepts &= FE_ALL_EXCEPT; - - /* Fetch the fpu status register. */ - __asm__ ("fmove%.l %/fpsr,%0" : "=dm" (fpsr)); - - /* Clear the relevant bits. */ - fpsr &= ~excepts; - - /* Put the new data in effect. */ - __asm__ __volatile__ ("fmove%.l %0,%/fpsr" : : "dm" (fpsr)); - - /* Success. */ - return 0; -} - -#include <shlib-compat.h> -#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) -strong_alias (__feclearexcept, __old_feclearexcept) -compat_symbol (libm, __old_feclearexcept, feclearexcept, GLIBC_2_1); -#endif - -libm_hidden_ver (__feclearexcept, feclearexcept) -versioned_symbol (libm, __feclearexcept, feclearexcept, GLIBC_2_2); diff --git a/ports/sysdeps/m68k/fpu/fedisblxcpt.c b/ports/sysdeps/m68k/fpu/fedisblxcpt.c deleted file mode 100644 index 4916bd6e38..0000000000 --- a/ports/sysdeps/m68k/fpu/fedisblxcpt.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Disable floating-point exceptions. - Copyright (C) 2000-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@suse.de>, 2000. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <fenv.h> - -int -fedisableexcept (int excepts) -{ - unsigned int old_exc, new_exc; - - /* Get the current control register contents. */ - __asm__ ("fmove%.l %!,%0" : "=dm" (new_exc)); - - old_exc = (new_exc >> 6) & FE_ALL_EXCEPT; - - excepts &= FE_ALL_EXCEPT; - - new_exc &= ~(excepts << 6); - __asm__ ("fmove%.l %0,%!" : : "dm" (new_exc)); - - return old_exc; -} diff --git a/ports/sysdeps/m68k/fpu/feenablxcpt.c b/ports/sysdeps/m68k/fpu/feenablxcpt.c deleted file mode 100644 index 4e7825b034..0000000000 --- a/ports/sysdeps/m68k/fpu/feenablxcpt.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Enable floating-point exceptions. - Copyright (C) 2000-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@suse.de>, 2000. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <fenv.h> - -int -feenableexcept (int excepts) -{ - unsigned int new_exc, old_exc; - - /* Get the current control register contents. */ - __asm__ ("fmove%.l %!,%0" : "=dm" (new_exc)); - - old_exc = (new_exc >> 6) & FE_ALL_EXCEPT; - - excepts &= FE_ALL_EXCEPT; - - new_exc |= excepts << 6; - __asm__ ("fmove%.l %0,%!" : : "dm" (new_exc)); - - return old_exc; -} diff --git a/ports/sysdeps/m68k/fpu/fegetenv.c b/ports/sysdeps/m68k/fpu/fegetenv.c deleted file mode 100644 index 7feac6426f..0000000000 --- a/ports/sysdeps/m68k/fpu/fegetenv.c +++ /dev/null @@ -1,44 +0,0 @@ -/* Store current floating-point environment. - Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <fenv.h> - -int -__fegetenv (fenv_t *envp) -{ -#ifdef __mcoldfire__ - __asm__ ("fmove%.l %/fpcr,%0" : "=dm" (envp->__control_register)); - __asm__ ("fmove%.l %/fpsr,%0" : "=dm" (envp->__status_register)); - __asm__ ("fmove%.l %/fpiar,%0" : "=dm" (envp->__instruction_address)); -#else - __asm__ ("fmovem%.l %/fpcr/%/fpsr/%/fpiar,%0" : "=m" (*envp)); -#endif - - /* Success. */ - return 0; -} - -#include <shlib-compat.h> -#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) -strong_alias (__fegetenv, __old_fegetenv) -compat_symbol (libm, __old_fegetenv, fegetenv, GLIBC_2_1); -#endif - -libm_hidden_ver (__fegetenv, fegetenv) -versioned_symbol (libm, __fegetenv, fegetenv, GLIBC_2_2); diff --git a/ports/sysdeps/m68k/fpu/fegetexcept.c b/ports/sysdeps/m68k/fpu/fegetexcept.c deleted file mode 100644 index e3b43d4faf..0000000000 --- a/ports/sysdeps/m68k/fpu/fegetexcept.c +++ /dev/null @@ -1,31 +0,0 @@ -/* Get enabled floating-point exceptions. - Copyright (C) 2000-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@suse.de>, 2000. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <fenv.h> - -int -fegetexcept (void) -{ - unsigned int exc; - - /* Get the current control register contents. */ - __asm__ ("fmove%.l %!,%0" : "=dm" (exc)); - - return (exc >> 6) & FE_ALL_EXCEPT; -} diff --git a/ports/sysdeps/m68k/fpu/fegetround.c b/ports/sysdeps/m68k/fpu/fegetround.c deleted file mode 100644 index b4f0802cb3..0000000000 --- a/ports/sysdeps/m68k/fpu/fegetround.c +++ /dev/null @@ -1,31 +0,0 @@ -/* Return current rounding direction. - Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <fenv.h> - -int -fegetround (void) -{ - int fpcr; - - __asm__ ("fmove%.l %!,%0" : "=dm" (fpcr)); - - return fpcr & FE_UPWARD; -} -libm_hidden_def (fegetround) diff --git a/ports/sysdeps/m68k/fpu/feholdexcpt.c b/ports/sysdeps/m68k/fpu/feholdexcpt.c deleted file mode 100644 index ad9ca0c1f1..0000000000 --- a/ports/sysdeps/m68k/fpu/feholdexcpt.c +++ /dev/null @@ -1,45 +0,0 @@ -/* Store current floating-point environment and clear exceptions. - Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <fenv.h> - -int -feholdexcept (fenv_t *envp) -{ - fexcept_t fpcr, fpsr; - - /* Store the environment. */ -#ifdef __mcoldfire__ - __asm__ ("fmove%.l %/fpcr,%0" : "=dm" (envp->__control_register)); - __asm__ ("fmove%.l %/fpsr,%0" : "=dm" (envp->__status_register)); - __asm__ ("fmove%.l %/fpiar,%0" : "=dm" (envp->__instruction_address)); -#else - __asm__ ("fmovem%.l %/fpcr/%/fpsr/%/fpiar,%0" : "=m" (*envp)); -#endif - - /* Now clear all exceptions. */ - fpsr = envp->__status_register & ~FE_ALL_EXCEPT; - __asm__ __volatile__ ("fmove%.l %0,%/fpsr" : : "dm" (fpsr)); - /* And set all exceptions to non-stop. */ - fpcr = envp->__control_register & ~(FE_ALL_EXCEPT << 6); - __asm__ __volatile__ ("fmove%.l %0,%!" : : "dm" (fpcr)); - - return 0; -} -libm_hidden_def (feholdexcept); diff --git a/ports/sysdeps/m68k/fpu/fesetenv.c b/ports/sysdeps/m68k/fpu/fesetenv.c deleted file mode 100644 index 6d91922dec..0000000000 --- a/ports/sysdeps/m68k/fpu/fesetenv.c +++ /dev/null @@ -1,74 +0,0 @@ -/* Install given floating-point environment. - Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <fenv.h> - -int -__fesetenv (const fenv_t *envp) -{ - fenv_t temp; - - /* Install the environment specified by ENVP. But there are a few - values which we do not want to come from the saved environment. - Therefore, we get the current environment and replace the values - we want to use from the environment specified by the parameter. */ -#ifdef __mcoldfire__ - __asm__ ("fmove%.l %/fpcr,%0" : "=dm" (temp.__control_register)); - __asm__ ("fmove%.l %/fpsr,%0" : "=dm" (temp.__status_register)); - __asm__ ("fmove%.l %/fpiar,%0" : "=dm" (temp.__instruction_address)); -#else - __asm__ ("fmovem%.l %/fpcr/%/fpsr/%/fpiar,%0" : "=m" (*&temp)); -#endif - - temp.__status_register &= ~FE_ALL_EXCEPT; - temp.__control_register &= ~((FE_ALL_EXCEPT << 6) | FE_UPWARD); - if (envp == FE_DFL_ENV) - ; - else if (envp == FE_NOMASK_ENV) - temp.__control_register |= FE_ALL_EXCEPT << 6; - else - { - temp.__control_register |= (envp->__control_register - & ((FE_ALL_EXCEPT << 6) | FE_UPWARD)); - temp.__status_register |= envp->__status_register & FE_ALL_EXCEPT; - } - -#ifdef __mcoldfire__ - __asm__ __volatile__ ("fmove%.l %0,%/fpiar" - :: "dm" (temp.__instruction_address)); - __asm__ __volatile__ ("fmove%.l %0,%/fpcr" - :: "dm" (temp.__control_register)); - __asm__ __volatile__ ("fmove%.l %0,%/fpsr" - :: "dm" (temp.__status_register)); -#else - __asm__ __volatile__ ("fmovem%.l %0,%/fpcr/%/fpsr/%/fpiar" : : "m" (*&temp)); -#endif - - /* Success. */ - return 0; -} - -#include <shlib-compat.h> -#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) -strong_alias (__fesetenv, __old_fesetenv) -compat_symbol (libm, __old_fesetenv, fesetenv, GLIBC_2_1); -#endif - -libm_hidden_ver (__fesetenv, fesetenv) -versioned_symbol (libm, __fesetenv, fesetenv, GLIBC_2_2); diff --git a/ports/sysdeps/m68k/fpu/fesetround.c b/ports/sysdeps/m68k/fpu/fesetround.c deleted file mode 100644 index 0f6d6b17ba..0000000000 --- a/ports/sysdeps/m68k/fpu/fesetround.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Set current rounding direction. - Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <fenv.h> - -int -fesetround (int round) -{ - fexcept_t fpcr; - - if (round & ~FE_UPWARD) - /* ROUND is no valid rounding mode. */ - return 1; - - __asm__ ("fmove%.l %!,%0" : "=dm" (fpcr)); - fpcr &= ~FE_UPWARD; - fpcr |= round; - __asm__ __volatile__ ("fmove%.l %0,%!" : : "dm" (fpcr)); - - return 0; -} -libm_hidden_def (fesetround); diff --git a/ports/sysdeps/m68k/fpu/feupdateenv.c b/ports/sysdeps/m68k/fpu/feupdateenv.c deleted file mode 100644 index 3ed7ed00c6..0000000000 --- a/ports/sysdeps/m68k/fpu/feupdateenv.c +++ /dev/null @@ -1,50 +0,0 @@ -/* Install given floating-point environment and raise exceptions. - Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <fenv.h> - -int -__feupdateenv (const fenv_t *envp) -{ - fexcept_t fpsr; - - /* Save current exceptions. */ - __asm__ ("fmove%.l %/fpsr,%0" : "=dm" (fpsr)); - fpsr &= FE_ALL_EXCEPT; - - /* Install new environment. */ - fesetenv (envp); - - /* Raise the saved exception. Incidently for us the implementation - defined format of the values in objects of type fexcept_t is the - same as the ones specified using the FE_* constants. */ - feraiseexcept ((int) fpsr); - - /* Success. */ - return 0; -} - -#include <shlib-compat.h> -#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) -strong_alias (__feupdateenv, __old_feupdateenv) -compat_symbol (libm, __old_feupdateenv, feupdateenv, GLIBC_2_1); -#endif - -libm_hidden_ver (__feupdateenv, feupdateenv) -versioned_symbol (libm, __feupdateenv, feupdateenv, GLIBC_2_2); diff --git a/ports/sysdeps/m68k/fpu/fgetexcptflg.c b/ports/sysdeps/m68k/fpu/fgetexcptflg.c deleted file mode 100644 index b08b996be4..0000000000 --- a/ports/sysdeps/m68k/fpu/fgetexcptflg.c +++ /dev/null @@ -1,42 +0,0 @@ -/* Store current representation for exceptions. - Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <fenv.h> - -int -__fegetexceptflag (fexcept_t *flagp, int excepts) -{ - fexcept_t fpsr; - - /* Get the current exceptions. */ - __asm__ ("fmove%.l %/fpsr,%0" : "=dm" (fpsr)); - - *flagp = fpsr & excepts & FE_ALL_EXCEPT; - - /* Success. */ - return 0; -} - -#include <shlib-compat.h> -#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) -strong_alias (__fegetexceptflag, __old_fegetexceptflag) -compat_symbol (libm, __old_fegetexceptflag, fegetexceptflag, GLIBC_2_1); -#endif - -versioned_symbol (libm, __fegetexceptflag, fegetexceptflag, GLIBC_2_2); diff --git a/ports/sysdeps/m68k/fpu/fsetexcptflg.c b/ports/sysdeps/m68k/fpu/fsetexcptflg.c deleted file mode 100644 index 8c0c2b0cca..0000000000 --- a/ports/sysdeps/m68k/fpu/fsetexcptflg.c +++ /dev/null @@ -1,48 +0,0 @@ -/* Set floating-point environment exception handling. - Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <fenv.h> -#include <math.h> - -int -__fesetexceptflag (const fexcept_t *flagp, int excepts) -{ - fexcept_t fpsr; - - /* Get the current status register. */ - __asm__ ("fmove%.l %/fpsr,%0" : "=dm" (fpsr)); - - /* Install the new exception bits in the Accrued Exception Byte. */ - fpsr &= ~(excepts & FE_ALL_EXCEPT); - fpsr |= *flagp & excepts & FE_ALL_EXCEPT; - - /* Store the new status register. */ - __asm__ __volatile__ ("fmove%.l %0,%/fpsr" : : "dm" (fpsr)); - - /* Success. */ - return 0; -} - -#include <shlib-compat.h> -#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) -strong_alias (__fesetexceptflag, __old_fesetexceptflag) -compat_symbol (libm, __old_fesetexceptflag, fesetexceptflag, GLIBC_2_1); -#endif - -versioned_symbol (libm, __fesetexceptflag, fesetexceptflag, GLIBC_2_2); diff --git a/ports/sysdeps/m68k/fpu/ftestexcept.c b/ports/sysdeps/m68k/fpu/ftestexcept.c deleted file mode 100644 index 29a7a53c01..0000000000 --- a/ports/sysdeps/m68k/fpu/ftestexcept.c +++ /dev/null @@ -1,32 +0,0 @@ -/* Test exception in current environment. - Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <fenv.h> - -int -fetestexcept (int excepts) -{ - fexcept_t fpsr; - - /* Get current exceptions. */ - __asm__ ("fmove%.l %/fpsr,%0" : "=dm" (fpsr)); - - return fpsr & excepts & FE_ALL_EXCEPT; -} -libm_hidden_def (fetestexcept) diff --git a/ports/sysdeps/m68k/fpu_control.h b/ports/sysdeps/m68k/fpu_control.h deleted file mode 100644 index 56189f2d65..0000000000 --- a/ports/sysdeps/m68k/fpu_control.h +++ /dev/null @@ -1,118 +0,0 @@ -/* 68k FPU control word definitions. - Copyright (C) 1996-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef _FPU_CONTROL_H -#define _FPU_CONTROL_H - -/* - * Motorola floating point control register bits. - * - * 31-16 -> reserved (read as 0, ignored on write) - * 15 -> enable trap for BSUN exception - * 14 -> enable trap for SNAN exception - * 13 -> enable trap for OPERR exception - * 12 -> enable trap for OVFL exception - * 11 -> enable trap for UNFL exception - * 10 -> enable trap for DZ exception - * 9 -> enable trap for INEX2 exception (INEX on Coldfire) - * 8 -> enable trap for INEX1 exception (IDE on Coldfire) - * 7-6 -> Precision Control (only bit 6 is used on Coldfire) - * 5-4 -> Rounding Control - * 3-0 -> zero (read as 0, write as 0) - * - * - * Precision Control: - * 00 - round to extended precision - * 01 - round to single precision - * 10 - round to double precision - * 11 - undefined - * - * Rounding Control: - * 00 - rounding to nearest (RN) - * 01 - rounding toward zero (RZ) - * 10 - rounding (down)toward minus infinity (RM) - * 11 - rounding (up) toward plus infinity (RP) - * - * The hardware default is 0x0000. I choose 0x5400. - */ - -#include <features.h> - -#if defined (__mcoldfire__) && !defined (__mcffpu__) - -# define _FPU_RESERVED 0xffffffff -# define _FPU_DEFAULT 0x00000000 -# define _FPU_GETCW(cw) ((cw) = 0) -# define _FPU_SETCW(cw) ((void) (cw)) - -#else - -/* masking of interrupts */ -# define _FPU_MASK_BSUN 0x8000 -# define _FPU_MASK_SNAN 0x4000 -# define _FPU_MASK_OPERR 0x2000 -# define _FPU_MASK_OVFL 0x1000 -# define _FPU_MASK_UNFL 0x0800 -# define _FPU_MASK_DZ 0x0400 -# define _FPU_MASK_INEX1 0x0200 -# define _FPU_MASK_INEX2 0x0100 - -/* precision control */ -# ifdef __mcoldfire__ -# define _FPU_DOUBLE 0x00 -# else -# define _FPU_EXTENDED 0x00 /* RECOMMENDED */ -# define _FPU_DOUBLE 0x80 -# endif -# define _FPU_SINGLE 0x40 /* DO NOT USE */ - -/* rounding control */ -# define _FPU_RC_NEAREST 0x00 /* RECOMMENDED */ -# define _FPU_RC_ZERO 0x10 -# define _FPU_RC_DOWN 0x20 -# define _FPU_RC_UP 0x30 - -# ifdef __mcoldfire__ -# define _FPU_RESERVED 0xFFFF800F -# else -# define _FPU_RESERVED 0xFFFF000F /* Reserved bits in fpucr */ -# endif - - -/* Now two recommended fpucr */ - -/* The fdlibm code requires no interrupts for exceptions. Don't - change the rounding mode, it would break long double I/O! */ -# define _FPU_DEFAULT 0x00000000 - -/* IEEE: same as above, but exceptions. We must make it non-zero so - that __setfpucw works. This bit will be ignored. */ -# define _FPU_IEEE 0x00000001 - -/* Macros for accessing the hardware control word. */ -# define _FPU_GETCW(cw) __asm__ ("fmove%.l %!, %0" : "=dm" (cw)) -# define _FPU_SETCW(cw) __asm__ volatile ("fmove%.l %0, %!" : : "dm" (cw)) -#endif - -/* Type of the control word. */ -typedef unsigned int fpu_control_t __attribute__ ((__mode__ (__SI__))); - -/* Default control word set at startup. */ -extern fpu_control_t __fpu_control; - -#endif /* _M68K_FPU_CONTROL_H */ diff --git a/ports/sysdeps/m68k/gccframe.h b/ports/sysdeps/m68k/gccframe.h deleted file mode 100644 index 706b61a27b..0000000000 --- a/ports/sysdeps/m68k/gccframe.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Definition of object in frame unwind info. m68k version. - Copyright (C) 2001-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#define FIRST_PSEUDO_REGISTER 24 - -#include <sysdeps/generic/gccframe.h> diff --git a/ports/sysdeps/m68k/jmpbuf-unwind.h b/ports/sysdeps/m68k/jmpbuf-unwind.h deleted file mode 100644 index 8739abbf95..0000000000 --- a/ports/sysdeps/m68k/jmpbuf-unwind.h +++ /dev/null @@ -1,45 +0,0 @@ -/* Examine __jmp_buf for unwinding frames. m68k version. - Copyright (C) 2006-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <setjmp.h> -#include <stdint.h> -#include <unwind.h> - -/* Test if longjmp to JMPBUF would unwind the frame - containing a local variable at ADDRESS. */ -#define _JMPBUF_UNWINDS(jmpbuf, address, demangle) \ - ((void *) (address) < (void *) demangle ((jmpbuf)->__sp)) - -#define _JMPBUF_CFA_UNWINDS_ADJ(_jmpbuf, _context, _adj) \ - _JMPBUF_UNWINDS_ADJ (_jmpbuf, (void *) _Unwind_GetCFA (_context), _adj) - -static inline uintptr_t __attribute__ ((unused)) -_jmpbuf_sp (__jmp_buf regs) -{ - uintptr_t sp = regs[0].__sp; -#ifdef PTR_DEMANGLE - PTR_DEMANGLE (sp); -#endif - return sp; -} - -#define _JMPBUF_UNWINDS_ADJ(_jmpbuf, _address, _adj) \ - ((uintptr_t) (_address) - (_adj) < _jmpbuf_sp (_jmpbuf) - (_adj)) - -/* We use the normal longjmp for unwinding. */ -#define __libc_unwind_longjmp(buf, val) __libc_longjmp (buf, val) diff --git a/ports/sysdeps/m68k/ldsodefs.h b/ports/sysdeps/m68k/ldsodefs.h deleted file mode 100644 index b73bf21f08..0000000000 --- a/ports/sysdeps/m68k/ldsodefs.h +++ /dev/null @@ -1,42 +0,0 @@ -/* Run-time dynamic linker data structures for loaded ELF shared objects. - Copyright (C) 2006-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef __LDSODEFS_H - -#include <elf.h> - -struct La_m68k_regs; -struct La_m68k_retval; - -#define ARCH_PLTENTER_MEMBERS \ - Elf32_Addr (*m68k_gnu_pltenter) (Elf32_Sym *, unsigned int, \ - uintptr_t *, uintptr_t *, \ - struct La_m68k_regs *, \ - unsigned int *, const char *name, \ - long int *framesizep); - -#define ARCH_PLTEXIT_MEMBERS \ - unsigned int (*m68k_gnu_pltexit) (Elf32_Sym *, unsigned int, \ - uintptr_t *, uintptr_t *, \ - const struct La_m68k_regs *, \ - struct La_m68k_retval *, \ - const char *); - -#include_next <ldsodefs.h> - -#endif diff --git a/ports/sysdeps/m68k/libc-tls.c b/ports/sysdeps/m68k/libc-tls.c deleted file mode 100644 index 300efcf98b..0000000000 --- a/ports/sysdeps/m68k/libc-tls.c +++ /dev/null @@ -1,33 +0,0 @@ -/* Thread-local storage handling in the ELF dynamic linker. m68k version. - Copyright (C) 2010-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Maxim Kuvyrkov <maxim@codesourcery.com>, 2010. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <csu/libc-tls.c> -#include <dl-tls.h> - -/* On M68K, linker optimizations are not required, so __tls_get_addr - can be called even in statically linked binaries. In this case module - must be always 1 and PT_TLS segment exist in the binary, otherwise it - would not link. */ - -void * -__tls_get_addr (tls_index *ti) -{ - dtv_t *dtv = THREAD_DTV (); - return (char *) dtv[1].pointer.val + GET_ADDR_OFFSET; -} diff --git a/ports/sysdeps/m68k/m680x0/Implies b/ports/sysdeps/m68k/m680x0/Implies deleted file mode 100644 index abf356d9e8..0000000000 --- a/ports/sysdeps/m68k/m680x0/Implies +++ /dev/null @@ -1 +0,0 @@ -ieee754/ldbl-96 diff --git a/ports/sysdeps/m68k/m680x0/Makefile b/ports/sysdeps/m68k/m680x0/Makefile deleted file mode 100644 index 582fa6f900..0000000000 --- a/ports/sysdeps/m68k/m680x0/Makefile +++ /dev/null @@ -1,2 +0,0 @@ -# The 68k `long double' is a distinct type we support. -long-double-fcts = yes diff --git a/ports/sysdeps/m68k/m680x0/add_n.S b/ports/sysdeps/m68k/m680x0/add_n.S deleted file mode 100644 index 370e993fbb..0000000000 --- a/ports/sysdeps/m68k/m680x0/add_n.S +++ /dev/null @@ -1,82 +0,0 @@ -/* mc68020 __mpn_add_n -- Add two limb vectors of the same length > 0 and store - sum in a third limb vector. - -Copyright (C) 1992-2014 Free Software Foundation, Inc. - -This file is part of the GNU MP Library. - -The GNU MP Library is free software; you can redistribute it and/or modify -it under the terms of the GNU Lesser General Public License as published by -the Free Software Foundation; either version 2.1 of the License, or (at your -option) any later version. - -The GNU MP Library is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public -License for more details. - -You should have received a copy of the GNU Lesser General Public License -along with the GNU MP Library. If not, see <http://www.gnu.org/licenses/>. */ - -/* - INPUT PARAMETERS - res_ptr (sp + 4) - s1_ptr (sp + 8) - s2_ptr (sp + 16) - size (sp + 12) -*/ - -#include "sysdep.h" -#include "asm-syntax.h" - - TEXT -ENTRY(__mpn_add_n) -/* Save used registers on the stack. */ - movel R(d2),MEM_PREDEC(sp) - cfi_adjust_cfa_offset (4) - movel R(a2),MEM_PREDEC(sp) - cfi_adjust_cfa_offset (4) - cfi_rel_offset (R(d2), 4) - cfi_rel_offset (R(a2), 0) - -/* Copy the arguments to registers. Better use movem? */ - movel MEM_DISP(sp,12),R(a2) - movel MEM_DISP(sp,16),R(a0) - movel MEM_DISP(sp,20),R(a1) - movel MEM_DISP(sp,24),R(d2) - - eorw #1,R(d2) - lsrl #1,R(d2) - bcc L(L1) - subql #1,R(d2) /* clears cy as side effect */ - -L(Loop:) - movel MEM_POSTINC(a0),R(d0) - movel MEM_POSTINC(a1),R(d1) - addxl R(d1),R(d0) - movel R(d0),MEM_POSTINC(a2) -L(L1:) movel MEM_POSTINC(a0),R(d0) - movel MEM_POSTINC(a1),R(d1) - addxl R(d1),R(d0) - movel R(d0),MEM_POSTINC(a2) - - dbf R(d2),L(Loop) /* loop until 16 lsb of %4 == -1 */ - subxl R(d0),R(d0) /* d0 <= -cy; save cy as 0 or -1 in d0 */ - subl #0x10000,R(d2) - bcs L(L2) - addl R(d0),R(d0) /* restore cy */ - bra L(Loop) - -L(L2:) - negl R(d0) - -/* Restore used registers from stack frame. */ - movel MEM_POSTINC(sp),R(a2) - cfi_adjust_cfa_offset (-4) - cfi_restore (R(a2)) - movel MEM_POSTINC(sp),R(d2) - cfi_adjust_cfa_offset (-4) - cfi_restore (R(d2)) - - rts -END(__mpn_add_n) diff --git a/ports/sysdeps/m68k/m680x0/bits/huge_vall.h b/ports/sysdeps/m68k/m680x0/bits/huge_vall.h deleted file mode 100644 index f1a1614c35..0000000000 --- a/ports/sysdeps/m68k/m680x0/bits/huge_vall.h +++ /dev/null @@ -1,41 +0,0 @@ -/* `HUGE_VALL' constant for m68k (where it is infinity). - Used by <stdlib.h> and <math.h> functions for overflow. - Copyright (C) 1992-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef _MATH_H -# error "Never use <bits/huge_val.h> directly; include <math.h> instead." -#endif - -#if __GNUC_PREREQ(3,3) -# define HUGE_VALL (__builtin_huge_vall ()) -#elif __GNUC_PREREQ(2,96) -# define HUGE_VALL (__extension__ 0x1.0p32767L) -#elif defined__GNUC__ - -# define HUGE_VALL \ - (__extension__ \ - ((union { unsigned long __l[3]; long double __ld; }) \ - { __l: { 0x7fff0000UL, 0x80000000UL, 0UL } }).__ld) - -#else /* not GCC */ - -static union { unsigned char __c[12]; long double __ld; } __huge_vall = - { { 0x7f, 0xff, 0, 0, 0x80, 0, 0, 0, 0, 0, 0, 0 } }; -# define HUGE_VALL (__huge_vall.__ld) - -#endif /* GCC 2.95. */ diff --git a/ports/sysdeps/m68k/m680x0/bits/mathdef.h b/ports/sysdeps/m68k/m680x0/bits/mathdef.h deleted file mode 100644 index c13e53bf31..0000000000 --- a/ports/sysdeps/m68k/m680x0/bits/mathdef.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#if !defined _MATH_H && !defined _COMPLEX_H -# error "Never use <bits/mathdef.h> directly; include <math.h> instead" -#endif - -#if defined __USE_ISOC99 && defined _MATH_H && !defined _MATH_H_MATHDEF -# define _MATH_H_MATHDEF 1 - -/* The m68k FPUs evaluate all values in the 96 bit floating-point format - which is also available for the user as `long double'. Therefore we - define: */ -typedef long double float_t; /* `float' expressions are evaluated as - `long double'. */ -typedef long double double_t; /* `double' expressions are evaluated as - `long double'. */ - -/* The values returned by `ilogb' for 0 and NaN respectively. */ -# define FP_ILOGB0 (-2147483647 - 1) -# define FP_ILOGBNAN (2147483647) - -#endif /* ISO C99 */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/bits/mathinline.h b/ports/sysdeps/m68k/m680x0/fpu/bits/mathinline.h deleted file mode 100644 index e609eb5c1b..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/bits/mathinline.h +++ /dev/null @@ -1,443 +0,0 @@ -/* Definitions of inline math functions implemented by the m68881/2. - Copyright (C) 1991-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef _MATH_H -# error "Never use <bits/mathinline.h> directly; include <math.h> instead." -#endif - -#ifndef __extern_inline -# define __MATH_INLINE __inline -#else -# define __MATH_INLINE __extern_inline -#endif - -#ifdef __GNUC__ - -#ifdef __USE_ISOC99 -/* GCC 3.1 and up have builtins that actually can be used. */ -# if !__GNUC_PREREQ (3,1) -/* ISO C99 defines some macros to perform unordered comparisons. The - m68k FPU supports this with special opcodes and we should use them. - These must not be inline functions since we have to be able to handle - all floating-point types. */ -# undef isgreater -# undef isgreaterequal -# undef isless -# undef islessequal -# undef islessgreater -# undef isunordered -# define isgreater(x, y) \ - __extension__ \ - ({ char __result; \ - __asm__ ("fcmp%.x %2,%1; fsogt %0" \ - : "=dm" (__result) : "f" (x), "f" (y)); \ - __result != 0; }) - -# define isgreaterequal(x, y) \ - __extension__ \ - ({ char __result; \ - __asm__ ("fcmp%.x %2,%1; fsoge %0" \ - : "=dm" (__result) : "f" (x), "f" (y)); \ - __result != 0; }) - -# define isless(x, y) \ - __extension__ \ - ({ char __result; \ - __asm__ ("fcmp%.x %2,%1; fsolt %0" \ - : "=dm" (__result) : "f" (x), "f" (y)); \ - __result != 0; }) - -# define islessequal(x, y) \ - __extension__ \ - ({ char __result; \ - __asm__ ("fcmp%.x %2,%1; fsole %0" \ - : "=dm" (__result) : "f" (x), "f" (y)); \ - __result != 0; }) - -# define islessgreater(x, y) \ - __extension__ \ - ({ char __result; \ - __asm__ ("fcmp%.x %2,%1; fsogl %0" \ - : "=dm" (__result) : "f" (x), "f" (y)); \ - __result != 0; }) - -# define isunordered(x, y) \ - __extension__ \ - ({ char __result; \ - __asm__ ("fcmp%.x %2,%1; fsun %0" \ - : "=dm" (__result) : "f" (x), "f" (y)); \ - __result != 0; }) -# endif /* GCC 3.1 */ - -/* Test for negative number. Used in the signbit() macro. */ -__MATH_INLINE int -__NTH (__signbitf (float __x)) -{ - __extension__ union { float __f; int __i; } __u = { __f: __x }; - return __u.__i < 0; -} -__MATH_INLINE int -__NTH (__signbit (double __x)) -{ - __extension__ union { double __d; int __i[2]; } __u = { __d: __x }; - return __u.__i[0] < 0; -} -__MATH_INLINE int -__NTH (__signbitl (long double __x)) -{ - __extension__ union { long double __d; int __i[3]; } __u = { __d: __x }; - return __u.__i[0] < 0; -} -#endif - - -#if (!defined __NO_MATH_INLINES && defined __OPTIMIZE__) \ - || defined __LIBC_INTERNAL_MATH_INLINES - -#ifdef __LIBC_INTERNAL_MATH_INLINES -/* This is used when defining the functions themselves. Define them with - __ names, and with `static inline' instead of `extern inline' so the - bodies will always be used, never an external function call. */ -# define __m81_u(x) __CONCAT(__,x) -# define __m81_inline static __inline -#else -# define __m81_u(x) x -# define __m81_inline __MATH_INLINE -# define __M81_MATH_INLINES 1 -#endif - -/* Define a const math function. */ -#define __m81_defun(rettype, func, args) \ - __m81_inline rettype __attribute__((__const__)) \ - __NTH (__m81_u(func) args) - -/* Define the three variants of a math function that has a direct - implementation in the m68k fpu. FUNC is the name for C (which will be - suffixed with f and l for the float and long double version, resp). OP - is the name of the fpu operation (without leading f). */ - -#if defined __USE_MISC || defined __USE_ISOC99 -# define __inline_mathop(func, op) \ - __inline_mathop1(double, func, op) \ - __inline_mathop1(float, __CONCAT(func,f), op) \ - __inline_mathop1(long double, __CONCAT(func,l), op) -#else -# define __inline_mathop(func, op) \ - __inline_mathop1(double, func, op) -#endif - -#define __inline_mathop1(float_type,func, op) \ - __m81_defun (float_type, func, (float_type __mathop_x)) \ - { \ - float_type __result; \ - __asm __volatile__ ("f" __STRING(op) "%.x %1, %0" \ - : "=f" (__result) : "f" (__mathop_x)); \ - return __result; \ - } - -__inline_mathop(__atan, atan) -__inline_mathop(__cos, cos) -__inline_mathop(__sin, sin) -__inline_mathop(__tan, tan) -__inline_mathop(__tanh, tanh) -__inline_mathop(__fabs, abs) - -#if defined __USE_MISC || defined __USE_XOPEN_EXTENDED || defined __USE_ISOC99 -__inline_mathop(__rint, int) -__inline_mathop(__expm1, etoxm1) -__inline_mathop(__log1p, lognp1) -#endif - -#ifdef __USE_MISC -__inline_mathop(__significand, getman) -#endif - -#ifdef __USE_ISOC99 -__inline_mathop(__trunc, intrz) -#endif - -#if !defined __NO_MATH_INLINES && defined __OPTIMIZE__ - -__inline_mathop(atan, atan) -__inline_mathop(tanh, tanh) - -# if defined __USE_MISC || defined __USE_XOPEN_EXTENDED || defined __USE_ISOC99 -__inline_mathop(rint, int) -__inline_mathop(log1p, lognp1) -# endif - -# ifdef __USE_MISC -__inline_mathop(significand, getman) -# endif - -# ifdef __USE_ISOC99 -__inline_mathop(trunc, intrz) -# endif - -#endif /* !__NO_MATH_INLINES && __OPTIMIZE__ */ - -/* This macro contains the definition for the rest of the inline - functions, using FLOAT_TYPE as the domain type and S as the suffix - for the function names. */ - -#define __inline_functions(float_type, s) \ -__m81_defun (float_type, __CONCAT(__floor,s), (float_type __x)) \ -{ \ - float_type __result; \ - unsigned long int __ctrl_reg; \ - __asm __volatile__ ("fmove%.l %!, %0" : "=dm" (__ctrl_reg)); \ - /* Set rounding towards negative infinity. */ \ - __asm __volatile__ ("fmove%.l %0, %!" : /* No outputs. */ \ - : "dmi" ((__ctrl_reg & ~0x10) | 0x20)); \ - /* Convert X to an integer, using -Inf rounding. */ \ - __asm __volatile__ ("fint%.x %1, %0" : "=f" (__result) : "f" (__x)); \ - /* Restore the previous rounding mode. */ \ - __asm __volatile__ ("fmove%.l %0, %!" : /* No outputs. */ \ - : "dmi" (__ctrl_reg)); \ - return __result; \ -} \ - \ -__m81_defun (float_type, __CONCAT(__ceil,s), (float_type __x)) \ -{ \ - float_type __result; \ - unsigned long int __ctrl_reg; \ - __asm __volatile__ ("fmove%.l %!, %0" : "=dm" (__ctrl_reg)); \ - /* Set rounding towards positive infinity. */ \ - __asm __volatile__ ("fmove%.l %0, %!" : /* No outputs. */ \ - : "dmi" (__ctrl_reg | 0x30)); \ - /* Convert X to an integer, using +Inf rounding. */ \ - __asm __volatile__ ("fint%.x %1, %0" : "=f" (__result) : "f" (__x)); \ - /* Restore the previous rounding mode. */ \ - __asm __volatile__ ("fmove%.l %0, %!" : /* No outputs. */ \ - : "dmi" (__ctrl_reg)); \ - return __result; \ -} - -__inline_functions(double,) -#if defined __USE_MISC || defined __USE_ISOC99 -__inline_functions(float,f) -__inline_functions(long double,l) -#endif -#undef __inline_functions - -#ifdef __USE_MISC - -# define __inline_functions(float_type, s) \ -__m81_defun (int, __CONCAT(__isinf,s), (float_type __value)) \ -{ \ - /* There is no branch-condition for infinity, \ - so we must extract and examine the condition codes manually. */ \ - unsigned long int __fpsr; \ - __asm ("ftst%.x %1\n" \ - "fmove%.l %/fpsr, %0" : "=dm" (__fpsr) : "f" (__value)); \ - return (__fpsr & (2 << 24)) ? (__fpsr & (8 << 24) ? -1 : 1) : 0; \ -} \ - \ -__m81_defun (int, __CONCAT(__finite,s), (float_type __value)) \ -{ \ - /* There is no branch-condition for infinity, so we must extract and \ - examine the condition codes manually. */ \ - unsigned long int __fpsr; \ - __asm ("ftst%.x %1\n" \ - "fmove%.l %/fpsr, %0" : "=dm" (__fpsr) : "f" (__value)); \ - return (__fpsr & (3 << 24)) == 0; \ -} \ - \ -__m81_defun (float_type, __CONCAT(__scalbn,s), \ - (float_type __x, int __n)) \ -{ \ - float_type __result; \ - __asm __volatile__ ("fscale%.l %1, %0" : "=f" (__result) \ - : "dmi" (__n), "0" (__x)); \ - return __result; \ -} - -__inline_functions(double,) -__inline_functions(float,f) -__inline_functions(long double,l) -# undef __inline_functions - -#endif /* Use misc. */ - -#if defined __USE_MISC || defined __USE_XOPEN - -# define __inline_functions(float_type, s) \ -__m81_defun (int, __CONCAT(__isnan,s), (float_type __value)) \ -{ \ - char __result; \ - __asm ("ftst%.x %1\n" \ - "fsun %0" : "=dm" (__result) : "f" (__value)); \ - return __result; \ -} - -__inline_functions(double,) -# ifdef __USE_MISC -__inline_functions(float,f) -__inline_functions(long double,l) -# endif -# undef __inline_functions - -#endif - -#ifdef __USE_ISOC99 - -# define __inline_functions(float_type, s) \ -__m81_defun (float_type, __CONCAT(__scalbln,s), \ - (float_type __x, long int __n)) \ -{ \ - return __CONCAT(__scalbn,s) (__x, __n); \ -} \ - \ -__m81_defun (float_type, __CONCAT(__nearbyint,s), (float_type __x)) \ -{ \ - float_type __result; \ - unsigned long int __ctrl_reg; \ - __asm __volatile__ ("fmove%.l %!, %0" : "=dm" (__ctrl_reg)); \ - /* Temporarily disable the inexact exception. */ \ - __asm __volatile__ ("fmove%.l %0, %!" : /* No outputs. */ \ - : "dmi" (__ctrl_reg & ~0x200)); \ - __asm __volatile__ ("fint%.x %1, %0" : "=f" (__result) : "f" (__x)); \ - __asm __volatile__ ("fmove%.l %0, %!" : /* No outputs. */ \ - : "dmi" (__ctrl_reg)); \ - return __result; \ -} \ - \ -__m81_defun (long int, __CONCAT(__lrint,s), (float_type __x)) \ -{ \ - long int __result; \ - __asm __volatile__ ("fmove%.l %1, %0" : "=dm" (__result) : "f" (__x)); \ - return __result; \ -} - -__inline_functions (double,) -__inline_functions (float,f) -__inline_functions (long double,l) -# undef __inline_functions - -#endif /* Use ISO C9x */ - -#ifdef __USE_GNU - -# define __inline_functions(float_type, s) \ -__m81_inline void \ -__NTH (__m81_u(__CONCAT(__sincos,s))(float_type __x, float_type *__sinx, \ - float_type *__cosx)) \ -{ \ - __asm __volatile__ ("fsincos%.x %2,%1:%0" \ - : "=f" (*__sinx), "=f" (*__cosx) : "f" (__x)); \ -} - -__inline_functions (double,) -__inline_functions (float,f) -__inline_functions (long double,l) -# undef __inline_functions - -#endif - -#if !defined __NO_MATH_INLINES && defined __OPTIMIZE__ - -/* Define inline versions of the user visible functions. */ - -/* Note that there must be no whitespace before the argument passed for - NAME, to make token pasting work correctly with -traditional. */ -# define __inline_forward_c(rettype, name, args1, args2) \ -__MATH_INLINE rettype __attribute__((__const__)) \ -__NTH (name args1) \ -{ \ - return __CONCAT(__,name) args2; \ -} - -# define __inline_forward(rettype, name, args1, args2) \ -__MATH_INLINE rettype __NTH (name args1) \ -{ \ - return __CONCAT(__,name) args2; \ -} - -__inline_forward_c(double,floor, (double __x), (__x)) -__inline_forward_c(double,ceil, (double __x), (__x)) -# ifdef __USE_MISC -# ifndef __USE_ISOC99 /* Conflict with macro of same name. */ -__inline_forward_c(int,isinf, (double __value), (__value)) -# endif -__inline_forward_c(int,finite, (double __value), (__value)) -__inline_forward_c(double,scalbn, (double __x, int __n), (__x, __n)) -# endif -# if defined __USE_MISC || defined __USE_XOPEN -# ifndef __USE_ISOC99 /* Conflict with macro of same name. */ -__inline_forward_c(int,isnan, (double __value), (__value)) -# endif -# endif -# ifdef __USE_ISOC99 -__inline_forward_c(double,scalbln, (double __x, long int __n), (__x, __n)) -__inline_forward_c(double,nearbyint, (double __value), (__value)) -__inline_forward_c(long int,lrint, (double __value), (__value)) -# endif -# ifdef __USE_GNU -__inline_forward(void,sincos, (double __x, double *__sinx, double *__cosx), - (__x, __sinx, __cosx)) -# endif - -# if defined __USE_MISC || defined __USE_ISOC99 - -__inline_forward_c(float,floorf, (float __x), (__x)) -__inline_forward_c(float,ceilf, (float __x), (__x)) -# ifdef __USE_MISC -__inline_forward_c(int,isinff, (float __value), (__value)) -__inline_forward_c(int,finitef, (float __value), (__value)) -__inline_forward_c(float,scalbnf, (float __x, int __n), (__x, __n)) -__inline_forward_c(int,isnanf, (float __value), (__value)) -# endif -# ifdef __USE_ISOC99 -__inline_forward_c(float,scalblnf, (float __x, long int __n), (__x, __n)) -__inline_forward_c(float,nearbyintf, (float __value), (__value)) -__inline_forward_c(long int,lrintf, (float __value), (__value)) -# endif -# ifdef __USE_GNU -__inline_forward(void,sincosf, (float __x, float *__sinx, float *__cosx), - (__x, __sinx, __cosx)) -# endif - -__inline_forward_c(long double,floorl, (long double __x), (__x)) -__inline_forward_c(long double,ceill, (long double __x), (__x)) -# ifdef __USE_MISC -__inline_forward_c(int,isinfl, (long double __value), (__value)) -__inline_forward_c(int,finitel, (long double __value), (__value)) -__inline_forward_c(long double,scalbnl, (long double __x, int __n), (__x, __n)) -__inline_forward_c(int,isnanl, (long double __value), (__value)) -# endif -# ifdef __USE_ISOC99 -__inline_forward_c(long double,scalblnl, (long double __x, long int __n), - (__x, __n)) -__inline_forward_c(long double,nearbyintl, (long double __value), (__value)) -__inline_forward_c(long int,lrintl, (long double __value), (__value)) -# endif -# ifdef __USE_GNU -__inline_forward(void,sincosl, - (long double __x, long double *__sinx, long double *__cosx), - (__x, __sinx, __cosx)) -# endif - -#endif /* Use misc or ISO C99 */ - -#undef __inline_forward -#undef __inline_forward_c - -#endif /* !__NO_MATH_INLINES && __OPTIMIZE__ */ - -#endif -#endif /* GCC. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/branred.c b/ports/sysdeps/m68k/m680x0/fpu/branred.c deleted file mode 100644 index 1cc8931700..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/branred.c +++ /dev/null @@ -1 +0,0 @@ -/* Not needed. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/doasin.c b/ports/sysdeps/m68k/m680x0/fpu/doasin.c deleted file mode 100644 index 1cc8931700..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/doasin.c +++ /dev/null @@ -1 +0,0 @@ -/* Not needed. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/dosincos.c b/ports/sysdeps/m68k/m680x0/fpu/dosincos.c deleted file mode 100644 index 1cc8931700..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/dosincos.c +++ /dev/null @@ -1 +0,0 @@ -/* Not needed. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_acos.c b/ports/sysdeps/m68k/m680x0/fpu/e_acos.c deleted file mode 100644 index c9234b7827..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_acos.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright (C) 1996-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <math.h> -#include <math_private.h> -#include "mathimpl.h" - -#ifndef FUNC -# define FUNC __ieee754_acos -# define FUNC_FINITE __acos_finite -#endif -#ifndef float_type -# define float_type double -#endif - -float_type -FUNC (x) - float_type x; -{ - return __m81_u(FUNC)(x); -} -#ifdef FUNC_FINITE -strong_alias (FUNC, FUNC_FINITE) -#endif diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_acosf.c b/ports/sysdeps/m68k/m680x0/fpu/e_acosf.c deleted file mode 100644 index 300fff601e..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_acosf.c +++ /dev/null @@ -1,6 +0,0 @@ -#ifndef FUNC -# define FUNC __ieee754_acosf -# define FUNC_FINITE __acosf_finite -#endif -#define float_type float -#include <e_acos.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_acosl.c b/ports/sysdeps/m68k/m680x0/fpu/e_acosl.c deleted file mode 100644 index 35767f4e23..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_acosl.c +++ /dev/null @@ -1,6 +0,0 @@ -#ifndef FUNC -# define FUNC __ieee754_acosl -# define FUNC_FINITE __acosl_finite -#endif -#define float_type long double -#include <e_acos.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_asin.c b/ports/sysdeps/m68k/m680x0/fpu/e_asin.c deleted file mode 100644 index 271a1f23d2..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_asin.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_asin -#define FUNC_FINITE __asin_finite -#include <e_acos.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_asinf.c b/ports/sysdeps/m68k/m680x0/fpu/e_asinf.c deleted file mode 100644 index ece691c6fb..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_asinf.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_asinf -#define FUNC_FINITE __asinf_finite -#include <e_acosf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_asinl.c b/ports/sysdeps/m68k/m680x0/fpu/e_asinl.c deleted file mode 100644 index 0c136f30eb..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_asinl.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_asinl -#define FUNC_FINITE __asinl_finite -#include <e_acosl.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_atan2.c b/ports/sysdeps/m68k/m680x0/fpu/e_atan2.c deleted file mode 100644 index 277a7b96a9..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_atan2.c +++ /dev/null @@ -1,104 +0,0 @@ -/* Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <math.h> -#include <math_private.h> -#include "mathimpl.h" - -#ifndef SUFF -#define SUFF -#endif -#ifndef float_type -#define float_type double -#endif - -#define CONCATX(a,b) __CONCAT(a,b) -#define s(name) CONCATX(name,SUFF) -#define m81(func) __m81_u(s(func)) - -float_type -s(__ieee754_atan2) (float_type y, float_type x) -{ - float_type pi, pi_2, z; - unsigned long y_cond, x_cond; - - __asm ("fmovecr%.x %#0, %0" : "=f" (pi)); - __asm ("fscale%.w %#-1, %0" : "=f" (pi_2) : "0" (pi)); - y_cond = __m81_test (y); - x_cond = __m81_test (x); - - if ((x_cond | y_cond) & __M81_COND_NAN) - z = x + y; - else if (y_cond & __M81_COND_ZERO) - { - if (x_cond & __M81_COND_NEG) - z = y_cond & __M81_COND_NEG ? -pi : pi; - else - z = y; - } - else if (x_cond & __M81_COND_INF) - { - if (y_cond & __M81_COND_INF) - { - float_type pi_4; - __asm ("fscale%.w %#-2, %0" : "=f" (pi_4) : "0" (pi)); - z = x_cond & __M81_COND_NEG ? 3 * pi_4 : pi_4; - } - else - z = x_cond & __M81_COND_NEG ? pi : 0; - if (y_cond & __M81_COND_NEG) - z = -z; - } - else if (y_cond & __M81_COND_INF) - z = y_cond & __M81_COND_NEG ? -pi_2 : pi_2; - else if (x_cond & __M81_COND_NEG) - { - if (y_cond & __M81_COND_NEG) - { - if (-x > -y) - z = -pi + m81(__atan) (y / x); - else - z = -pi_2 - m81(__atan) (x / y); - } - else - { - if (-x > y) - z = pi + m81(__atan) (y / x); - else - z = pi_2 - m81(__atan) (x / y); - } - } - else - { - if (y_cond & __M81_COND_NEG) - { - if (x > -y) - z = m81(__atan) (y / x); - else - z = -pi_2 - m81(__atan) (x / y); - } - else - { - if (x > y) - z = m81(__atan) (y / x); - else - z = pi_2 - m81(__atan) (x / y); - } - } - return z; -} -strong_alias (s(__ieee754_atan2), CONCATX (s (__atan2), _finite)) diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_atan2f.c b/ports/sysdeps/m68k/m680x0/fpu/e_atan2f.c deleted file mode 100644 index a0c750a759..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_atan2f.c +++ /dev/null @@ -1,3 +0,0 @@ -#define SUFF f -#define float_type float -#include <e_atan2.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_atan2l.c b/ports/sysdeps/m68k/m680x0/fpu/e_atan2l.c deleted file mode 100644 index 426ca94baa..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_atan2l.c +++ /dev/null @@ -1,3 +0,0 @@ -#define SUFF l -#define float_type long double -#include <e_atan2.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_atanh.c b/ports/sysdeps/m68k/m680x0/fpu/e_atanh.c deleted file mode 100644 index f5f7e7b520..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_atanh.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_atanh -#define FUNC_FINITE __atanh_finite -#include <e_acos.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_atanhf.c b/ports/sysdeps/m68k/m680x0/fpu/e_atanhf.c deleted file mode 100644 index cb464cbb7d..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_atanhf.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_atanhf -#define FUNC_FINITE __atanhf_finite -#include <e_acosf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_atanhl.c b/ports/sysdeps/m68k/m680x0/fpu/e_atanhl.c deleted file mode 100644 index 8f276f5fad..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_atanhl.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_atanhl -#define FUNC_FINITE __atanhl_finite -#include <e_acosl.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_cosh.c b/ports/sysdeps/m68k/m680x0/fpu/e_cosh.c deleted file mode 100644 index aaba11be3a..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_cosh.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_cosh -#define FUNC_FINITE __cosh_finite -#include <e_acos.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_coshf.c b/ports/sysdeps/m68k/m680x0/fpu/e_coshf.c deleted file mode 100644 index 0884741c5c..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_coshf.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_coshf -#define FUNC_FINITE __coshf_finite -#include <e_acosf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_coshl.c b/ports/sysdeps/m68k/m680x0/fpu/e_coshl.c deleted file mode 100644 index 7fc9b7b91c..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_coshl.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_coshl -#define FUNC_FINITE __coshl_finite -#include <e_acosl.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_exp.c b/ports/sysdeps/m68k/m680x0/fpu/e_exp.c deleted file mode 100644 index 9f228034a1..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_exp.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_exp -#define FUNC_FINITE __exp_finite -#include <e_acos.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_exp10.c b/ports/sysdeps/m68k/m680x0/fpu/e_exp10.c deleted file mode 100644 index e66a80599c..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_exp10.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_exp10 -#define FUNC_FINITE __exp10_finite -#include <e_acos.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_exp10f.c b/ports/sysdeps/m68k/m680x0/fpu/e_exp10f.c deleted file mode 100644 index 7a3bdd4186..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_exp10f.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_exp10f -#define FUNC_FINITE __exp10f_finite -#include <e_acosf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_exp10l.c b/ports/sysdeps/m68k/m680x0/fpu/e_exp10l.c deleted file mode 100644 index e2a6255a76..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_exp10l.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_exp10l -#define FUNC_FINITE __exp10l_finite -#include <e_acosl.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_exp2.c b/ports/sysdeps/m68k/m680x0/fpu/e_exp2.c deleted file mode 100644 index 35e29ae653..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_exp2.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_exp2 -#define FUNC_FINITE __exp2_finite -#include <e_acos.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_exp2f.c b/ports/sysdeps/m68k/m680x0/fpu/e_exp2f.c deleted file mode 100644 index e57ddb5365..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_exp2f.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_exp2f -#define FUNC_FINITE __exp2f_finite -#include <e_acosf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_exp2l.c b/ports/sysdeps/m68k/m680x0/fpu/e_exp2l.c deleted file mode 100644 index c5854ae427..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_exp2l.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_exp2l -#define FUNC_FINITE __exp2l_finite -#include <e_acosl.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_expf.c b/ports/sysdeps/m68k/m680x0/fpu/e_expf.c deleted file mode 100644 index af1e019504..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_expf.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_expf -#define FUNC_FINITE __expf_finite -#include <e_acosf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_expl.c b/ports/sysdeps/m68k/m680x0/fpu/e_expl.c deleted file mode 100644 index 543eb0edf5..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_expl.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_expl -#define FUNC_FINITE __expl_finite -#include <e_acosl.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_fmod.c b/ports/sysdeps/m68k/m680x0/fpu/e_fmod.c deleted file mode 100644 index 416c29f12a..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_fmod.c +++ /dev/null @@ -1,39 +0,0 @@ -/* Copyright (C) 1996-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <math.h> -#include <math_private.h> -#include "mathimpl.h" - -#ifndef FUNC -# define FUNC __ieee754_fmod -# define FUNC_FINITE __fmod_finite -#endif -#ifndef float_type -# define float_type double -#endif - -float_type -FUNC (x, y) - float_type x; - float_type y; -{ - return __m81_u(FUNC)(x, y); -} -#ifdef FUNC_FINITE -strong_alias (FUNC, FUNC_FINITE) -#endif diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_fmodf.c b/ports/sysdeps/m68k/m680x0/fpu/e_fmodf.c deleted file mode 100644 index 38995c3768..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_fmodf.c +++ /dev/null @@ -1,6 +0,0 @@ -#ifndef FUNC -# define FUNC __ieee754_fmodf -# define FUNC_FINITE __fmodf_finite -#endif -#define float_type float -#include <e_fmod.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_fmodl.c b/ports/sysdeps/m68k/m680x0/fpu/e_fmodl.c deleted file mode 100644 index 8d793b2de7..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_fmodl.c +++ /dev/null @@ -1,6 +0,0 @@ -#ifndef FUNC -# define FUNC __ieee754_fmodl -# define FUNC_FINITE __fmodl_finite -#endif -#define float_type long double -#include <e_fmod.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_ilogb.c b/ports/sysdeps/m68k/m680x0/fpu/e_ilogb.c deleted file mode 100644 index 0288ac14e9..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_ilogb.c +++ /dev/null @@ -1,47 +0,0 @@ -/* Copyright (C) 1996-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <math.h> -#include "mathimpl.h" - -#ifndef SUFF -#define SUFF -#endif -#ifndef float_type -#define float_type double -#endif - -#define CONCATX(a,b) __CONCAT(a,b) -#define s(name) CONCATX(name,SUFF) -#define m81(func) __m81_u(s(func)) - -int -s(__ieee754_ilogb) (float_type x) -{ - float_type result; - unsigned long x_cond; - - x_cond = __m81_test (x); - /* We must return consistent values for zero and NaN. */ - if (x_cond & __M81_COND_ZERO) - return FP_ILOGB0; - if (x_cond & (__M81_COND_NAN | __M81_COND_INF)) - return FP_ILOGBNAN; - - __asm ("fgetexp%.x %1, %0" : "=f" (result) : "f" (x)); - return (int) result; -} diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_ilogbf.c b/ports/sysdeps/m68k/m680x0/fpu/e_ilogbf.c deleted file mode 100644 index 34a8cd28e6..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_ilogbf.c +++ /dev/null @@ -1,3 +0,0 @@ -#define SUFF f -#define float_type float -#include <e_ilogb.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_ilogbl.c b/ports/sysdeps/m68k/m680x0/fpu/e_ilogbl.c deleted file mode 100644 index b0e13af6b1..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_ilogbl.c +++ /dev/null @@ -1,3 +0,0 @@ -#define SUFF l -#define float_type long double -#include <e_ilogb.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_log.c b/ports/sysdeps/m68k/m680x0/fpu/e_log.c deleted file mode 100644 index 628c62b31a..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_log.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_log -#define FUNC_FINITE __log_finite -#include <e_acos.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_log10.c b/ports/sysdeps/m68k/m680x0/fpu/e_log10.c deleted file mode 100644 index 78e0693e9d..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_log10.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_log10 -#define FUNC_FINITE __log10_finite -#include <e_acos.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_log10f.c b/ports/sysdeps/m68k/m680x0/fpu/e_log10f.c deleted file mode 100644 index 452a75ec15..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_log10f.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_log10f -#define FUNC_FINITE __log10f_finite -#include <e_acosf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_log10l.c b/ports/sysdeps/m68k/m680x0/fpu/e_log10l.c deleted file mode 100644 index 7c5dcb8e18..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_log10l.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_log10l -#define FUNC_FINITE __log10l_finite -#include <e_acosl.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_log2.c b/ports/sysdeps/m68k/m680x0/fpu/e_log2.c deleted file mode 100644 index a00ddbdc96..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_log2.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_log2 -#define FUNC_FINITE __log2_finite -#include <e_acos.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_log2f.c b/ports/sysdeps/m68k/m680x0/fpu/e_log2f.c deleted file mode 100644 index 670b69c8a9..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_log2f.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_log2f -#define FUNC_FINITE __log2f_finite -#include <e_acosf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_log2l.c b/ports/sysdeps/m68k/m680x0/fpu/e_log2l.c deleted file mode 100644 index 4a97a00235..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_log2l.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_log2l -#define FUNC_FINITE __log2l_finite -#include <e_acosl.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_logf.c b/ports/sysdeps/m68k/m680x0/fpu/e_logf.c deleted file mode 100644 index 1989a95431..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_logf.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_logf -#define FUNC_FINITE __logf_finite -#include <e_acosf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_logl.c b/ports/sysdeps/m68k/m680x0/fpu/e_logl.c deleted file mode 100644 index 9ab842c3fc..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_logl.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_logl -#define FUNC_FINITE __logl_finite -#include <e_acosl.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_pow.c b/ports/sysdeps/m68k/m680x0/fpu/e_pow.c deleted file mode 100644 index 892a76c66a..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_pow.c +++ /dev/null @@ -1,126 +0,0 @@ -/* Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <math.h> -#include <math_private.h> -#include "mathimpl.h" - -#ifndef SUFF -#define SUFF -#endif -#ifndef float_type -#define float_type double -#endif - -#define CONCATX(a,b) __CONCAT(a,b) -#define s(name) CONCATX(name,SUFF) -#define m81(func) __m81_u(s(func)) - -float_type -s(__ieee754_pow) (float_type x, float_type y) -{ - float_type z; - float_type ax; - unsigned long x_cond, y_cond; - - y_cond = __m81_test (y); - if (y_cond & __M81_COND_ZERO) - return 1.0; - if (y_cond & __M81_COND_NAN) - return x == 1.0 ? x : x + y; - - x_cond = __m81_test (x); - if (x_cond & __M81_COND_NAN) - return x + y; - - if (y_cond & __M81_COND_INF) - { - ax = s(fabs) (x); - if (ax == 1.0) - return ax; - if (ax > 1.0) - return y_cond & __M81_COND_NEG ? 0 : y; - else - return y_cond & __M81_COND_NEG ? -y : 0; - } - - if (s(fabs) (y) == 1.0) - return y_cond & __M81_COND_NEG ? 1 / x : x; - - if (y == 2) - return x * x; - if (y == 0.5 && !(x_cond & __M81_COND_NEG)) - return m81(__ieee754_sqrt) (x); - - if (x == 10.0) - { - __asm ("ftentox%.x %1, %0" : "=f" (z) : "f" (y)); - return z; - } - if (x == 2.0) - { - __asm ("ftwotox%.x %1, %0" : "=f" (z) : "f" (y)); - return z; - } - - ax = s(fabs) (x); - if (x_cond & (__M81_COND_INF | __M81_COND_ZERO) || ax == 1.0) - { - z = ax; - if (y_cond & __M81_COND_NEG) - z = 1 / z; - if (x_cond & __M81_COND_NEG) - { - if (y != m81(__rint) (y)) - { - if (x == -1) - z = (z - z) / (z - z); - } - else - goto maybe_negate; - } - return z; - } - - if (x_cond & __M81_COND_NEG) - { - if (y == m81(__rint) (y)) - { - z = m81(__ieee754_exp) (y * m81(__ieee754_log) (-x)); - maybe_negate: - /* We always use the long double format, since y is already in - this format and rounding won't change the result. */ - { - int32_t exponent; - u_int32_t i0, i1; - GET_LDOUBLE_WORDS (exponent, i0, i1, y); - exponent = (exponent & 0x7fff) - 0x3fff; - if (exponent <= 31 - ? i0 & (1 << (31 - exponent)) - : (exponent <= 63 - && i1 & (1 << (63 - exponent)))) - z = -z; - } - } - else - z = (y - y) / (y - y); - } - else - z = m81(__ieee754_exp) (y * m81(__ieee754_log) (x)); - return z; -} -strong_alias (s(__ieee754_pow), CONCATX (s(__pow), _finite)) diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_powf.c b/ports/sysdeps/m68k/m680x0/fpu/e_powf.c deleted file mode 100644 index 379014355a..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_powf.c +++ /dev/null @@ -1,3 +0,0 @@ -#define SUFF f -#define float_type float -#include <e_pow.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_powl.c b/ports/sysdeps/m68k/m680x0/fpu/e_powl.c deleted file mode 100644 index f71fa34a26..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_powl.c +++ /dev/null @@ -1,3 +0,0 @@ -#define SUFF l -#define float_type long double -#include <e_pow.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_rem_pio2.c b/ports/sysdeps/m68k/m680x0/fpu/e_rem_pio2.c deleted file mode 100644 index 1347b0468c..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_rem_pio2.c +++ /dev/null @@ -1,3 +0,0 @@ -/* Empty. This file is only meant to avoid compiling the file with the - same name in the libm-ieee754 directory. The code is not used since - there is an assembler version for all users of this file. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_rem_pio2f.c b/ports/sysdeps/m68k/m680x0/fpu/e_rem_pio2f.c deleted file mode 100644 index 1347b0468c..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_rem_pio2f.c +++ /dev/null @@ -1,3 +0,0 @@ -/* Empty. This file is only meant to avoid compiling the file with the - same name in the libm-ieee754 directory. The code is not used since - there is an assembler version for all users of this file. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_rem_pio2l.c b/ports/sysdeps/m68k/m680x0/fpu/e_rem_pio2l.c deleted file mode 100644 index 1347b0468c..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_rem_pio2l.c +++ /dev/null @@ -1,3 +0,0 @@ -/* Empty. This file is only meant to avoid compiling the file with the - same name in the libm-ieee754 directory. The code is not used since - there is an assembler version for all users of this file. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_remainder.c b/ports/sysdeps/m68k/m680x0/fpu/e_remainder.c deleted file mode 100644 index f7732af8c5..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_remainder.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_remainder -#define FUNC_FINITE __remainder_finite -#include <e_fmod.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_remainderf.c b/ports/sysdeps/m68k/m680x0/fpu/e_remainderf.c deleted file mode 100644 index 94b53e7a80..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_remainderf.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_remainderf -#define FUNC_FINITE __remainderf_finite -#include <e_fmodf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_remainderl.c b/ports/sysdeps/m68k/m680x0/fpu/e_remainderl.c deleted file mode 100644 index d5b59607ab..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_remainderl.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_remainderl -#define FUNC_FINITE __remainderl_finite -#include <e_fmodl.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_scalb.c b/ports/sysdeps/m68k/m680x0/fpu/e_scalb.c deleted file mode 100644 index a1c7761ac9..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_scalb.c +++ /dev/null @@ -1,60 +0,0 @@ -/* Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <math.h> -#include <math_private.h> -#include "mathimpl.h" - -#ifndef SUFF -#define SUFF -#endif -#ifndef float_type -#define float_type double -#endif - -#define CONCATX(a,b) __CONCAT(a,b) -#define s(name) CONCATX(name,SUFF) -#define m81(func) __m81_u(s(func)) - -float_type -s(__ieee754_scalb) (float_type x, float_type fn) -{ - float_type retval; - unsigned long x_cond = __m81_test (x); - unsigned long fn_cond = __m81_test (fn); - - if ((x_cond | fn_cond) & __M81_COND_NAN) - return x * fn; - - if (fn_cond & __M81_COND_INF) - { - if (!(fn_cond & __M81_COND_NEG)) - return x * fn; - else if (x_cond & __M81_COND_ZERO) - return x; - else - return x / -fn; - } - - if (m81(__rint) (fn) != fn) - return (x - x) / (x - x); - - __asm ("fscale%.x %1, %0" : "=f" (retval) : "f" (fn), "0" (x)); - return retval; -} -strong_alias (s(__ieee754_scalb), CONCATX (s(__scalb), _finite)) diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_scalbf.c b/ports/sysdeps/m68k/m680x0/fpu/e_scalbf.c deleted file mode 100644 index 7943571246..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_scalbf.c +++ /dev/null @@ -1,3 +0,0 @@ -#define SUFF f -#define float_type float -#include <e_scalb.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_scalbl.c b/ports/sysdeps/m68k/m680x0/fpu/e_scalbl.c deleted file mode 100644 index 35fb2dc0ed..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_scalbl.c +++ /dev/null @@ -1,3 +0,0 @@ -#define SUFF l -#define float_type long double -#include <e_scalb.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_sinh.c b/ports/sysdeps/m68k/m680x0/fpu/e_sinh.c deleted file mode 100644 index 1e1b1c1180..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_sinh.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_sinh -#define FUNC_FINITE __sinh_finite -#include <e_acos.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_sinhf.c b/ports/sysdeps/m68k/m680x0/fpu/e_sinhf.c deleted file mode 100644 index 13c79f9d96..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_sinhf.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_sinhf -#define FUNC_FINITE __sinhf_finite -#include <e_acosf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_sinhl.c b/ports/sysdeps/m68k/m680x0/fpu/e_sinhl.c deleted file mode 100644 index 47f0f24401..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_sinhl.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_sinhl -#define FUNC_FINITE __sinhl_finite -#include <e_acosl.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_sqrt.c b/ports/sysdeps/m68k/m680x0/fpu/e_sqrt.c deleted file mode 100644 index 9a250cbc25..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_sqrt.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_sqrt -#define FUNC_FINITE __sqrt_finite -#include <e_acos.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_sqrtf.c b/ports/sysdeps/m68k/m680x0/fpu/e_sqrtf.c deleted file mode 100644 index 372c3eb2f4..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_sqrtf.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_sqrtf -#define FUNC_FINITE __sqrtf_finite -#include <e_acosf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_sqrtl.c b/ports/sysdeps/m68k/m680x0/fpu/e_sqrtl.c deleted file mode 100644 index df5f44e6a7..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/e_sqrtl.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC __ieee754_sqrtl -#define FUNC_FINITE __sqrtl_finite -#include <e_acosl.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/fraiseexcpt.c b/ports/sysdeps/m68k/m680x0/fpu/fraiseexcpt.c deleted file mode 100644 index 6e41b1425d..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/fraiseexcpt.c +++ /dev/null @@ -1,82 +0,0 @@ -/* Raise given exceptions. - Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <fenv.h> -#include <float.h> -#include <math.h> - -int -__feraiseexcept (int excepts) -{ - /* Raise exceptions represented by EXCEPTS. But we must raise only one - signal at a time. It is important that if the overflow/underflow - exception and the divide by zero exception are given at the same - time, the overflow/underflow exception follows the divide by zero - exception. */ - - /* First: invalid exception. */ - if (excepts & FE_INVALID) - { - /* One example of an invalid operation is 0 * Infinity. */ - double d = HUGE_VAL; - __asm__ __volatile__ ("fmul%.s %#0r0,%0; fnop" : "=f" (d) : "0" (d)); - } - - /* Next: division by zero. */ - if (excepts & FE_DIVBYZERO) - { - double d = 1.0; - __asm__ __volatile__ ("fdiv%.s %#0r0,%0; fnop" : "=f" (d) : "0" (d)); - } - - /* Next: overflow. */ - if (excepts & FE_OVERFLOW) - { - long double d = LDBL_MAX; - - __asm__ __volatile__ ("fmul%.x %0,%0; fnop" : "=f" (d) : "0" (d)); - } - - /* Next: underflow. */ - if (excepts & FE_UNDERFLOW) - { - long double d = -LDBL_MAX; - - __asm__ __volatile__ ("fetox%.x %0; fnop" : "=f" (d) : "0" (d)); - } - - /* Last: inexact. */ - if (excepts & FE_INEXACT) - { - long double d = 1.0; - __asm__ __volatile__ ("fdiv%.s %#0r3,%0; fnop" : "=f" (d) : "0" (d)); - } - - /* Success. */ - return 0; -} - -#include <shlib-compat.h> -#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) -strong_alias (__feraiseexcept, __old_feraiseexcept) -compat_symbol (libm, __old_feraiseexcept, feraiseexcept, GLIBC_2_1); -#endif - -libm_hidden_ver (__feraiseexcept, feraiseexcept) -versioned_symbol (libm, __feraiseexcept, feraiseexcept, GLIBC_2_2); diff --git a/ports/sysdeps/m68k/m680x0/fpu/halfulp.c b/ports/sysdeps/m68k/m680x0/fpu/halfulp.c deleted file mode 100644 index 1cc8931700..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/halfulp.c +++ /dev/null @@ -1 +0,0 @@ -/* Not needed. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/k_cosl.c b/ports/sysdeps/m68k/m680x0/fpu/k_cosl.c deleted file mode 100644 index 1cc8931700..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/k_cosl.c +++ /dev/null @@ -1 +0,0 @@ -/* Not needed. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/k_rem_pio2.c b/ports/sysdeps/m68k/m680x0/fpu/k_rem_pio2.c deleted file mode 100644 index 1347b0468c..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/k_rem_pio2.c +++ /dev/null @@ -1,3 +0,0 @@ -/* Empty. This file is only meant to avoid compiling the file with the - same name in the libm-ieee754 directory. The code is not used since - there is an assembler version for all users of this file. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/k_rem_pio2f.c b/ports/sysdeps/m68k/m680x0/fpu/k_rem_pio2f.c deleted file mode 100644 index 1347b0468c..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/k_rem_pio2f.c +++ /dev/null @@ -1,3 +0,0 @@ -/* Empty. This file is only meant to avoid compiling the file with the - same name in the libm-ieee754 directory. The code is not used since - there is an assembler version for all users of this file. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/k_rem_pio2l.c b/ports/sysdeps/m68k/m680x0/fpu/k_rem_pio2l.c deleted file mode 100644 index 1347b0468c..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/k_rem_pio2l.c +++ /dev/null @@ -1,3 +0,0 @@ -/* Empty. This file is only meant to avoid compiling the file with the - same name in the libm-ieee754 directory. The code is not used since - there is an assembler version for all users of this file. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/k_sinl.c b/ports/sysdeps/m68k/m680x0/fpu/k_sinl.c deleted file mode 100644 index 1cc8931700..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/k_sinl.c +++ /dev/null @@ -1 +0,0 @@ -/* Not needed. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/k_tanf.c b/ports/sysdeps/m68k/m680x0/fpu/k_tanf.c deleted file mode 100644 index 1cc8931700..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/k_tanf.c +++ /dev/null @@ -1 +0,0 @@ -/* Not needed. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/k_tanl.c b/ports/sysdeps/m68k/m680x0/fpu/k_tanl.c deleted file mode 100644 index 1cc8931700..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/k_tanl.c +++ /dev/null @@ -1 +0,0 @@ -/* Not needed. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/libm-test-ulps b/ports/sysdeps/m68k/m680x0/fpu/libm-test-ulps deleted file mode 100644 index b4333a07f2..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/libm-test-ulps +++ /dev/null @@ -1,9764 +0,0 @@ -# Begin of automatic generation - -# acosh -Test "acosh (0x6.4p+4)": -double: 1 -idouble: 1 - -# asin_downward -Test "asin_downward (-0x2p-16384)": -ildouble: 1 -ldouble: 1 -Test "asin_downward (-0x4p-1024)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "asin_downward (-0x4p-1076)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "asin_downward (-0x4p-128)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "asin_downward (-0x4p-16384)": -ildouble: 1 -ldouble: 1 -Test "asin_downward (-0x4p-16448)": -ildouble: 1 -ldouble: 1 -Test "asin_downward (-0x8p-152)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "asin_downward (-0x8p-16448)": -ildouble: 1 -ldouble: 1 -Test "asin_downward (-0x8p-972)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 - -# asin_towardzero -Test "asin_towardzero (-0x2p-16384)": -ildouble: 1 -ldouble: 1 -Test "asin_towardzero (-0x4p-1024)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "asin_towardzero (-0x4p-1076)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "asin_towardzero (-0x4p-128)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "asin_towardzero (-0x4p-16384)": -ildouble: 1 -ldouble: 1 -Test "asin_towardzero (-0x4p-16448)": -ildouble: 1 -ldouble: 1 -Test "asin_towardzero (-0x8p-152)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "asin_towardzero (-0x8p-16448)": -ildouble: 1 -ldouble: 1 -Test "asin_towardzero (-0x8p-972)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 - -# asin_upward -Test "asin_upward (-0x2p-16384)": -ildouble: 1 -ldouble: 1 -Test "asin_upward (-0x4p-1024)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "asin_upward (-0x4p-1076)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "asin_upward (-0x4p-128)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "asin_upward (-0x4p-16384)": -ildouble: 1 -ldouble: 1 -Test "asin_upward (-0x4p-16448)": -ildouble: 1 -ldouble: 1 -Test "asin_upward (-0x8p-152)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "asin_upward (-0x8p-16448)": -ildouble: 1 -ldouble: 1 -Test "asin_upward (-0x8p-972)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 - -# asinh -Test "asinh (0x1p+100)": -ildouble: 1 -ldouble: 1 -Test "asinh (0xap+0)": -float: 1 -ifloat: 1 -Test "asinh (0xf.424p+16)": -ildouble: 1 -ldouble: 1 - -# atan2 -Test "atan2 (-0x1.effe81f852716ffcp-8, -0x7.57d1de0e51248p-12)": -ildouble: 1 -ldouble: 1 -Test "atan2 (-0x1.effe81f852716p-8, -0x7.57d1de0e5124664p-12)": -ildouble: 1 -ldouble: 1 -Test "atan2 (-0x1.effe81f852717p-8, -0x7.57d1de0e5124664p-12)": -ildouble: 1 -ldouble: 1 -Test "atan2 (-0x1.effe82p-8, -0x7.57d1de0e51248p-12)": -ildouble: 1 -ldouble: 1 -Test "atan2 (-0x1.effe8p-8, -0x7.57d1de0e51248p-12)": -ildouble: 1 -ldouble: 1 -Test "atan2 (-0x4p-16384, 0x2p-16384)": -ildouble: 1 -ldouble: 1 -Test "atan2 (-0x8p-16448, 0x4p-16448)": -ildouble: 1 -ldouble: 1 -Test "atan2 (0x1.64p+0, 0xe.ep-4)": -ildouble: 1 -ldouble: 1 -Test "atan2 (0x4p-16384, 0x2p-16384)": -ildouble: 1 -ldouble: 1 -Test "atan2 (0x6.4p-4, 0x1.30164840e1719f7ep-12)": -ildouble: 1 -ldouble: 1 -Test "atan2 (0x6.4p-4, 0x1.30164840e1719f8p-12)": -ildouble: 1 -ldouble: 1 -Test "atan2 (0x8p-16448, 0x4p-16448)": -ildouble: 1 -ldouble: 1 - -# cacos -Test "Imaginary part of: cacos (+0 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacos (+0 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: cacos (+0 + 1.5 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (+0 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacos (+0 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: cacos (+0 - 1.5 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (-0 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacos (-0 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: cacos (-0 + 1.5 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (-0 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacos (-0 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: cacos (-0 - 1.5 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (-0.0 + 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0.0 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0.0 + 0x1.000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0.0 - 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0.0 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0.0 - 0x1.000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (-0.25 + 1.0 i)": -double: 1 -idouble: 1 -Test "Real part of: cacos (-0.25 - 1.0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (-0.5 + 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0.5 + 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0.5 + 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0.5 + 0x1p-23 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (-0.5 + 0x1p-52 i)": -double: 1 -idouble: 1 -Test "Real part of: cacos (-0.5 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0.5 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0.5 - 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0.5 - 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0.5 - 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0.5 - 0x1p-23 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (-0.5 - 0x1p-52 i)": -double: 1 -idouble: 1 -Test "Real part of: cacos (-0.5 - 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0.5 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x0.fffffffffffff8p0 + 0x1p-52 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (-0x0.fffffffffffff8p0 - 0x1p-52 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (-0x0.ffffffffffffffffp0 + 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x0.ffffffffffffffffp0 + 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x0.ffffffffffffffffp0 - 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x0.ffffffffffffffffp0 - 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x0.ffffffp0 + 0x1p-23 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: cacos (-0x0.ffffffp0 - 0x1p-23 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: cacos (-0x1.0000000000000002p0 + 0x1p-63 i)": -ildouble: 2 -ldouble: 2 -Test "Imaginary part of: cacos (-0x1.0000000000000002p0 - 0x1p-63 i)": -ildouble: 2 -ldouble: 2 -Test "Imaginary part of: cacos (-0x1.0000000000001p0 + 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1.0000000000001p0 + 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1.0000000000001p0 + 0x1p-52 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1.0000000000001p0 - 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1.0000000000001p0 - 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1.0000000000001p0 - 0x1p-52 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1.fp-10 + 1.0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1.fp-10 - 1.0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1.fp-100 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: cacos (-0x1.fp-100 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: cacos (-0x1.fp-1000 + 1.0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (-0x1.fp-1000 - 1.0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (-0x1.fp-1025 + 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1.fp-1025 + 1.0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (-0x1.fp-1025 + 1.5 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (-0x1.fp-1025 - 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1.fp-1025 - 1.0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (-0x1.fp-1025 - 1.5 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (-0x1.fp-129 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacos (-0x1.fp-129 + 0x1.000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1.fp-129 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: cacos (-0x1.fp-129 + 1.5 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (-0x1.fp-129 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacos (-0x1.fp-129 - 0x1.000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1.fp-129 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: cacos (-0x1.fp-129 - 1.5 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (-0x1.fp-16385 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1.fp-16385 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1.fp-30 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1.fp-30 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1p-105 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacos (-0x1p-105 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacos (-0x1p-112 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacos (-0x1p-112 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacos (-0x1p-23 + 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1p-23 + 0x0.ffffffp0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1p-23 - 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1p-23 - 0x0.ffffffp0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1p-52 + 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1p-52 + 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1p-52 - 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1p-52 - 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1p-63 + 0.5 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (-0x1p-63 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1p-63 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (-0x1p-63 + 0x1.0000000000000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1p-63 - 0.5 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (-0x1p-63 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-0x1p-63 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (-0x1p-63 - 0x1.0000000000000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (-1.0 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacos (-1.0 + 0.5 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (-1.0 + 0x1.fp-10 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-1.0 + 0x1.fp-10 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacos (-1.0 + 0x1.fp-100 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-1.0 + 0x1.fp-30 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (-1.0 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacos (-1.0 - 0.5 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (-1.0 - 0x1.fp-10 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-1.0 - 0x1.fp-10 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacos (-1.0 - 0x1.fp-100 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-1.0 - 0x1.fp-30 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-1.5 + +0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-1.5 + 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-1.5 + 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-1.5 + 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-1.5 - 0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-1.5 - 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-1.5 - 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (-1.5 - 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0.0 + 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0.0 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0.0 + 0x1.000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0.0 - 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0.0 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0.0 - 0x1.000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0.25 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0.25 - 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0.5 + +0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0.5 + 0x1.fp-1025 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0.5 + 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0.5 + 0x1.fp-129 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0.5 + 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0.5 + 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0.5 + 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0.5 + 0x1p-105 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0.5 + 0x1p-112 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0.5 + 0x1p-23 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0.5 + 0x1p-23 i)": -double: 1 -idouble: 1 -Test "Real part of: cacos (0.5 + 0x1p-52 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0.5 + 0x1p-52 i)": -double: 1 -idouble: 1 -Test "Real part of: cacos (0.5 + 0x1p-63 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0.5 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0.5 - 0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0.5 - 0x1.fp-1025 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0.5 - 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0.5 - 0x1.fp-129 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0.5 - 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0.5 - 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0.5 - 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0.5 - 0x1p-105 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0.5 - 0x1p-112 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0.5 - 0x1p-23 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0.5 - 0x1p-23 i)": -double: 1 -idouble: 1 -Test "Real part of: cacos (0.5 - 0x1p-52 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0.5 - 0x1p-52 i)": -double: 1 -idouble: 1 -Test "Real part of: cacos (0.5 - 0x1p-63 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0.5 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0.75 + 1.25 i)": -float: 1 -ifloat: 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 -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 -Test "Real part of: cacos (0x0.ffffffffffffffffp0 + 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0x0.ffffffffffffffffp0 + 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x0.ffffffffffffffffp0 + 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0x0.ffffffffffffffffp0 + 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x0.ffffffffffffffffp0 + 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0x0.ffffffffffffffffp0 - 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0x0.ffffffffffffffffp0 - 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x0.ffffffffffffffffp0 - 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0x0.ffffffffffffffffp0 - 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x0.ffffffffffffffffp0 - 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0x0.ffffffp0 + 0.0 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacos (0x0.ffffffp0 + 0x1.fp-129 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacos (0x0.ffffffp0 + 0x1p-23 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacos (0x0.ffffffp0 + 0x1p-23 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: cacos (0x0.ffffffp0 - 0.0 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacos (0x0.ffffffp0 - 0x1.fp-129 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacos (0x0.ffffffp0 - 0x1p-23 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacos (0x0.ffffffp0 - 0x1p-23 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: cacos (0x1.0000000000000002p0 + 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1.0000000000000002p0 + 0x1p-63 i)": -ildouble: 2 -ldouble: 2 -Test "Real part of: cacos (0x1.0000000000000002p0 - 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1.0000000000000002p0 - 0x1p-63 i)": -ildouble: 2 -ldouble: 2 -Test "Imaginary part of: cacos (0x1.0000000000001p0 + 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1.0000000000001p0 + 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0x1.0000000000001p0 + 0x1p-52 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1.0000000000001p0 + 0x1p-52 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1.0000000000001p0 - 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1.0000000000001p0 - 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0x1.0000000000001p0 - 0x1p-52 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1.0000000000001p0 - 0x1p-52 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0x1.000002p0 + 0x1p-23 i)": -float: 2 -ifloat: 2 -Test "Real part of: cacos (0x1.000002p0 - 0x1p-23 i)": -float: 2 -ifloat: 2 -Test "Real part of: cacos (0x1.fp-10 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1.fp-10 + 1.0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0x1.fp-10 - 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1.fp-10 - 1.0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1.fp-100 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: cacos (0x1.fp-100 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: cacos (0x1.fp-1000 + 1.0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (0x1.fp-1000 - 1.0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (0x1.fp-1025 + 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1.fp-1025 + 1.0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (0x1.fp-1025 + 1.5 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (0x1.fp-1025 - 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1.fp-1025 - 1.0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (0x1.fp-1025 - 1.5 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (0x1.fp-129 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacos (0x1.fp-129 + 0x1.000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1.fp-129 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: cacos (0x1.fp-129 + 1.5 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (0x1.fp-129 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacos (0x1.fp-129 - 0x1.000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1.fp-129 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: cacos (0x1.fp-129 - 1.5 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (0x1.fp-16385 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1.fp-16385 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0x1.fp-30 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1.fp-30 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0x1.fp-30 - 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1.fp-30 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1.fp1023 + 0x1.fp1023 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1.fp127 + 0x1.fp127 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacos (0x1p-105 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacos (0x1p-105 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacos (0x1p-112 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacos (0x1p-112 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacos (0x1p-23 + 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1p-23 + 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0x1p-23 + 0x0.ffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1p-23 + 0x0.ffffffp0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0x1p-23 - 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1p-23 - 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (0x1p-23 - 0x0.ffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1p-23 - 0x0.ffffffp0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1p-52 + 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1p-52 + 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1p-52 - 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1p-52 - 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1p-63 + 0.5 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1p-63 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1p-63 - 0.5 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (0x1p-63 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (1.0 + 0.25 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (1.0 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacos (1.0 + 0.5 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (1.0 + 0x1.fp-10 i)": -float: 2 -ifloat: 2 -Test "Imaginary part of: cacos (1.0 + 0x1.fp-10 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacos (1.0 + 0x1.fp-30 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (1.0 - 0.25 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (1.0 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacos (1.0 - 0.5 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacos (1.0 - 0x1.fp-10 i)": -float: 2 -ifloat: 2 -Test "Imaginary part of: cacos (1.0 - 0x1.fp-10 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacos (1.0 - 0x1.fp-30 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (1.5 + +0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (1.5 + 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (1.5 + 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (1.5 + 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (1.5 - 0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (1.5 - 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (1.5 - 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacos (1.5 - 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 - -# cacosh -Test "Real part of: cacosh (+0 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacosh (+0 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: cacosh (+0 + 1.5 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (+0 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacosh (+0 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: cacosh (+0 - 1.5 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (-0 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacosh (-0 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: cacosh (-0 + 1.5 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (-0 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacosh (-0 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: cacosh (-0 - 1.5 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (-0.0 + 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0.0 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0.0 + 0x1.000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0.0 - 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0.0 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0.0 - 0x1.000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (-0.25 + 1.0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacosh (-0.25 - 1.0 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (-0.5 + 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0.5 + 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0.5 + 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0.5 + 0x1p-23 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (-0.5 + 0x1p-52 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (-0.5 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (-0.5 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0.5 - 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0.5 - 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0.5 - 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0.5 - 0x1p-23 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (-0.5 - 0x1p-52 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (-0.5 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (-0.5 - 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x0.fffffffffffff8p0 + 0x1p-52 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (-0x0.fffffffffffff8p0 - 0x1p-52 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (-0x0.ffffffffffffffffp0 + 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x0.ffffffffffffffffp0 + 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x0.ffffffffffffffffp0 - 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x0.ffffffffffffffffp0 - 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x0.ffffffp0 + 0x1p-23 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: cacosh (-0x0.ffffffp0 - 0x1p-23 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: cacosh (-0x1.0000000000000002p0 + 0x1p-63 i)": -ildouble: 2 -ldouble: 2 -Test "Real part of: cacosh (-0x1.0000000000000002p0 - 0x1p-63 i)": -ildouble: 2 -ldouble: 2 -Test "Real part of: cacosh (-0x1.0000000000001p0 + 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1.0000000000001p0 + 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1.0000000000001p0 + 0x1p-52 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1.0000000000001p0 - 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1.0000000000001p0 - 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1.0000000000001p0 - 0x1p-52 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1.fp-10 + 1.0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1.fp-10 - 1.0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1.fp-100 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: cacosh (-0x1.fp-100 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: cacosh (-0x1.fp-1000 + 1.0 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (-0x1.fp-1000 - 1.0 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (-0x1.fp-1025 + 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1.fp-1025 + 1.0 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (-0x1.fp-1025 + 1.5 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (-0x1.fp-1025 - 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1.fp-1025 - 1.0 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (-0x1.fp-1025 - 1.5 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (-0x1.fp-129 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacosh (-0x1.fp-129 + 0x1.000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1.fp-129 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: cacosh (-0x1.fp-129 + 1.5 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (-0x1.fp-129 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacosh (-0x1.fp-129 - 0x1.000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1.fp-129 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: cacosh (-0x1.fp-129 - 1.5 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (-0x1.fp-16385 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1.fp-16385 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1.fp-30 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1.fp-30 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1p-105 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacosh (-0x1p-105 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacosh (-0x1p-112 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacosh (-0x1p-112 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacosh (-0x1p-23 + 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1p-23 + 0x0.ffffffp0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1p-23 - 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1p-23 - 0x0.ffffffp0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1p-52 + 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1p-52 + 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1p-52 - 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1p-52 - 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1p-63 + 0.5 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1p-63 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (-0x1p-63 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (-0x1p-63 + 0x1.0000000000000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1p-63 - 0.5 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-0x1p-63 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (-0x1p-63 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (-0x1p-63 - 0x1.0000000000000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-1.0 + 0.5 i)": -float: 1 -ifloat: 1 -ildouble: 1 -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)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacosh (-1.0 + 0x1.fp-10 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (-1.0 + 0x1.fp-100 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-1.0 + 0x1.fp-30 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-1.0 - 0.5 i)": -float: 1 -ifloat: 1 -ildouble: 1 -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)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacosh (-1.0 - 0x1.fp-10 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (-1.0 - 0x1.fp-100 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-1.0 - 0x1.fp-30 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-1.5 + +0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-1.5 + 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-1.5 + 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-1.5 + 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-1.5 - 0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-1.5 - 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-1.5 - 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (-1.5 - 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0.0 + 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0.0 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0.0 + 0x1.000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0.0 - 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0.0 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0.0 - 0x1.000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0.25 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0.25 - 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0.5 + +0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0.5 + 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0.5 + 0x1.fp-1025 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0.5 + 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0.5 + 0x1.fp-129 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0.5 + 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0.5 + 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0.5 + 0x1p-105 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0.5 + 0x1p-112 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0.5 + 0x1p-23 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacosh (0.5 + 0x1p-23 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0.5 + 0x1p-52 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacosh (0.5 + 0x1p-52 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0.5 + 0x1p-63 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0.5 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0.5 - 0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0.5 - 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0.5 - 0x1.fp-1025 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0.5 - 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0.5 - 0x1.fp-129 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0.5 - 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0.5 - 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0.5 - 0x1p-105 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0.5 - 0x1p-112 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0.5 - 0x1p-23 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacosh (0.5 - 0x1p-23 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0.5 - 0x1p-52 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: cacosh (0.5 - 0x1p-52 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0.5 - 0x1p-63 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0.5 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0.75 + 1.25 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacosh (0x0.fffffffffffff8p0 + 0x1p-52 i)": -double: 1 -idouble: 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 -Test "Imaginary part of: cacosh (0x0.fffffffffffff8p0 - 0x1p-52 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0x0.ffffffffffffffffp0 + 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x0.ffffffffffffffffp0 + 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0x0.ffffffffffffffffp0 + 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x0.ffffffffffffffffp0 + 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0x0.ffffffffffffffffp0 + 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0x0.ffffffffffffffffp0 - 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x0.ffffffffffffffffp0 - 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0x0.ffffffffffffffffp0 - 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x0.ffffffffffffffffp0 - 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0x0.ffffffffffffffffp0 - 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0x0.ffffffp0 + 0.0 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacosh (0x0.ffffffp0 + 0x1.fp-129 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacosh (0x0.ffffffp0 + 0x1p-23 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: cacosh (0x0.ffffffp0 + 0x1p-23 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacosh (0x0.ffffffp0 - 0.0 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacosh (0x0.ffffffp0 - 0x1.fp-129 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacosh (0x0.ffffffp0 - 0x1p-23 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: cacosh (0x0.ffffffp0 - 0x1p-23 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacosh (0x1.0000000000000002p0 + 0x1p-63 i)": -ildouble: 2 -ldouble: 2 -Test "Imaginary part of: cacosh (0x1.0000000000000002p0 + 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1.0000000000000002p0 - 0x1p-63 i)": -ildouble: 2 -ldouble: 2 -Test "Imaginary part of: cacosh (0x1.0000000000000002p0 - 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1.0000000000001p0 + 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1.0000000000001p0 + 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1.0000000000001p0 + 0x1p-52 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0x1.0000000000001p0 + 0x1p-52 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1.0000000000001p0 - 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1.0000000000001p0 - 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1.0000000000001p0 - 0x1p-52 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0x1.0000000000001p0 - 0x1p-52 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0x1.000002p0 + 0x1p-23 i)": -float: 2 -ifloat: 2 -Test "Imaginary part of: cacosh (0x1.000002p0 - 0x1p-23 i)": -float: 2 -ifloat: 2 -Test "Real part of: cacosh (0x1.fp-10 + 1.0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0x1.fp-10 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1.fp-10 - 1.0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0x1.fp-10 - 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1.fp-100 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: cacosh (0x1.fp-100 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: cacosh (0x1.fp-1000 + 1.0 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (0x1.fp-1000 - 1.0 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (0x1.fp-1025 + 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1.fp-1025 + 1.0 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (0x1.fp-1025 + 1.5 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (0x1.fp-1025 - 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1.fp-1025 - 1.0 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (0x1.fp-1025 - 1.5 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (0x1.fp-129 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacosh (0x1.fp-129 + 0x1.000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1.fp-129 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: cacosh (0x1.fp-129 + 1.5 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (0x1.fp-129 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacosh (0x1.fp-129 - 0x1.000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1.fp-129 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: cacosh (0x1.fp-129 - 1.5 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (0x1.fp-16385 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1.fp-16385 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1.fp-30 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0x1.fp-30 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1.fp-30 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0x1.fp-30 - 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1.fp1023 + 0x1.fp1023 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1.fp127 + 0x1.fp127 i)": -double: 1 -idouble: 1 -Test "Real part of: cacosh (0x1p-105 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacosh (0x1p-105 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacosh (0x1p-112 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacosh (0x1p-112 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Real part of: cacosh (0x1p-23 + 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0x1p-23 + 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1p-23 + 0x0.ffffffp0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0x1p-23 + 0x0.ffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1p-23 - 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0x1p-23 - 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1p-23 - 0x0.ffffffp0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (0x1p-23 - 0x0.ffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1p-52 + 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1p-52 + 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1p-52 - 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1p-52 - 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1p-63 + 0.5 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1p-63 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1p-63 - 0.5 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (0x1p-63 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (1.0 + 0.25 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (1.0 + 0.5 i)": -float: 1 -ifloat: 1 -ildouble: 1 -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)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacosh (1.0 + 0x1.fp-10 i)": -float: 2 -ifloat: 2 -Test "Real part of: cacosh (1.0 + 0x1.fp-30 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cacosh (1.0 - 0.25 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (1.0 - 0.5 i)": -float: 1 -ifloat: 1 -ildouble: 1 -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)": -float: 1 -ifloat: 1 -Test "Imaginary part of: cacosh (1.0 - 0x1.fp-10 i)": -float: 2 -ifloat: 2 -Test "Real part of: cacosh (1.0 - 0x1.fp-30 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (1.5 + +0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (1.5 + 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (1.5 + 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (1.5 + 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (1.5 - 0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (1.5 - 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (1.5 - 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cacosh (1.5 - 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 - -# casin -Test "Imaginary part of: casin (+0 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: casin (+0 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: casin (+0 + 1.5 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casin (+0 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: casin (+0 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: casin (+0 - 1.5 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casin (-0 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: casin (-0 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: casin (-0 + 1.5 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casin (-0 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: casin (-0 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: casin (-0 - 1.5 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casin (-0.0 + 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0.0 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0.0 + 0x1.000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0.0 - 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0.0 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0.0 - 0x1.000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (-0.25 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (-0.25 - 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0.5 + 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0.5 + 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0.5 + 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (-0.5 + 0x1p-23 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0.5 + 0x1p-23 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casin (-0.5 + 0x1p-52 i)": -double: 1 -idouble: 1 -Test "Real part of: casin (-0.5 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0.5 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0.5 - 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0.5 - 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0.5 - 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (-0.5 - 0x1p-23 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0.5 - 0x1p-23 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casin (-0.5 - 0x1p-52 i)": -double: 1 -idouble: 1 -Test "Real part of: casin (-0.5 - 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0.5 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0x0.fffffffffffff8p0 + 0x1p-52 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casin (-0x0.fffffffffffff8p0 - 0x1p-52 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casin (-0x0.ffffffffffffffffp0 + 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0x0.ffffffffffffffffp0 + 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0x0.ffffffffffffffffp0 - 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0x0.ffffffffffffffffp0 - 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (-0x0.ffffffp0 + 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (-0x0.ffffffp0 + 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0x0.ffffffp0 + 0x1p-23 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: casin (-0x0.ffffffp0 - 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (-0x0.ffffffp0 - 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0x0.ffffffp0 - 0x1p-23 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: casin (-0x1.0000000000000002p0 + 0x1p-63 i)": -ildouble: 2 -ldouble: 2 -Test "Imaginary part of: casin (-0x1.0000000000000002p0 - 0x1p-63 i)": -ildouble: 2 -ldouble: 2 -Test "Imaginary part of: casin (-0x1.0000000000001p0 + 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0x1.0000000000001p0 + 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0x1.0000000000001p0 + 0x1p-52 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0x1.0000000000001p0 - 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0x1.0000000000001p0 - 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0x1.0000000000001p0 - 0x1p-52 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (-0x1.fp-10 + 1.0 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: casin (-0x1.fp-10 + 1.0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (-0x1.fp-10 - 1.0 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: casin (-0x1.fp-10 - 1.0 i)": -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 "Imaginary part of: casin (-0x1.fp-1025 + 0x0.fffffffffffff8p0 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 "Imaginary part of: casin (-0x1.fp-1025 - 0x0.fffffffffffff8p0 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 "Imaginary part of: casin (-0x1.fp-129 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Real part of: casin (-0x1.fp-129 + 0x1.000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0x1.fp-129 + 0x1.000002p0 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 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: casin (-0x1.fp-129 + 1.5 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casin (-0x1.fp-129 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Real part of: casin (-0x1.fp-129 - 0x1.000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0x1.fp-129 - 0x1.000002p0 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 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: casin (-0x1.fp-129 - 1.5 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casin (-0x1.fp-16385 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0x1.fp-16385 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (-0x1.fp-30 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0x1.fp-30 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (-0x1.fp-30 - 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0x1.fp-30 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0x1p-105 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: casin (-0x1p-105 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: casin (-0x1p-112 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: casin (-0x1p-112 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Real part of: casin (-0x1p-23 + 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: casin (-0x1p-23 + 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0x1p-23 + 0x0.ffffffp0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (-0x1p-23 + 0x1.000002p0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: casin (-0x1p-23 - 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: casin (-0x1p-23 - 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0x1p-23 - 0x0.ffffffp0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (-0x1p-23 - 0x1.000002p0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: casin (-0x1p-52 + 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0x1p-52 + 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (-0x1p-52 + 0x1.0000000000001p0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casin (-0x1p-52 - 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0x1p-52 - 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (-0x1p-52 - 0x1.0000000000001p0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casin (-0x1p-63 + 0.5 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (-0x1p-63 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0x1p-63 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (-0x1p-63 + 0x1.0000000000000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0x1p-63 - 0.5 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (-0x1p-63 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-0x1p-63 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (-0x1p-63 - 0x1.0000000000000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (-1.0 + 0.25 i)": -double: 1 -idouble: 1 -Test "Real part of: casin (-1.0 + 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-1.0 + 0.5 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-1.0 + 0x1.fp-10 i)": -float: 1 -ifloat: 1 -Test "Real part of: casin (-1.0 + 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-1.0 + 0x1.fp-30 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (-1.0 - 0.25 i)": -double: 1 -idouble: 1 -Test "Real part of: casin (-1.0 - 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-1.0 - 0.5 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-1.0 - 0x1.fp-10 i)": -float: 1 -ifloat: 1 -Test "Real part of: casin (-1.0 - 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-1.0 - 0x1.fp-30 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-1.5 + +0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-1.5 + 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-1.5 + 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-1.5 + 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-1.5 - 0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-1.5 - 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-1.5 - 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (-1.5 - 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0.0 + 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0.0 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0.0 + 0x1.000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0.0 - 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0.0 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0.0 - 0x1.000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (0.25 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (0.25 - 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0.5 + 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0.5 + 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0.5 + 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (0.5 + 0x1p-23 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0.5 + 0x1p-23 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casin (0.5 + 0x1p-52 i)": -double: 1 -idouble: 1 -Test "Real part of: casin (0.5 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0.5 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0.5 - 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0.5 - 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0.5 - 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (0.5 - 0x1p-23 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0.5 - 0x1p-23 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casin (0.5 - 0x1p-52 i)": -double: 1 -idouble: 1 -Test "Real part of: casin (0.5 - 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0.5 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (0.75 + 1.25 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0x0.fffffffffffff8p0 + 0x1p-52 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casin (0x0.fffffffffffff8p0 - 0x1p-52 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casin (0x0.ffffffffffffffffp0 + 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0x0.ffffffffffffffffp0 + 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0x0.ffffffffffffffffp0 - 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0x0.ffffffffffffffffp0 - 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (0x0.ffffffp0 + 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (0x0.ffffffp0 + 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0x0.ffffffp0 + 0x1p-23 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: casin (0x0.ffffffp0 - 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (0x0.ffffffp0 - 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0x0.ffffffp0 - 0x1p-23 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: casin (0x1.0000000000000002p0 + 0x1p-63 i)": -ildouble: 2 -ldouble: 2 -Test "Imaginary part of: casin (0x1.0000000000000002p0 - 0x1p-63 i)": -ildouble: 2 -ldouble: 2 -Test "Imaginary part of: casin (0x1.0000000000001p0 + 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0x1.0000000000001p0 + 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0x1.0000000000001p0 + 0x1p-52 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0x1.0000000000001p0 - 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0x1.0000000000001p0 - 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0x1.0000000000001p0 - 0x1p-52 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (0x1.fp-10 + 1.0 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: casin (0x1.fp-10 + 1.0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (0x1.fp-10 - 1.0 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: casin (0x1.fp-10 - 1.0 i)": -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 "Imaginary part of: casin (0x1.fp-1025 + 0x0.fffffffffffff8p0 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 "Imaginary part of: casin (0x1.fp-1025 - 0x0.fffffffffffff8p0 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 "Imaginary part of: casin (0x1.fp-129 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Real part of: casin (0x1.fp-129 + 0x1.000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0x1.fp-129 + 0x1.000002p0 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 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: casin (0x1.fp-129 + 1.5 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casin (0x1.fp-129 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Real part of: casin (0x1.fp-129 - 0x1.000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0x1.fp-129 - 0x1.000002p0 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 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: casin (0x1.fp-129 - 1.5 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casin (0x1.fp-16385 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0x1.fp-16385 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (0x1.fp-30 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0x1.fp-30 + 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (0x1.fp-30 - 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0x1.fp-30 - 1.0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0x1.fp1023 + 0x1.fp1023 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0x1.fp127 + 0x1.fp127 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casin (0x1p-105 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: casin (0x1p-105 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: casin (0x1p-112 + 0.5 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: casin (0x1p-112 - 0.5 i)": -float: 1 -ifloat: 1 -Test "Real part of: casin (0x1p-23 + 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: casin (0x1p-23 + 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0x1p-23 + 0x0.ffffffp0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (0x1p-23 + 0x1.000002p0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: casin (0x1p-23 - 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: casin (0x1p-23 - 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0x1p-23 - 0x0.ffffffp0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (0x1p-23 - 0x1.000002p0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: casin (0x1p-52 + 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0x1p-52 + 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (0x1p-52 + 0x1.0000000000001p0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casin (0x1p-52 - 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0x1p-52 - 0x0.fffffffffffff8p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (0x1p-52 - 0x1.0000000000001p0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casin (0x1p-63 + 0.5 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (0x1p-63 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0x1p-63 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (0x1p-63 + 0x1.0000000000000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0x1p-63 - 0.5 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (0x1p-63 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (0x1p-63 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (0x1p-63 - 0x1.0000000000000002p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (1.0 + 0.25 i)": -double: 1 -idouble: 1 -Test "Real part of: casin (1.0 + 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (1.0 + 0.5 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (1.0 + 0x1.fp-10 i)": -float: 1 -ifloat: 1 -Test "Real part of: casin (1.0 + 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (1.0 + 0x1.fp-30 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casin (1.0 - 0.25 i)": -double: 1 -idouble: 1 -Test "Real part of: casin (1.0 - 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (1.0 - 0.5 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (1.0 - 0x1.fp-10 i)": -float: 1 -ifloat: 1 -Test "Real part of: casin (1.0 - 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (1.0 - 0x1.fp-30 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (1.5 + +0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (1.5 + 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (1.5 + 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (1.5 + 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (1.5 - 0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (1.5 - 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (1.5 - 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casin (1.5 - 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 - -# casinh -Test "Real part of: casinh (+0 + 1.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (+0 - 1.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0 + 1.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0 - 1.5 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (-0.0 + 0x0.ffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0.0 + 0x1.0000000000001p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (-0.0 - 0x0.ffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0.0 - 0x1.0000000000001p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (-0.25 + 1.0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casinh (-0.25 - 1.0 i)": -double: 1 -idouble: 1 -Test "Real part of: casinh (-0.5 + +0 i)": -float: 1 -ifloat: 1 -Test "Real part of: casinh (-0.5 + 0x1.fp-129 i)": -float: 1 -ifloat: 1 -Test "Real part of: casinh (-0.5 + 0x1p-105 i)": -float: 1 -ifloat: 1 -Test "Real part of: casinh (-0.5 + 0x1p-112 i)": -float: 1 -ifloat: 1 -Test "Real part of: casinh (-0.5 + 0x1p-23 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (-0.5 + 0x1p-23 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: casinh (-0.5 + 0x1p-52 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0.5 + 0x1p-63 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0.5 + 1.0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (-0.5 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0.5 - 0 i)": -float: 1 -ifloat: 1 -Test "Real part of: casinh (-0.5 - 0x1.fp-129 i)": -float: 1 -ifloat: 1 -Test "Real part of: casinh (-0.5 - 0x1p-105 i)": -float: 1 -ifloat: 1 -Test "Real part of: casinh (-0.5 - 0x1p-112 i)": -float: 1 -ifloat: 1 -Test "Real part of: casinh (-0.5 - 0x1p-23 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (-0.5 - 0x1p-23 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: casinh (-0.5 - 0x1p-52 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0.5 - 0x1p-63 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0.5 - 1.0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (-0.5 - 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x0.fffffffffffff8p0 + 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x0.fffffffffffff8p0 + 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x0.fffffffffffff8p0 + 0x1p-52 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x0.fffffffffffff8p0 - 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x0.fffffffffffff8p0 - 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x0.fffffffffffff8p0 - 0x1p-52 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x0.ffffffffffffffffp0 + 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x0.ffffffffffffffffp0 + 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x0.ffffffffffffffffp0 + 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (-0x0.ffffffffffffffffp0 + 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x0.ffffffffffffffffp0 - 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x0.ffffffffffffffffp0 - 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x0.ffffffffffffffffp0 - 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (-0x0.ffffffffffffffffp0 - 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x0.ffffffp0 + 0x1p-23 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x0.ffffffp0 - 0x1p-23 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (-0x1.0000000000000002p0 + 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (-0x1.0000000000000002p0 - 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (-0x1.0000000000001p0 + 0x1p-52 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casinh (-0x1.0000000000001p0 - 0x1p-52 i)": -double: 1 -idouble: 1 -Test "Real part of: casinh (-0x1.000002p0 + 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1.000002p0 + 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (-0x1.000002p0 + 0x1.fp-129 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.000002p0 - 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1.000002p0 - 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (-0x1.000002p0 - 0x1.fp-129 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)": -float: 1 -ifloat: 1 -Test "Real part of: casinh (-0x1.fp-10 - 1.0 i)": -float: 1 -ifloat: 1 -Test "Real part of: casinh (-0x1.fp-1025 + 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1.fp-1025 + 0x1.0000000000001p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1.fp-1025 + 1.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1.fp-1025 - 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1.fp-1025 - 0x1.0000000000001p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1.fp-1025 - 1.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1.fp-129 + 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (-0x1.fp-129 + 0x0.ffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (-0x1.fp-129 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1.fp-129 + 1.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1.fp-129 - 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (-0x1.fp-129 - 0x0.ffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (-0x1.fp-129 - 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1.fp-129 - 1.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1.fp-16385 + 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1.fp-16385 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1.fp-16385 + 1.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1.fp-16385 - 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1.fp-16385 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1.fp-16385 - 1.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1.fp-30 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1.fp-30 - 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1p-23 + 0.5 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casinh (-0x1p-23 + 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1p-23 + 0x0.ffffffp0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: casinh (-0x1p-23 - 0.5 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casinh (-0x1p-23 - 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1p-23 - 0x0.ffffffp0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: casinh (-0x1p-52 + 0.5 i)": -double: 1 -idouble: 1 -Test "Real part of: casinh (-0x1p-52 + 0x0.fffffffffffff8p0 i)": -double: 1 -idouble: 1 -Test "Real part of: casinh (-0x1p-52 + 0x1.0000000000001p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1p-52 - 0.5 i)": -double: 1 -idouble: 1 -Test "Real part of: casinh (-0x1p-52 - 0x0.fffffffffffff8p0 i)": -double: 1 -idouble: 1 -Test "Real part of: casinh (-0x1p-52 - 0x1.0000000000001p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1p-63 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1p-63 + 0x1.0000000000000002p0 i)": -ildouble: 2 -ldouble: 2 -Test "Real part of: casinh (-0x1p-63 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-0x1p-63 - 0x1.0000000000000002p0 i)": -ildouble: 2 -ldouble: 2 -Test "Real part of: casinh (-1.0 + +0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: casinh (-1.0 + 0.25 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-1.0 + 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (-1.0 + 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-1.0 + 0x1.fp-10 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (-1.0 + 0x1.fp-10 i)": -float: 1 -ifloat: 1 -Test "Real part of: casinh (-1.0 + 0x1.fp-100 i)": -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 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (-1.0 + 0x1.fp-30 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-1.0 - 0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: casinh (-1.0 - 0.25 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-1.0 - 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (-1.0 - 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-1.0 - 0x1.fp-10 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (-1.0 - 0x1.fp-10 i)": -float: 1 -ifloat: 1 -Test "Real part of: casinh (-1.0 - 0x1.fp-100 i)": -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 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (-1.0 - 0x1.fp-30 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (-1.5 + +0 i)": -double: 1 -idouble: 1 -Test "Real part of: casinh (-1.5 + 0x1.fp-1025 i)": -double: 1 -idouble: 1 -Test "Real part of: casinh (-1.5 + 0x1.fp-129 i)": -double: 1 -idouble: 1 -Test "Real part of: casinh (-1.5 - 0 i)": -double: 1 -idouble: 1 -Test "Real part of: casinh (-1.5 - 0x1.fp-1025 i)": -double: 1 -idouble: 1 -Test "Real part of: casinh (-1.5 - 0x1.fp-129 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casinh (-2 - 3 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (0.0 + 0x0.ffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0.0 + 0x1.0000000000001p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (0.0 - 0x0.ffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0.0 - 0x1.0000000000001p0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (0.25 + 1.0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casinh (0.25 - 1.0 i)": -double: 1 -idouble: 1 -Test "Real part of: casinh (0.5 + +0 i)": -float: 1 -ifloat: 1 -Test "Real part of: casinh (0.5 + 0x1.fp-129 i)": -float: 1 -ifloat: 1 -Test "Real part of: casinh (0.5 + 0x1p-105 i)": -float: 1 -ifloat: 1 -Test "Real part of: casinh (0.5 + 0x1p-112 i)": -float: 1 -ifloat: 1 -Test "Real part of: casinh (0.5 + 0x1p-23 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (0.5 + 0x1p-23 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: casinh (0.5 + 0x1p-52 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0.5 + 0x1p-63 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0.5 + 1.0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (0.5 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0.5 - 0 i)": -float: 1 -ifloat: 1 -Test "Real part of: casinh (0.5 - 0x1.fp-129 i)": -float: 1 -ifloat: 1 -Test "Real part of: casinh (0.5 - 0x1p-105 i)": -float: 1 -ifloat: 1 -Test "Real part of: casinh (0.5 - 0x1p-112 i)": -float: 1 -ifloat: 1 -Test "Real part of: casinh (0.5 - 0x1p-23 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (0.5 - 0x1p-23 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: casinh (0.5 - 0x1p-52 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0.5 - 0x1p-63 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0.5 - 1.0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (0.5 - 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0.75 + 1.25 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (0.75 + 1.25 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x0.fffffffffffff8p0 + 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x0.fffffffffffff8p0 + 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x0.fffffffffffff8p0 + 0x1p-52 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x0.fffffffffffff8p0 - 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x0.fffffffffffff8p0 - 0x1.fp-1025 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x0.fffffffffffff8p0 - 0x1p-52 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x0.ffffffffffffffffp0 + 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x0.ffffffffffffffffp0 + 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x0.ffffffffffffffffp0 + 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (0x0.ffffffffffffffffp0 + 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x0.ffffffffffffffffp0 - 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x0.ffffffffffffffffp0 - 0x1.fp-16385 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x0.ffffffffffffffffp0 - 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (0x0.ffffffffffffffffp0 - 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x0.ffffffp0 + 0x1p-23 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x0.ffffffp0 - 0x1p-23 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (0x1.0000000000000002p0 + 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (0x1.0000000000000002p0 - 0x1p-63 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (0x1.0000000000001p0 + 0x1p-52 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casinh (0x1.0000000000001p0 - 0x1p-52 i)": -double: 1 -idouble: 1 -Test "Real part of: casinh (0x1.000002p0 + 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1.000002p0 + 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (0x1.000002p0 + 0x1.fp-129 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.000002p0 - 0.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1.000002p0 - 0x1.fp-129 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (0x1.000002p0 - 0x1.fp-129 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)": -float: 1 -ifloat: 1 -Test "Real part of: casinh (0x1.fp-10 - 1.0 i)": -float: 1 -ifloat: 1 -Test "Real part of: casinh (0x1.fp-1025 + 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1.fp-1025 + 0x1.0000000000001p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1.fp-1025 + 1.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1.fp-1025 - 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1.fp-1025 - 0x1.0000000000001p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1.fp-1025 - 1.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1.fp-129 + 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (0x1.fp-129 + 0x0.ffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (0x1.fp-129 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1.fp-129 + 1.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1.fp-129 - 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (0x1.fp-129 - 0x0.ffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (0x1.fp-129 - 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1.fp-129 - 1.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1.fp-16385 + 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1.fp-16385 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1.fp-16385 + 1.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1.fp-16385 - 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1.fp-16385 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1.fp-16385 - 1.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1.fp-30 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1.fp-30 - 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1.fp1023 + 0x1.fp1023 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1.fp127 + 0x1.fp127 i)": -double: 1 -idouble: 1 -Test "Real part of: casinh (0x1p-23 + 0.5 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casinh (0x1p-23 + 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1p-23 + 0x0.ffffffp0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: casinh (0x1p-23 - 0.5 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: casinh (0x1p-23 - 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1p-23 - 0x0.ffffffp0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: casinh (0x1p-52 + 0.5 i)": -double: 1 -idouble: 1 -Test "Real part of: casinh (0x1p-52 + 0x0.fffffffffffff8p0 i)": -double: 1 -idouble: 1 -Test "Real part of: casinh (0x1p-52 + 0x1.0000000000001p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1p-52 - 0.5 i)": -double: 1 -idouble: 1 -Test "Real part of: casinh (0x1p-52 - 0x0.fffffffffffff8p0 i)": -double: 1 -idouble: 1 -Test "Real part of: casinh (0x1p-52 - 0x1.0000000000001p0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1p-63 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1p-63 + 0x1.0000000000000002p0 i)": -ildouble: 2 -ldouble: 2 -Test "Real part of: casinh (0x1p-63 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (0x1p-63 - 0x1.0000000000000002p0 i)": -ildouble: 2 -ldouble: 2 -Test "Real part of: casinh (1.0 + +0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: casinh (1.0 + 0.25 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (1.0 + 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (1.0 + 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (1.0 + 0x1.fp-10 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (1.0 + 0x1.fp-10 i)": -float: 1 -ifloat: 1 -Test "Real part of: casinh (1.0 + 0x1.fp-100 i)": -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 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (1.0 + 0x1.fp-30 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (1.0 - 0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: casinh (1.0 - 0.25 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (1.0 - 0.5 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (1.0 - 0.5 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (1.0 - 0x1.fp-10 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (1.0 - 0x1.fp-10 i)": -float: 1 -ifloat: 1 -Test "Real part of: casinh (1.0 - 0x1.fp-100 i)": -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 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: casinh (1.0 - 0x1.fp-30 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: casinh (1.5 + +0 i)": -double: 1 -idouble: 1 -Test "Real part of: casinh (1.5 + 0x1.fp-1025 i)": -double: 1 -idouble: 1 -Test "Real part of: casinh (1.5 + 0x1.fp-129 i)": -double: 1 -idouble: 1 -Test "Real part of: casinh (1.5 - 0 i)": -double: 1 -idouble: 1 -Test "Real part of: casinh (1.5 - 0x1.fp-1025 i)": -double: 1 -idouble: 1 -Test "Real part of: casinh (1.5 - 0x1.fp-129 i)": -double: 1 -idouble: 1 - -# catan -Test "Imaginary part of: catan (-0x0.fffffffffffff8p0 + 0x1p-27 i)": -double: 1 -idouble: 1 -Test "Real part of: catan (-0x0.ffffffffffffffffp0 + 0x1p-33 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: catan (-0x0.ffffffffffffffffp0 + 0x1p-33 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: catan (-0x0.ffffffffffffffffp0 - 0x1p-33 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: catan (-0x0.ffffffp0 + 0x1p-13 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: catan (-0x1.000002p0 - 0x1p-13 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: catan (-0x1.fp1023 + 0x1.fp1023 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: catan (-0x1.fp1023 - 0x1.fp1023 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: catan (-0x1.fp127 + 0x1.fp127 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: catan (-0x1.fp127 - 0x1.fp127 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: catan (-0x1p-1020 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: catan (-0x1p-1020 - 1.0 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-64 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: catan (-2 - 3 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: catan (0.75 + 1.25 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: catan (0x0.fffffffffffff8p0 + 0x1p-27 i)": -double: 1 -idouble: 1 -Test "Real part of: catan (0x0.ffffffffffffffffp0 + 0x1p-33 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: catan (0x0.ffffffffffffffffp0 + 0x1p-33 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: catan (0x0.ffffffffffffffffp0 - 0x1p-33 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: catan (0x0.ffffffp0 + 0x1p-13 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: catan (0x1.000002p0 - 0x1p-13 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: catan (0x1.fp1023 + 0x1.fp1023 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: catan (0x1.fp1023 - 0x1.fp1023 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: catan (0x1.fp127 + 0x1.fp127 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: catan (0x1.fp127 - 0x1.fp127 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: catan (0x1p-1020 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: catan (0x1p-1020 - 1.0 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-64 i)": -ildouble: 1 -ldouble: 1 - -# catanh -Test "Real part of: catanh (-0x1.fp1023 + 0x1.fp1023 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: catanh (-0x1.fp1023 - 0x1.fp1023 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: catanh (-0x1.fp127 + 0x1.fp127 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: catanh (-0x1.fp127 - 0x1.fp127 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: catanh (-0x1p-13 + 0x1.000002p0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: catanh (-0x1p-13 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: catanh (-0x1p-13 - 0x1.000002p0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: catanh (-0x1p-13 - 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: catanh (-0x1p-33 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: catanh (-0x1p-33 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: catanh (-0x1p-64 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: catanh (-0x1p-64 - 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: catanh (-1.0 + 0x1p-1020 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: catanh (-1.0 - 0x1p-1020 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 -Test "Real part of: catanh (0x1.fp1023 + 0x1.fp1023 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: catanh (0x1.fp1023 - 0x1.fp1023 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: catanh (0x1.fp127 + 0x1.fp127 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: catanh (0x1.fp127 - 0x1.fp127 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: catanh (0x1p-13 + 0x0.ffffffp0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: catanh (0x1p-13 - 0x0.ffffffp0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: catanh (0x1p-27 + 0x0.fffffffffffff8p0 i)": -double: 1 -idouble: 1 -Test "Real part of: catanh (0x1p-27 - 0x0.fffffffffffff8p0 i)": -double: 1 -idouble: 1 -Test "Real part of: catanh (0x1p-33 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: catanh (0x1p-33 + 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: catanh (0x1p-33 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: catanh (0x1p-33 - 0x0.ffffffffffffffffp0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: catanh (1.0 + 0x1p-1020 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: catanh (1.0 - 0x1p-1020 i)": -ildouble: 1 -ldouble: 1 - -# cbrt -Test "cbrt (-0x4.189374bc6a7ef9d8p-12)": -ildouble: 1 -ldouble: 1 -Test "cbrt (-0x4.18937p-12)": -float: 1 -ifloat: 1 -Test "cbrt (-0x4p-1024)": -double: 1 -idouble: 1 -Test "cbrt (-0x8p-152)": -double: 1 -idouble: 1 -Test "cbrt (0x1.86ap+16)": -double: 1 -idouble: 1 -Test "cbrt (0x4p-1024)": -double: 1 -idouble: 1 -Test "cbrt (0x8p-152)": -double: 1 -idouble: 1 -Test "cbrt (0xf.ep-4)": -ildouble: 1 -ldouble: 1 - -# ccos -Test "Real part of: ccos (0xcp-4 + 0x1.4p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ccos (0xcp-4 + 0x1.4p+0 i)": -ildouble: 1 -ldouble: 1 - -# ccosh -Test "Imaginary part of: ccosh (-0x2p+0 - 0x3p+0 i)": -ildouble: 1 -ldouble: 1 - -# cexp -Test "Real part of: cexp (-0x2.71p+12 + 0x8p+16380 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cexp (-0x2.71p+12 + 0xf.fffffp+124 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cexp (-0x2.c6ap+12 + 0xcp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cexp (-0x5.fp+4 + 0xcp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cexp (0x2.c5c9p+12 + 0xcp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cexp (0x2.c5dp+8 + 0xcp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cexp (0x3.2p+4 + 0x8p+124 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cexp (0x5.8cp+4 + 0xcp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cexp (0x5.8cp+4 + 0xcp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cexp (0xcp-4 + 0x1.4p+0 i)": -ildouble: 1 -ldouble: 1 - -# clog -Test "Real part of: clog (-0x1.0000000123456p+0 + +0 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (-0x1.0000000123456p+0 + 0x1.2345678p-1000 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (-0x1.0000000123456p+0 + 0x4.8d159ep-32 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (-0x1.0000000123456p+0 + 0x8p-152 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (-0x1.000002p+0 + +0 i)": -float: 1 -ifloat: 1 -Test "Real part of: clog (-0x1.000002p+0 + 0x4.8d1598p-32 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: clog (-0x1.000002p+0 + 0x4.8d1598p-32 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (-0x1.000002p+0 + 0x4.8d159ep-32 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (-0x1.000002p+0 + 0x4.8d159ep-32 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (-0x1.000002p+0 + 0x4.8d15ap-32 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (-0x1.000002p+0 + 0x4.8d15ap-32 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (-0x1.000002p+0 + 0x8p-152 i)": -float: 1 -ifloat: 1 -Test "Real part of: clog (0x1.0000000000000012p+0 + +0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.0000000000000012p+0 + 0x1.234566p-60 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.0000000000000012p+0 + 0x1.23456789p-1000 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.0000000000000012p+0 + 0x1.23456789p-60 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.0000000000000012p+0 + 0x1.234568p-60 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.0000000000000012p+0 + 0x8p-152 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.0000000000000014p+0 + 0x1.234566p-60 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.0000000000000014p+0 + 0x1.23456789p-60 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.0000000000000014p+0 + 0x1.234568p-60 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.0000000000001p+0 + +0 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x1.0000000000001p+0 + 0x1.234566p-60 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x1.0000000000001p+0 + 0x1.23456789p-1000 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x1.0000000000001p+0 + 0x1.23456789p-60 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x1.0000000000001p+0 + 0x1.234568p-60 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x1.0000000000001p+0 + 0x8p-152 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x1.000002p+0 + +0 i)": -float: 1 -ifloat: 1 -Test "Real part of: clog (0x1.000002p+0 + 0x1.234566p-60 i)": -float: 1 -ifloat: 1 -Test "Real part of: clog (0x1.000002p+0 + 0x1.234568p-60 i)": -float: 1 -ifloat: 1 -Test "Real part of: clog (0x1.000002p+0 + 0x8p-152 i)": -float: 1 -ifloat: 1 -Test "Real part of: clog (0x1.000566p+0 + 0x1.234p-100 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog (0x1.000566p+0 + 0x4.8dp-12 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x1.48e45e3268d8p-4 + 0xf.f2c638bcfe0ep-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.48e45e3268d8p-4 + 0xf.f2c64p-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x1.48e45e3268d8p-4 + 0xf.f2c64p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x1.48e45ep-4 + 0xf.f2c638bcfe0ep-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.48e45ep-4 + 0xf.f2c63p-4 i)": -float: 1 -ifloat: 1 -Test "Real part of: clog (0x1.48e45ep-4 + 0xf.f2c64p-4 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog (0x1.48e46p-4 + 0xf.f2c638bcfe0ep-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.8907bc3694fd4e7cp-4 + 0xf.ed1990460bep-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.8907bc3694fd4e7ep-4 + 0xf.ed1990460bdfbf7p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.8907bc3694fd4p-4 + 0xf.ed1990460bdf8p-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x1.8907bc3694fd4p-4 + 0xf.ed1990460bdf8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.8907bc3694fd4p-4 + 0xf.ed1990460bdfbf6p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.8907bc3694fd4p-4 + 0xf.ed1990460bdfbf7p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x1.8907bc3694fd4p-4 + 0xf.ed199p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x1.8907bc3694fd4p-4 + 0xf.ed19ap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.8907bc3694fd5p-4 + 0xf.ed1990460bdf8p-4 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x1.8907bcp-4 + 0xf.ed1990460bdf8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.8907bcp-4 + 0xf.ed1990460bdfbf6p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x1.8907bcp-4 + 0xf.ed1990460bdfbf6p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.8907bcp-4 + 0xf.ed1990460bdfbf7p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x1.8907bcp-4 + 0xf.ed1990460bdfbf7p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x1.8907bcp-4 + 0xf.ed19ap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.8907bep-4 + 0xf.ed1990460bdfbf6p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x1.8907bep-4 + 0xf.ed1990460bep-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.c67eccp-4 + 0xf.e6b4d1d7a6e08p-4 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x1.c67eccp-4 + 0xf.e6b4d1d7a6e0948p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.c67eccp-4 + 0xf.e6b4d1d7a6e1p-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x1.c67eccp-4 + 0xf.e6b4d1d7a6e1p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.c67eccp-4 + 0xf.e6b4ep-4 i)": -float: 1 -ifloat: 1 -Test "Real part of: clog (0x1.c67ecd92a85944b8p-4 + 0xf.e6b4d1d7a6e08p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.c67ecd92a85944b8p-4 + 0xf.e6b4d1d7a6e0949p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x1.c67ecd92a85944bap-4 + 0xf.e6b4d1d7a6e1p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.c67ecd92a85944bap-4 + 0xf.e6b4ep-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x1.c67ecd92a8594p-4 + 0xf.e6b4d1d7a6e08p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.c67ecd92a8594p-4 + 0xf.e6b4dp-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x1.c67ecd92a8594p-4 + 0xf.e6b4dp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.c67ecd92a8594p-4 + 0xf.e6b4ep-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x1.c67ecd92a8595p-4 + 0xf.e6b4d1d7a6e0948p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x1.c67ecd92a8595p-4 + 0xf.e6b4d1d7a6e0949p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.c67ecd92a8595p-4 + 0xf.e6b4d1d7a6e1p-4 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x1.c67ecd92a8595p-4 + 0xf.e6b4ep-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1.c67ecep-4 + 0xf.e6b4d1d7a6e1p-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x1.c67ecep-4 + 0xf.e6b4d1d7a6e1p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x1.c67ecep-4 + 0xf.e6b4dp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x1p+0 + 0x4.8d1598p-12 i)": -float: 1 -ifloat: 1 -Test "Real part of: clog (0x1p-16440 + +0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x2.0ce7b8p-4 + 0xf.de3a3p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x2.0ce7ba1e4902p-4 + 0xf.de3a3p-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x2.2d04p-8 + 0xf.ffda2p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x2.82b794p-4 + 0xf.cd42a15bf9a3612p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x2.82b794p-4 + 0xf.cd42a15bf9a3612p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x2.82b794p-4 + 0xf.cd42a15bf9a3613p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x2.82b794p-4 + 0xf.cd42a15bf9a38p-4 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x2.82b794p-4 + 0xf.cd42a15bf9a38p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x2.82b794p-4 + 0xf.cd42a15bf9a3p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x2.82b795e420b281a8p-4 + 0xf.cd42a15bf9a38p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x2.82b795e420b281a8p-4 + 0xf.cd42ap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x2.82b795e420b281a8p-4 + 0xf.cd42ap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x2.82b795e420b281a8p-4 + 0xf.cd42bp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x2.82b795e420b281a8p-4 + 0xf.cd42bp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x2.82b795e420b281acp-4 + 0xf.cd42a15bf9a3613p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x2.82b795e420b281acp-4 + 0xf.cd42a15bf9a38p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x2.82b795e420b281acp-4 + 0xf.cd42a15bf9a3p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x2.82b795e420b281acp-4 + 0xf.cd42ap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x2.82b795e420b28p-4 + 0xf.cd42a15bf9a3p-4 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x2.82b795e420b2ap-4 + 0xf.cd42a15bf9a38p-4 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x2.82b795e420b2ap-4 + 0xf.cd42ap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x2.82b795e420b2ap-4 + 0xf.cd42bp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x2.82b798p-4 + 0xf.cd42a15bf9a3613p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x2.82b798p-4 + 0xf.cd42ap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.2cdb84p-4 + 0xf.ae888f0455f6p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.2cdb84p-4 + 0xf.ae888f0455f6p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.2cdb84p-4 + 0xf.ae888p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.2cdb855bcb8d8p-4 + 0xf.ae888p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.2cdb88p-4 + 0xf.ae888f0455f6p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.2cdb88p-4 + 0xf.ae888p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.3b8f9163276aa8dcp-4 + 0xf.ab873d09e61e797p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.3b8f9163276aa8dcp-4 + 0xf.ab873d09e61e8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.3b8f9163276aa8ep-4 + 0xf.ab873d09e61e798p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.3b8f9163276aap-4 + 0xf.ab873d09e61e797p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.3b8f9163276aap-4 + 0xf.ab873d09e61e8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.3b8f9163276aap-4 + 0xf.ab873p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.3b8f9163276acp-4 + 0xf.ab873d09e61e798p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.3b8f9163276acp-4 + 0xf.ab873p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.3b8f9163276acp-4 + 0xf.ab874p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.3b8f94p-4 + 0xf.ab873d09e61e797p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.3b8f94p-4 + 0xf.ab873d09e61e8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.3b8f94p-4 + 0xf.ab873d09e61ep-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.3b8f94p-4 + 0xf.ab873p-4 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog (0x3.3b8f9p-4 + 0xf.ab873d09e61e8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.3b8f9p-4 + 0xf.ab873d09e61ep-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.3b8f9p-4 + 0xf.ab873p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.6e17119fb8aaap-4 + 0xf.a0c58a83e57c772p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.6e17119fb8aaap-4 + 0xf.a0c58a83e57c773p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.6e17119fb8aaap-4 + 0xf.a0c58p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.6e17119fb8aab754p-4 + 0xf.a0c58a83e57c8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.6e17119fb8aab754p-4 + 0xf.a0c58a83e57cp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.6e17119fb8aab754p-4 + 0xf.a0c58p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.6e17119fb8aab754p-4 + 0xf.a0c59p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.6e17119fb8aab754p-4 + 0xf.a0c59p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.6e17119fb8aacp-4 + 0xf.a0c58a83e57c773p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.6e17119fb8aacp-4 + 0xf.a0c58p-4 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.6e1714p-4 + 0xf.a0c58a83e57c772p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.6e1714p-4 + 0xf.a0c58a83e57c772p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.6e1714p-4 + 0xf.a0c58a83e57cp-4 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x3.6e1714p-4 + 0xf.a0c58p-4 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog (0x3.6e1714p-4 + 0xf.a0c58p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.6e1714p-4 + 0xf.a0c59p-4 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog (0x3.6e1714p-4 + 0xf.a0c59p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.6e171p-4 + 0xf.a0c58a83e57c773p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.bea2bcp-4 + 0xf.8e3d619a8d118p-4 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x3.bea2bcp-4 + 0xf.8e3d619a8d11bfdp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.bea2bcp-4 + 0xf.8e3d619a8d11bfep-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.bea2bcp-4 + 0xf.8e3d619a8d11bfep-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.bea2bcp-4 + 0xf.8e3d619a8d12p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.bea2bd62e3501174p-4 + 0xf.8e3d619a8d11bfdp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.bea2bd62e3501174p-4 + 0xf.8e3d619a8d11bfep-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.bea2bd62e3501174p-4 + 0xf.8e3d619a8d11bfep-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.bea2bd62e350117p-4 + 0xf.8e3d619a8d11bfdp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.bea2bd62e350117p-4 + 0xf.8e3d619a8d11bfep-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.bea2bd62e350117p-4 + 0xf.8e3d7p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.bea2bd62e3502p-4 + 0xf.8e3d619a8d11bfep-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.bea2bd62e3502p-4 + 0xf.8e3d619a8d12p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.bea2bd62e3502p-4 + 0xf.8e3d6p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.bea2bd62e35p-4 + 0xf.8e3d6p-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x3.bea2bd62e35p-4 + 0xf.8e3d6p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.bea2cp-4 + 0xf.8e3d619a8d12p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.bea2cp-4 + 0xf.8e3d7p-4 i)": -float: 1 -ifloat: 1 -Test "Real part of: clog (0x3.e1d0a105ac4eap-4 + 0xf.859b3d1b06d005ep-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.e1d0a105ac4eap-4 + 0xf.859b3d1b06d08p-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x3.e1d0a105ac4eap-4 + 0xf.859b3d1b06dp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.e1d0a105ac4eap-4 + 0xf.859b3p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.e1d0a105ac4ebeacp-4 + 0xf.859b3d1b06d005dp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.e1d0a105ac4ebeacp-4 + 0xf.859b3d1b06dp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.e1d0a105ac4ebeacp-4 + 0xf.859b3p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.e1d0a105ac4ebebp-4 + 0xf.859b3d1b06dp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.e1d0a105ac4ebebp-4 + 0xf.859b3p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.e1d0a105ac4ebebp-4 + 0xf.859b3p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.e1d0a105ac4ecp-4 + 0xf.859b3d1b06d005dp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.e1d0a105ac4ecp-4 + 0xf.859b3d1b06d005dp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.e1d0a105ac4ecp-4 + 0xf.859b3d1b06d005ep-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.e1d0a105ac4ecp-4 + 0xf.859b3p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.e1d0a4p-4 + 0xf.859b3d1b06d08p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.e1d0a4p-4 + 0xf.859b3p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.e1d0ap-4 + 0xf.859b3d1b06d005dp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x3.e1d0ap-4 + 0xf.859b3d1b06d005dp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.e1d0ap-4 + 0xf.859b3d1b06d08p-4 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x3.e1d0ap-4 + 0xf.859b3d1b06dp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x3.e1d0ap-4 + 0xf.859b3p-4 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog (0x3.e1d0ap-4 + 0xf.859b4p-4 i)": -float: 1 -ifloat: 1 -Test "Real part of: clog (0x4.0dbf78p-4 + 0xf.7a5c1af8e3ce8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x4.0dbf78p-4 + 0xf.7a5c1af8e3cec09p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x4.0dbf78p-4 + 0xf.7a5c1af8e3cfp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x4.0dbf7d40fe1acp-4 + 0xf.7a5c1af8e3ce8p-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x4.0dbf7d40fe1acp-4 + 0xf.7a5c1af8e3cfp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x4.0dbf7d40fe1acp-4 + 0xf.7a5c1p-4 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x4.0dbf7d40fe1ad688p-4 + 0xf.7a5c1af8e3ce8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x4.0dbf7d40fe1ad688p-4 + 0xf.7a5c1af8e3cfp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x4.0dbf7d40fe1bp-4 + 0xf.7a5c1af8e3ce8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x4.0dbf7d40fe1bp-4 + 0xf.7a5c1af8e3cec09p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x4.0dbf7d40fe1bp-4 + 0xf.7a5c2p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x4.0dbf7d40fe1bp-4 + 0xf.7a5c2p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x4.0dbf8p-4 + 0xf.7a5c1af8e3ce8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x4.0dbf8p-4 + 0xf.7a5c1af8e3cfp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x4.0dbf8p-4 + 0xf.7a5c2p-4 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x4.7017a2e368078p-4 + 0xf.5f4a550c9d758p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x4.7017a2e368078p-4 + 0xf.5f4a550c9d76p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x4.7017a2e368078p-4 + 0xf.5f4a6p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x4.7017a2e36807acb8p-4 + 0xf.5f4a550c9d75e3bp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x4.7017a2e36807acbp-4 + 0xf.5f4a5p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x4.7017a2e36807acbp-4 + 0xf.5f4a6p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x4.7017a2e36807cp-4 + 0xf.5f4a550c9d758p-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x4.7017a2e36807cp-4 + 0xf.5f4a550c9d758p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x4.7017a2e36807cp-4 + 0xf.5f4a550c9d75e3bp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x4.7017a2e36807cp-4 + 0xf.5f4a550c9d76p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x4.7017a8p-4 + 0xf.5f4a550c9d75e3cp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x4.7017a8p-4 + 0xf.5f4a550c9d76p-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x4.7017a8p-4 + 0xf.5f4a550c9d76p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x4.7017a8p-4 + 0xf.5f4a6p-4 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog (0x4.7017ap-4 + 0xf.5f4a550c9d75e3bp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x4.7017ap-4 + 0xf.5f4a550c9d76p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x4.7017ap-4 + 0xf.5f4a5p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x4.d9e8c415d5644p-4 + 0xf.3f302p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x4.d9e8c8p-4 + 0xf.3f303p-4 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog (0x4.d9e8c8p-4 + 0xf.3f303p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x4.d9e8cp-4 + 0xf.3f30281507d8p-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x4.d9e8cp-4 + 0xf.3f302p-4 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog (0x5.318c58p-4 + 0xf.22363bf989d98p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x5.318c596a8cb114ep-4 + 0xf.22363bf989dap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x5.318c596a8cb114ep-4 + 0xf.22363bf989dap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x5.318c596a8cb114ep-4 + 0xf.22363p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x5.318c596a8cb114ep-4 + 0xf.22364p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x5.318c596a8cb1p-4 + 0xf.22363bf989dap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x5.318c596a8cb1p-4 + 0xf.22363p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x5.318c596a8cb1p-4 + 0xf.22364p-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x5.318c6p-4 + 0xf.22363bf989d9b5cp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x5.318c6p-4 + 0xf.22363bf989dap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x5.b06b680ea2ccp-4 + 0xe.f452b965da9fp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x5.b06b68p-4 + 0xe.f452b965da9fp-4 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x5.b06b68p-4 + 0xe.f452bp-4 i)": -float: 1 -ifloat: 1 -Test "Real part of: clog (0x5.b06b7p-4 + 0xe.f452b965da9fp-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x5.b06b7p-4 + 0xe.f452b965da9fp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x5.ba8ce4b6p-4 + 0xe.f0742508p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x5.ba8cep-4 + 0xe.f0743p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.02fd5037c4792efp-4 + 0xe.d3e2086dcca80b8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.02fd5037c4792efp-4 + 0xe.d3e21p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.02fd5037c4792efp-4 + 0xe.d3e2p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.02fd5037c4792efp-4 + 0xe.d3e2p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.02fd5037c4794p-4 + 0xe.d3e2086dcca8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.02fd5037c479p-4 + 0xe.d3e2086dcca80b8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.02fd5037c479p-4 + 0xe.d3e2086dcca80b8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.02fd5037c479p-4 + 0xe.d3e21p-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x6.02fd5037c479p-4 + 0xe.d3e21p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.02fd5037c479p-4 + 0xe.d3e2p-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x6.02fd5037c479p-4 + 0xe.d3e2p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.02fd58p-4 + 0xe.d3e2086dcca80b8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.02fd58p-4 + 0xe.d3e2086dcca80b8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.02fd58p-4 + 0xe.d3e2086dcca8p-4 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x6.02fd58p-4 + 0xe.d3e21p-4 i)": -float: 1 -ifloat: 1 -Test "Real part of: clog (0x6.02fd5p-4 + 0xe.d3e2086dcca80b8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.1c643068cd124p-4 + 0xe.c97c2018b428257p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.1c643068cd124p-4 + 0xe.c97c2018b428258p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.1c643068cd124p-4 + 0xe.c97c2018b4288p-4 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x6.1c643068cd125ef8p-4 + 0xe.c97c3p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.1c643068cd125ef8p-4 + 0xe.c97c3p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.1c643068cd125efp-4 + 0xe.c97c2018b4288p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.1c643068cd125efp-4 + 0xe.c97c3p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.1c643068cd128p-4 + 0xe.c97c2018b428258p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.1c643068cd128p-4 + 0xe.c97c2p-4 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x6.1c643068cd128p-4 + 0xe.c97c3p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.1c643068cd128p-4 + 0xe.c97c3p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.1c6438p-4 + 0xe.c97c2018b428258p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.1c6438p-4 + 0xe.c97c2018b4288p-4 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x6.1c6438p-4 + 0xe.c97c2018b428p-4 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.1c6438p-4 + 0xe.c97c2p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.1c6438p-4 + 0xe.c97c3p-4 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog (0x6.1c643p-4 + 0xe.c97c2018b428257p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.1c643p-4 + 0xe.c97c2p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.2aff83ae6467cb08p-4 + 0xe.c36a599a86ba8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.2aff83ae6467cb08p-4 + 0xe.c36a6p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.2aff83ae6467cbp-4 + 0xe.c36a599a86ba8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.2aff83ae6467cbp-4 + 0xe.c36a599a86ba8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.2aff83ae6467cbp-4 + 0xe.c36a599a86baf8fp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.2aff83ae6467cbp-4 + 0xe.c36a5p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.2aff83ae6467cbp-4 + 0xe.c36a6p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.2aff83ae6467cp-4 + 0xe.c36a599a86baf8fp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.2aff83ae6467cp-4 + 0xe.c36a599a86bbp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.2aff83ae6467cp-4 + 0xe.c36a6p-4 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x6.2aff83ae6468p-4 + 0xe.c36a599a86ba8p-4 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x6.2aff83ae6468p-4 + 0xe.c36a599a86baf8fp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.2aff83ae6468p-4 + 0xe.c36a599a86baf9p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.2aff83ae6468p-4 + 0xe.c36a5p-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x6.2aff83ae6468p-4 + 0xe.c36a6p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.2aff88p-4 + 0xe.c36a599a86ba8p-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x6.2aff88p-4 + 0xe.c36a599a86baf8fp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.2aff8p-4 + 0xe.c36a599a86ba8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.2aff8p-4 + 0xe.c36a599a86baf8fp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.2aff8p-4 + 0xe.c36a599a86baf8fp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.2aff8p-4 + 0xe.c36a599a86baf9p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.2aff8p-4 + 0xe.c36a5p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.b10b48p-4 + 0xe.8893cbb449253a1p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.b10b48p-4 + 0xe.8893cbb44925p-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x6.b10b48p-4 + 0xe.8893cp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.b10b4f3520214p-4 + 0xe.8893cbb449253a1p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.b10b4f3520214p-4 + 0xe.8893cp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.b10b4f3520217b6p-4 + 0xe.8893cbb449253a1p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.b10b4f3520217b6p-4 + 0xe.8893cbb44925p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.b10b4f3520218p-4 + 0xe.8893cbb44925p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.b10b4f3520218p-4 + 0xe.8893cp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x6.b10b4f3520218p-4 + 0xe.8893dp-4 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x6.b10b5p-4 + 0xe.8893cbb449258p-4 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x6.b10b5p-4 + 0xe.8893cbb44925p-4 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.b10b5p-4 + 0xe.8893cbb44925p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.b10b5p-4 + 0xe.8893cp-4 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x6.b10b5p-4 + 0xe.8893dp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x7.eca921b40e028p-4 + 0xd.e655e694e510a94p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x7.eca921b40e028p-4 + 0xd.e655e694e510a95p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x7.eca921b40e028p-4 + 0xd.e655e694e510a95p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x7.eca921b40e028p-4 + 0xd.e655fp-4 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x7.eca921b40e02ae18p-4 + 0xd.e655fp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x7.eca921b40e02ae18p-4 + 0xd.e655fp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x7.eca921b40e02cp-4 + 0xd.e655e694e510a95p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x7.eca921b40e02cp-4 + 0xd.e655e694e511p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x7.eca928p-4 + 0xd.e655e694e5108p-4 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x7.eca928p-4 + 0xd.e655e694e511p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x7.eca928p-4 + 0xd.e655fp-4 i)": -float: 1 -ifloat: 1 -Test "Real part of: clog (0x7.eca92p-4 + 0xd.e655e694e510a95p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x7.eca92p-4 + 0xd.e655fp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x7.f2c8d20a1eca10d8p-4 + 0xd.e2d65939160b311p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x7.f2c8d20a1eca10d8p-4 + 0xd.e2d65939160b31p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x7.f2c8d20a1eca10d8p-4 + 0xd.e2d65939160b8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x7.f2c8d20a1eca10dp-4 + 0xd.e2d65939160b311p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x7.f2c8d20a1eca10dp-4 + 0xd.e2d65939160bp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x7.f2c8d20a1eca10dp-4 + 0xd.e2d66p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x7.f2c8d20a1eca10dp-4 + 0xd.e2d66p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x7.f2c8d20a1eca4p-4 + 0xd.e2d65939160b311p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x7.f2c8d20a1eca4p-4 + 0xd.e2d65939160b311p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x7.f2c8d20a1eca4p-4 + 0xd.e2d65939160b31p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x7.f2c8d20a1eca4p-4 + 0xd.e2d65939160b8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x7.f2c8d20a1eca4p-4 + 0xd.e2d66p-4 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x7.f2c8d20a1ecap-4 + 0xd.e2d65939160b311p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x7.f2c8d20a1ecap-4 + 0xd.e2d65p-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x7.f2c8d20a1ecap-4 + 0xd.e2d66p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x7.f2c8d8p-4 + 0xd.e2d65939160b31p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x7.f2c8d8p-4 + 0xd.e2d65939160b8p-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x7.f2c8d8p-4 + 0xd.e2d65p-4 i)": -float: 1 -ifloat: 1 -Test "Real part of: clog (0x7.f2c8dp-4 + 0xd.e2d65939160b8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x7.f2c8dp-4 + 0xd.e2d65939160bp-4 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x7.f2c8dp-4 + 0xd.e2d65939160bp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x7.f4b083cb0bp-4 + 0xd.e1bf1p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x7.f4b083cb0bp-4 + 0xd.e1bf1p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x7.f4b088p-4 + 0xd.e1bf04f3688p-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x7.f4b088p-4 + 0xd.e1bfp-4 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog (0x8.88fae2eap-4 + 0xd.888bcp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x8.88faep-4 + 0xd.888bcp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x8.88faep-4 + 0xd.888bdp-4 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog (0x8.88faep-4 + 0xd.888bdp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x8.88fafp-4 + 0xd.888bdp-4 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog (0x8.ecbf810c4ae6p-4 + 0xd.479468b09a37p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x8.ecbf810c4ae6p-4 + 0xd.47946p-4 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x8.ecbf8p-4 + 0xd.479468b09a37p-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x8.ecbf8p-4 + 0xd.47947p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x8.ecbf9p-4 + 0xd.479468b09a37p-4 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x9.b386fc56b9688p-4 + 0xc.b9317c470b4085cp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x9.b386fc56b9688p-4 + 0xc.b9317c470b408p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x9.b386fc56b9688p-4 + 0xc.b9317c470b41p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x9.b386fc56b9688p-4 + 0xc.b9318p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x9.b386fc56b968a66p-4 + 0xc.b9317p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x9.b386fc56b968a66p-4 + 0xc.b9318p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x9.b386fc56b969p-4 + 0xc.b9317c470b4085cp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x9.b386fc56b969p-4 + 0xc.b9317c470b41p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x9.b386fp-4 + 0xc.b9317c470b408p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x9.b386fp-4 + 0xc.b9317c470b408p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x9.b386fp-4 + 0xc.b9317c470b41p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x9.b386fp-4 + 0xc.b9317c470b41p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x9.b386fp-4 + 0xc.b9317p-4 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog (0x9.b386fp-4 + 0xc.b9318p-4 i)": -float: 1 -ifloat: 1 -Test "Real part of: clog (0x9.b387p-4 + 0xc.b9317c470b4085cp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x9.b387p-4 + 0xc.b9317c470b41p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x9.c1b6ac509a246bap-4 + 0xc.ae53de1d5a7c8b1p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x9.c1b6ac509a246bap-4 + 0xc.ae53de1d5a7c8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x9.c1b6ac509a246bap-4 + 0xc.ae53de1d5a7c8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x9.c1b6ac509a246bap-4 + 0xc.ae53de1d5a7dp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x9.c1b6ac509a246bap-4 + 0xc.ae53ep-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x9.c1b6ac509a246bbp-4 + 0xc.ae53de1d5a7c8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x9.c1b6ac509a246bbp-4 + 0xc.ae53de1d5a7dp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x9.c1b6ac509a246bbp-4 + 0xc.ae53dp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x9.c1b6ac509a248p-4 + 0xc.ae53de1d5a7c8bp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x9.c1b6ac509a248p-4 + 0xc.ae53de1d5a7c8bp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x9.c1b6ac509a248p-4 + 0xc.ae53de1d5a7dp-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x9.c1b6ac509a248p-4 + 0xc.ae53de1d5a7dp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x9.c1b6ac509a248p-4 + 0xc.ae53ep-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x9.c1b6ac509a248p-4 + 0xc.ae53ep-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x9.c1b6ac509a24p-4 + 0xc.ae53de1d5a7dp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x9.c1b6ac509a24p-4 + 0xc.ae53dp-4 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0x9.c1b6ac509a24p-4 + 0xc.ae53ep-4 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x9.c1b6ap-4 + 0xc.ae53de1d5a7c8b1p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x9.c1b6ap-4 + 0xc.ae53de1d5a7c8bp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x9.c1b6ap-4 + 0xc.ae53de1d5a7dp-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0x9.c1b6ap-4 + 0xc.ae53de1d5a7dp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x9.c1b6ap-4 + 0xc.ae53dp-4 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog (0x9.c1b6ap-4 + 0xc.ae53dp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x9.c1b6ap-4 + 0xc.ae53ep-4 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0x9.c1b6bp-4 + 0xc.ae53de1d5a7c8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x9.c1b6bp-4 + 0xc.ae53de1d5a7dp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0x9.c1b6bp-4 + 0xc.ae53dp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.1f2c1p-4 + 0xc.643aep-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.47c0c65bd4928p-4 + 0xc.42a51a3c05c199fp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.47c0c65bd4928p-4 + 0xc.42a51a3c05c19ap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.47c0c65bd4928p-4 + 0xc.42a51a3c05c19ap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.47c0c65bd4928p-4 + 0xc.42a51p-4 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.47c0c65bd4928p-4 + 0xc.42a52p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.47c0c65bd492c7ep-4 + 0xc.42a51a3c05c18p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.47c0c65bd492c7ep-4 + 0xc.42a51a3c05c199fp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.47c0c65bd492c7ep-4 + 0xc.42a51a3c05c2p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.47c0c65bd492c7ep-4 + 0xc.42a52p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.47c0c65bd492c7fp-4 + 0xc.42a51a3c05c18p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.47c0c65bd492c7fp-4 + 0xc.42a51a3c05c199fp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.47c0c65bd492c7fp-4 + 0xc.42a51a3c05c19ap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.47c0c65bd492c7fp-4 + 0xc.42a51a3c05c19ap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.47c0c65bd492c7fp-4 + 0xc.42a51a3c05c2p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.47c0c65bd492c7fp-4 + 0xc.42a52p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.47c0c65bd493p-4 + 0xc.42a51a3c05c18p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.47c0c65bd493p-4 + 0xc.42a51a3c05c199fp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.47c0c65bd493p-4 + 0xc.42a51a3c05c2p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.47c0cp-4 + 0xc.42a51a3c05c199fp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.47c0cp-4 + 0xc.42a51a3c05c19ap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.47c0cp-4 + 0xc.42a51p-4 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog (0xa.47c0cp-4 + 0xc.42a51p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.47c0dp-4 + 0xc.42a51a3c05c18p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.47c0dp-4 + 0xc.42a51a3c05c19ap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.47c0dp-4 + 0xc.42a51p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.afc57e2624342dfp-4 + 0xb.e867932966df589p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.afc57e2624342dfp-4 + 0xb.e867932966df58ap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.afc57e2624342dfp-4 + 0xb.e867932966df8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.afc57e2624342dfp-4 + 0xb.e867932966dfp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.afc57e2624342dfp-4 + 0xb.e8679p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.afc57e2624342dfp-4 + 0xb.e867ap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.afc57e2624342ep-4 + 0xb.e867932966df58ap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.afc57e2624342ep-4 + 0xb.e867932966df8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.afc57e2624342ep-4 + 0xb.e867932966dfp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.afc57e2624342ep-4 + 0xb.e8679p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.afc57e2624342ep-4 + 0xb.e867ap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.afc57e2624342ep-4 + 0xb.e867ap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.afc57e2624348p-4 + 0xb.e867932966df589p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.afc57e2624348p-4 + 0xb.e867932966df589p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.afc57e2624348p-4 + 0xb.e867932966dfp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.afc57e2624348p-4 + 0xb.e8679p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.afc57e2624348p-4 + 0xb.e867ap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.afc57e262434p-4 + 0xb.e867932966df589p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.afc57e262434p-4 + 0xb.e867ap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.afc57e262434p-4 + 0xb.e867ap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.afc57p-4 + 0xb.e867932966df58ap-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.afc57p-4 + 0xb.e867932966df8p-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0xa.afc57p-4 + 0xb.e8679p-4 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog (0xa.afc57p-4 + 0xb.e867ap-4 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.afc58p-4 + 0xb.e867ap-4 i)": -float: 1 -ifloat: 1 -Test "Real part of: clog (0xa.b96da19075eap-8 + 0xf.fc679p-4 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.b96dap-8 + 0xf.fc67818f89d2p-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0xa.b96dap-8 + 0xf.fc67818f89d2p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.b96dap-8 + 0xf.fc678p-4 i)": -float: 1 -ifloat: 1 -Test "Real part of: clog (0xa.b96dap-8 + 0xf.fc679p-4 i)": -float: 1 -ifloat: 1 -Test "Real part of: clog (0xa.e7de8cc868ff8p-4 + 0xb.b51cbp-4 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.e7de8p-4 + 0xb.b51cbp-4 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog (0xa.e7de8p-4 + 0xb.b51cbp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.e7de9p-4 + 0xb.b51cb9f04d4dp-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0xa.e7de9p-4 + 0xb.b51cb9f04d4dp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.e7de9p-4 + 0xb.b51cbp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.ec55b7682e528a1p-4 + 0xb.b0f2405504a6058p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.ec55b7682e528a1p-4 + 0xb.b0f2405504a68p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.ec55b7682e528a1p-4 + 0xb.b0f2405504a68p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.ec55b7682e528a1p-4 + 0xb.b0f25p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.ec55b7682e528ap-4 + 0xb.b0f2405504a68p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.ec55b7682e528p-4 + 0xb.b0f2405504a6059p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.ec55b7682e528p-4 + 0xb.b0f24p-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0xa.ec55b7682e53p-4 + 0xb.b0f2405504a6058p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.ec55b7682e53p-4 + 0xb.b0f2405504a68p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.ec55b7682e53p-4 + 0xb.b0f2405504a6p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.ec55b7682e53p-4 + 0xb.b0f24p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.ec55b7682e53p-4 + 0xb.b0f24p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.ec55bp-4 + 0xb.b0f2405504a6058p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.ec55bp-4 + 0xb.b0f2405504a6059p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.ec55bp-4 + 0xb.b0f2405504a68p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.ec55bp-4 + 0xb.b0f2405504a6p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.ec55bp-4 + 0xb.b0f2405504a6p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.ec55cp-4 + 0xb.b0f2405504a6059p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.ec55cp-4 + 0xb.b0f2405504a68p-4 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xa.ec55cp-4 + 0xb.b0f2405504a6p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xa.ec55cp-4 + 0xb.b0f25p-4 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog (0xa.ec55cp-4 + 0xb.b0f25p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xb.263a77543bp-4 + 0xb.79c9ap-4 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog (0xb.263a77543bp-4 + 0xb.79c9bp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xb.263a7p-4 + 0xb.79c9a417bb8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xb.263a7p-4 + 0xb.79c9ap-4 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog (0xb.263a7p-4 + 0xb.79c9bp-4 i)": -float: 1 -ifloat: 1 -Test "Real part of: clog (0xb.263a8p-4 + 0xb.79c9bp-4 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog (0xb.263a8p-4 + 0xb.79c9bp-4 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xf.8p+16380 + 0x8p+16380 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xf.8p+16380 + 0x8p+16380 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog (0xf.ffffffffffff8p-4 + 0x8p-152 i)": -double: 1 -idouble: 1 -Test "Real part of: clog (0xf.fffffffffffffffp-4 + +0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xf.fffffffffffffffp-4 + 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xf.fffffffffffffffp-4 + 0x8p-152 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xf.fffffffffffffffp-4 + 0xf.fffffffffffffffp-15004 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog (0xf.fffffp-4 + +0 i)": -float: 1 -ifloat: 1 -Test "Real part of: clog (0xf.fffffp-4 + 0x8p-152 i)": -float: 1 -ifloat: 1 -Test "Real part of: clog (0xf.fffffp-4 + 0xf.fffffp-104 i)": -float: 1 -ifloat: 1 - -# clog10 -Test "Real part of: clog10 (-0x1.0000000123456p0 + 0x1.2345678p-1000 i)": -double: 1 -idouble: 1 -Test "Real part of: clog10 (-0x1.0000000123456p0 + 0x1.2345678p-30 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog10 (-0x1.0000000123456p0 + 0x1.2345678p-30 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog10 (-0x1.234566p-40 - 1.0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog10 (-1.0 + 0x1.234566p-20 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog10 (-inf + inf i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog10 (0.75 + 1.25 i)": -double: 1 -idouble: 1 -Test "Real part of: clog10 (0x0.fffffffffffff8p0 + 0x0.fffffffffffff8p-1000 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog10 (0x0.ffffffffffffffffp0 + 0x0.ffffffffffffffffp-15000 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog10 (0x0.ffffffp0 + 0x0.ffffffp-100 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog10 (0x1.000566p0 + 0x1.234p-10 i)": -double: 1 -idouble: 1 -ildouble: 2 -ldouble: 2 -Test "Imaginary part of: clog10 (0x1.000566p0 + 0x1.234p-100 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog10 (0x1.234566p-30 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog10 (0x1.234566p-50 + 1.0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog10 (0x10673dd0f2481p-51 + 0x7ef1d17cefbd2p-51 i)": -double: 1 -idouble: 1 -Test "Real part of: clog10 (0x1367a310575591p-54 + 0x3cfcc0a0541f60p-54 i)": -double: 1 -idouble: 1 -Test "Real part of: clog10 (0x1a6p-10 + 0x3a5p-10 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog10 (0x1p-16440 + 0x1p-16441 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog10 (0x2818p-15 + 0x798fp-15 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: clog10 (0x2818p-15 + 0x798fp-15 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog10 (0x2dd46725bp-35 + 0x7783a1284p-35 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: clog10 (0x2ede88p-23 + 0x771c3fp-23 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog10 (0x2ede88p-23 + 0x771c3fp-23 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog10 (0x4447d7175p-35 + 0x6c445e00ap-35 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog10 (0x4447d7175p-35 + 0x6c445e00ap-35 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: clog10 (0x4d4ep-15 + 0x6605p-15 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog10 (0x5b06b680ea2ccp-52 + 0xef452b965da9fp-52 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog10 (0x659b70ab7971bp-53 + 0x1f5d111e08abecp-53 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog10 (0x659feap-24 + 0xeaf6f9p-24 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog10 (0x6b10b4f3520217b6p-64 + 0xe8893cbb449253a1p-64 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog10 (0x81b7efa81fc35ad1p-65 + 0x1ef4b835f1c79d812p-65 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog10 (0x8ecbf810c4ae6p-52 + 0xd479468b09a37p-52 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog10 (0x8ecbf810c4ae6p-52 + 0xd479468b09a37p-52 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog10 (0xa1f2c1p-24 + 0xc643aep-24 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog10 (0xa4722f19346cp-51 + 0x7f9631c5e7f07p-51 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: clog10 (0xf2p-10 + 0x3e3p-10 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: clog10 (0xfe961079616p-45 + 0x1bc37e09e6d1p-45 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: clog10 (1.0 + 0x1.234566p-10 i)": -ildouble: 1 -ldouble: 1 - -# cos -Test "cos (0x1.0000010b239a9p+0)": -double: 1 -idouble: 1 - -# cos_tonearest -Test "cos_tonearest (0x1.0000010b239a9p+0)": -double: 1 -idouble: 1 - -# cpow -Test "Real part of: cpow (0x2p+0 + +0 i, 0xap+0 + +0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: cpow (0x2p+0 + 0x3p+0 i, 0x4p+0 + +0 i)": -double: 1 -idouble: 1 -ildouble: 3 -ldouble: 3 -Test "Imaginary part of: cpow (0x2p+0 + 0x3p+0 i, 0x4p+0 + +0 i)": -float: 5 -ifloat: 5 -Test "Real part of: cpow (0xcp-4 + 0x1.4p+0 i, +0 + 0x1p+0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cpow (0xcp-4 + 0x1.4p+0 i, 0x1p+0 + +0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: cpow (0xcp-4 + 0x1.4p+0 i, 0x1p+0 + 0x1p+0 i)": -double: 1 -float: 3 -idouble: 1 -ifloat: 3 -ildouble: 3 -ldouble: 3 -Test "Real part of: cpow (0xcp-4 + 0x1.4p+0 i, 0xcp-4 + 0x1.4p+0 i)": -float: 3 -ifloat: 3 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: cpow (0xcp-4 + 0x1.4p+0 i, 0xcp-4 + 0x1.4p+0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -# csin -Test "Real part of: csin (0.75 + 1.25 i)": -ildouble: 1 -ldouble: 1 - -# csinh -Test "Real part of: csinh (0.75 + 1.25 i)": -ildouble: 1 -ldouble: 1 - -# csqrt -Test "Real part of: csqrt (-0x4.0000000000000008p-16384 - 0x4.0000000000000008p-16384 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (-0x4.0000000000000008p-16384 - 0x4.0000000000000008p-16384 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: csqrt (-0x4.0000000000000008p-16384 - 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: csqrt (-0x4.0000000000004p-1024 - 0x4.0000000000004p-1024 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: csqrt (-0x4.000008p-128 - 0x4.000008p-128 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: csqrt (-0x4p-1076 - 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: csqrt (-0x4p-16384 - 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: csqrt (-0x4p-16384 - 0x4p-16384 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: csqrt (-0x8p-152 - 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: csqrt (-0x8p-152 - 0x4p-16384 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: csqrt (-0x8p-152 - 0x8p-152 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x1p-16440 + 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x1p-5000 + 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x2p-148 + 0x2p-148 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: csqrt (0x4.0000000000000008p-16384 + 0x4.0000000000000008p-16384 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x4.0000000000000008p-16384 + 0x4.0000000000000008p-16384 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x4.0000000000000008p-16384 + 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x4.0000000000004p-1024 + 0x4.0000000000004p-1024 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x4.000008p-128 + 0x4.000008p-128 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x4p-1076 + 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x4p-1076 + 0xf.ffffffffffff8p+1020 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x4p-16384 + 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x4p-16384 + 0x4p-16384 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x4p-16448 + 0xf.ffffffffffff8p+1020 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x8p+1020 + 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x8p+1020 + 0x8p-152 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x8p+124 + 0x8p-152 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x8p+16380 + 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x8p+16380 + 0x8p-152 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x8p-1076 + 0x8p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x8p-152 + 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x8p-152 + 0x4p-16384 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x8p-152 + 0x4p-16448 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x8p-152 + 0x8p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x8p-152 + 0x8p-152 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x8p-152 + 0x8p-16444 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x8p-152 + 0x8p-16448 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x8p-152 + 0xf.ffffffffffff8p+1020 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0x8p-16448 + 0xf.ffffffffffff8p+1020 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: csqrt (0xf.8p+16380 + 0xf.8p+16380 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: csqrt (0xf.ffffffffffff8p+1020 + +0 i)": -double: 1 -idouble: 1 -Test "Real part of: csqrt (0xf.ffffffffffff8p+1020 + 0x4p-1076 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: csqrt (0xf.ffffffffffff8p+1020 + 0x8p+1020 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: csqrt (0xf.ffffffffffff8p+1020 + 0x8p-152 i)": -double: 1 -idouble: 1 -Test "Real part of: csqrt (0xf.ffffffffffff8p+1020 + 0xf.ffffffffffff8p+1020 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: csqrt (0xf.ffffffffffff8p+1020 + 0xf.ffffffffffff8p+1020 i)": -double: 1 -idouble: 1 -Test "Real part of: csqrt (0xf.ffffffffffff8p+1020 + 0xf.fffffp+124 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: csqrt (0xf.fffffp+124 + 0xf.ffffffffffff8p+1020 i)": -ildouble: 1 -ldouble: 1 - -# ctan -Test "Real part of: ctan (-0x2p+0 - 0x3p+0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan (-0x2p+0 - 0x3p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan (0x1.921fb4p+0 + +0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan (0x1.921fb4p+0 + 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan (0x1.921fb4p+0 + 0x4p-1076 i)": -double: 1 -idouble: 1 -Test "Real part of: ctan (0x1.921fb4p+0 + 0x8p-152 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan (0x1.921fb4p+0 + 0x8p-152 i)": -double: 1 -idouble: 1 -Test "Real part of: ctan (0x1.921fb4p+0 + 0x8p-16448 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan (0x1.921fb54442d1846ap+0 + 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan (0x1.921fb54442d1846ap+0 + 0x8p-152 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan (0x1.921fb54442d1846ap+0 + 0x8p-16448 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan (0x1.921fb54442d18p+0 + 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan (0x1.921fb54442d18p+0 + 0x8p-152 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan (0x1.921fb54442d18p+0 + 0x8p-16448 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan (0x1.921fb54442d19p+0 + 0x4p-1076 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan (0x1.921fb54442d19p+0 + 0x8p-152 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan (0x1.921fb54442d19p+0 + 0x8p-16448 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan (0x1.921fb6p+0 + +0 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: ctan (0x1.921fb6p+0 + 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan (0x1.921fb6p+0 + 0x8p-152 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: ctan (0x1.921fb6p+0 + 0x8p-152 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan (0x1p+0 + 0x2.dp+4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan (0x1p+0 + 0x2.fp+4 i)": -ildouble: 2 -ldouble: 2 -Test "Real part of: ctan (0x8p+1020 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan (0x8p+124 + 0x1p+0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: ctan (0x8p+124 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan (0x8p+16380 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan (0xcp-4 + 0x1.4p+0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan (0xf.ffffffffffff8p+1020 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan (0xf.fffffp+124 + 0x1p+0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: ctan (0xf.fffffp+124 + 0x1p+0 i)": -float: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -# ctan_downward -Test "Real part of: ctan_downward (-0x2p+0 - 0x3p+0 i)": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_downward (0x1.921fb4p+0 + +0 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: ctan_downward (0x1.921fb4p+0 + 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_downward (0x1.921fb4p+0 + 0x8p-152 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: ctan_downward (0x1.921fb4p+0 + 0x8p-152 i)": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_downward (0x1.921fb54442d1846ap+0 + 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_downward (0x1.921fb54442d1846ap+0 + 0x8p-152 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_downward (0x1.921fb54442d1846ap+0 + 0x8p-16448 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_downward (0x1.921fb54442d18p+0 + +0 i)": -double: 1 -idouble: 1 -Test "Real part of: ctan_downward (0x1.921fb54442d18p+0 + 0x4p-1076 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: ctan_downward (0x1.921fb54442d18p+0 + 0x4p-1076 i)": -double: 3 -idouble: 3 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_downward (0x1.921fb54442d18p+0 + 0x8p-152 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: ctan_downward (0x1.921fb54442d18p+0 + 0x8p-152 i)": -double: 3 -idouble: 3 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_downward (0x1.921fb54442d18p+0 + 0x8p-16448 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_downward (0x1.921fb54442d19p+0 + +0 i)": -double: 2 -idouble: 2 -Test "Real part of: ctan_downward (0x1.921fb54442d19p+0 + 0x4p-1076 i)": -double: 2 -idouble: 2 -Test "Imaginary part of: ctan_downward (0x1.921fb54442d19p+0 + 0x4p-1076 i)": -double: 2 -idouble: 2 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_downward (0x1.921fb54442d19p+0 + 0x8p-152 i)": -double: 2 -idouble: 2 -Test "Imaginary part of: ctan_downward (0x1.921fb54442d19p+0 + 0x8p-152 i)": -double: 2 -idouble: 2 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_downward (0x1.921fb54442d19p+0 + 0x8p-16448 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_downward (0x1.921fb6p+0 + +0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_downward (0x1.921fb6p+0 + 0x4p-1076 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_downward (0x1.921fb6p+0 + 0x8p-152 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_downward (0x1.921fb6p+0 + 0x8p-152 i)": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -Test "Real part of: ctan_downward (0x1.921fb6p+0 + 0x8p-16448 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_downward (0x1p+0 + 0x1.63p+8 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_downward (0x1p+0 + 0x1.6dp+8 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_downward (0x1p+0 + 0x2.dp+4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_downward (0x1p+0 + 0x2.fp+4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_downward (0x8p+1020 + 0x1p+0 i)": -double: 1 -idouble: 1 -ildouble: 2 -ldouble: 2 -Test "Imaginary part of: ctan_downward (0x8p+1020 + 0x1p+0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_downward (0x8p+124 + 0x1p+0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: ctan_downward (0x8p+124 + 0x1p+0 i)": -double: 1 -idouble: 1 -ildouble: 2 -ldouble: 2 -Test "Real part of: ctan_downward (0x8p+16380 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_downward (0x8p+16380 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_downward (0xcp-4 + 0x1.4p+0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_downward (0xcp-4 + 0x1.4p+0 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: ctan_downward (0xf.ffffffffffff8p+1020 + 0x1p+0 i)": -double: 1 -idouble: 1 -Test "Real part of: ctan_downward (0xf.fffffp+124 + 0x1p+0 i)": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_downward (0xf.fffffp+124 + 0x1p+0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -# ctan_tonearest -Test "Real part of: ctan_tonearest (-0x2p+0 - 0x3p+0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_tonearest (-0x2p+0 - 0x3p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_tonearest (0x1.921fb4p+0 + +0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_tonearest (0x1.921fb4p+0 + 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_tonearest (0x1.921fb4p+0 + 0x4p-1076 i)": -double: 1 -idouble: 1 -Test "Real part of: ctan_tonearest (0x1.921fb4p+0 + 0x8p-152 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_tonearest (0x1.921fb4p+0 + 0x8p-152 i)": -double: 1 -idouble: 1 -Test "Real part of: ctan_tonearest (0x1.921fb4p+0 + 0x8p-16448 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_tonearest (0x1.921fb54442d1846ap+0 + 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_tonearest (0x1.921fb54442d1846ap+0 + 0x8p-152 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_tonearest (0x1.921fb54442d1846ap+0 + 0x8p-16448 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_tonearest (0x1.921fb54442d18p+0 + 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_tonearest (0x1.921fb54442d18p+0 + 0x8p-152 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_tonearest (0x1.921fb54442d18p+0 + 0x8p-16448 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_tonearest (0x1.921fb54442d19p+0 + 0x4p-1076 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_tonearest (0x1.921fb54442d19p+0 + 0x8p-152 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_tonearest (0x1.921fb54442d19p+0 + 0x8p-16448 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_tonearest (0x1.921fb6p+0 + +0 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: ctan_tonearest (0x1.921fb6p+0 + 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_tonearest (0x1.921fb6p+0 + 0x8p-152 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: ctan_tonearest (0x1.921fb6p+0 + 0x8p-152 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_tonearest (0x1p+0 + 0x2.dp+4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_tonearest (0x1p+0 + 0x2.fp+4 i)": -ildouble: 2 -ldouble: 2 -Test "Real part of: ctan_tonearest (0x8p+1020 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_tonearest (0x8p+124 + 0x1p+0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: ctan_tonearest (0x8p+124 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_tonearest (0x8p+16380 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_tonearest (0xcp-4 + 0x1.4p+0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_tonearest (0xf.ffffffffffff8p+1020 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_tonearest (0xf.fffffp+124 + 0x1p+0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: ctan_tonearest (0xf.fffffp+124 + 0x1p+0 i)": -float: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -# ctan_towardzero -Test "Real part of: ctan_towardzero (-0x2p+0 - 0x3p+0 i)": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_towardzero (-0xc.35p+12 - 0xc.35p+12 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_towardzero (0x1.921fb4p+0 + +0 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: ctan_towardzero (0x1.921fb4p+0 + 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_towardzero (0x1.921fb4p+0 + 0x8p-152 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: ctan_towardzero (0x1.921fb4p+0 + 0x8p-152 i)": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_towardzero (0x1.921fb54442d18p+0 + +0 i)": -double: 1 -idouble: 1 -Test "Real part of: ctan_towardzero (0x1.921fb54442d18p+0 + 0x4p-1076 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: ctan_towardzero (0x1.921fb54442d18p+0 + 0x4p-1076 i)": -double: 3 -idouble: 3 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_towardzero (0x1.921fb54442d18p+0 + 0x8p-152 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: ctan_towardzero (0x1.921fb54442d18p+0 + 0x8p-152 i)": -double: 3 -idouble: 3 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_towardzero (0x1.921fb54442d18p+0 + 0x8p-16448 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_towardzero (0x1.921fb54442d19p+0 + +0 i)": -double: 1 -idouble: 1 -Test "Real part of: ctan_towardzero (0x1.921fb54442d19p+0 + 0x4p-1076 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: ctan_towardzero (0x1.921fb54442d19p+0 + 0x4p-1076 i)": -double: 1 -idouble: 1 -ildouble: 3 -ldouble: 3 -Test "Real part of: ctan_towardzero (0x1.921fb54442d19p+0 + 0x8p-152 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: ctan_towardzero (0x1.921fb54442d19p+0 + 0x8p-152 i)": -double: 1 -idouble: 1 -ildouble: 3 -ldouble: 3 -Test "Imaginary part of: ctan_towardzero (0x1.921fb54442d19p+0 + 0x8p-16448 i)": -ildouble: 3 -ldouble: 3 -Test "Real part of: ctan_towardzero (0x1.921fb6p+0 + +0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_towardzero (0x1.921fb6p+0 + 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_towardzero (0x1.921fb6p+0 + 0x4p-1076 i)": -ildouble: 4 -ldouble: 4 -Test "Real part of: ctan_towardzero (0x1.921fb6p+0 + 0x8p-152 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_towardzero (0x1.921fb6p+0 + 0x8p-152 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 4 -ldouble: 4 -Test "Real part of: ctan_towardzero (0x1.921fb6p+0 + 0x8p-16448 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_towardzero (0x1p+0 + 0x1.63p+8 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_towardzero (0x1p+0 + 0x1.6dp+8 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_towardzero (0x1p+0 + 0x2.dp+4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_towardzero (0x1p+0 + 0x2.fp+4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_towardzero (0x8p+1020 + 0x1p+0 i)": -double: 1 -idouble: 1 -ildouble: 2 -ldouble: 2 -Test "Imaginary part of: ctan_towardzero (0x8p+1020 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_towardzero (0x8p+124 + 0x1p+0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: ctan_towardzero (0x8p+124 + 0x1p+0 i)": -double: 1 -idouble: 1 -ildouble: 2 -ldouble: 2 -Test "Real part of: ctan_towardzero (0x8p+16380 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_towardzero (0x8p+16380 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_towardzero (0xc.35p+12 - 0xc.35p+12 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_towardzero (0xcp-4 + 0x1.4p+0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_towardzero (0xcp-4 + 0x1.4p+0 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: ctan_towardzero (0xf.ffffffffffff8p+1020 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_towardzero (0xf.fffffp+124 + 0x1p+0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_towardzero (0xf.fffffp+124 + 0x1p+0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -# ctan_upward -Test "Real part of: ctan_upward (-0x2p+0 - 0x3p+0 i)": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -Test "Imaginary part of: ctan_upward (-0xc.35p+12 + 0xc.35p+12 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_upward (-0xc.35p+12 - 0xc.35p+12 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_upward (0x1.921fb4p+0 + +0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_upward (0x1.921fb4p+0 + 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_upward (0x1.921fb4p+0 + 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_upward (0x1.921fb4p+0 + 0x8p-152 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_upward (0x1.921fb4p+0 + 0x8p-152 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_upward (0x1.921fb4p+0 + 0x8p-16448 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_upward (0x1.921fb54442d1846ap+0 + 0x4p-1076 i)": -ildouble: 3 -ldouble: 3 -Test "Imaginary part of: ctan_upward (0x1.921fb54442d1846ap+0 + 0x8p-152 i)": -ildouble: 3 -ldouble: 3 -Test "Real part of: ctan_upward (0x1.921fb54442d18p+0 + +0 i)": -ildouble: 3 -ldouble: 3 -Test "Real part of: ctan_upward (0x1.921fb54442d18p+0 + 0x4p-1076 i)": -ildouble: 3 -ldouble: 3 -Test "Imaginary part of: ctan_upward (0x1.921fb54442d18p+0 + 0x4p-1076 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_upward (0x1.921fb54442d18p+0 + 0x8p-152 i)": -ildouble: 3 -ldouble: 3 -Test "Imaginary part of: ctan_upward (0x1.921fb54442d18p+0 + 0x8p-152 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_upward (0x1.921fb54442d18p+0 + 0x8p-16448 i)": -ildouble: 3 -ldouble: 3 -Test "Imaginary part of: ctan_upward (0x1.921fb54442d18p+0 + 0x8p-16448 i)": -ildouble: 4 -ldouble: 4 -Test "Imaginary part of: ctan_upward (0x1.921fb54442d19p+0 + 0x4p-1076 i)": -double: 1 -idouble: 1 -ildouble: 7 -ldouble: 7 -Test "Imaginary part of: ctan_upward (0x1.921fb54442d19p+0 + 0x8p-152 i)": -double: 1 -idouble: 1 -ildouble: 7 -ldouble: 7 -Test "Imaginary part of: ctan_upward (0x1.921fb54442d19p+0 + 0x8p-16448 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_upward (0x1.921fb6p+0 + +0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: ctan_upward (0x1.921fb6p+0 + 0x4p-1076 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: ctan_upward (0x1.921fb6p+0 + 0x4p-1076 i)": -ildouble: 7 -ldouble: 7 -Test "Real part of: ctan_upward (0x1.921fb6p+0 + 0x8p-152 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: ctan_upward (0x1.921fb6p+0 + 0x8p-152 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 7 -ldouble: 7 -Test "Imaginary part of: ctan_upward (0x1p+0 + 0x1.63ap+12 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_upward (0x1p+0 + 0x1.63p+12 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_upward (0x1p+0 + 0x1.63p+8 i)": -ildouble: 2 -ldouble: 2 -Test "Imaginary part of: ctan_upward (0x1p+0 + 0x1.63p+8 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 -Test "Real part of: ctan_upward (0x1p+0 + 0x1.6dp+8 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_upward (0x1p+0 + 0x1.6dp+8 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 -Test "Real part of: ctan_upward (0x1p+0 + 0x2.dp+4 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_upward (0x1p+0 + 0x2.dp+4 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 -Test "Real part of: ctan_upward (0x1p+0 + 0x2.fp+4 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_upward (0x1p+0 + 0x2.fp+4 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 -Test "Real part of: ctan_upward (0x8p+1020 + 0x1p+0 i)": -ildouble: 2 -ldouble: 2 -Test "Imaginary part of: ctan_upward (0x8p+1020 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_upward (0x8p+124 + 0x1p+0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_upward (0x8p+16380 + 0x1p+0 i)": -ildouble: 2 -ldouble: 2 -Test "Imaginary part of: ctan_upward (0x8p+16380 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_upward (0xc.35p+12 + 0xc.35p+12 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_upward (0xc.35p+12 - 0xc.35p+12 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctan_upward (0xcp-4 + 0x1.4p+0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctan_upward (0xf.ffffffffffff8p+1020 + 0x1p+0 i)": -double: 1 -idouble: 1 -ildouble: 2 -ldouble: 2 -Test "Real part of: ctan_upward (0xf.fffffp+124 + 0x1p+0 i)": -float: 3 -ifloat: 3 -ildouble: 5 -ldouble: 5 -Test "Imaginary part of: ctan_upward (0xf.fffffp+124 + 0x1p+0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -# ctanh -Test "Imaginary part of: ctanh (+0 + 0x1.921fb4p+0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh (+0 + 0x1.921fb6p+0 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: ctanh (+0 + 0xc.90fdaa22168c235p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh (+0 + 0xc.90fdap-4 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh (+0 + 0xc.90fdbp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh (-0x2p+0 - 0x3p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh (-0x2p+0 - 0x3p+0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh (0x1p+0 + 0x8p+1020 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh (0x1p+0 + 0x8p+124 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh (0x1p+0 + 0x8p+124 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: ctanh (0x1p+0 + 0x8p+16380 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh (0x1p+0 + 0xf.ffffffffffff8p+1020 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh (0x1p+0 + 0xf.fffffp+124 i)": -float: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 -Test "Imaginary part of: ctanh (0x1p+0 + 0xf.fffffp+124 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: ctanh (0x2.dp+4 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh (0x2.fp+4 + 0x1p+0 i)": -ildouble: 2 -ldouble: 2 -Test "Real part of: ctanh (0x4p-1076 + 0x1.921fb4p+0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: ctanh (0x4p-1076 + 0x1.921fb4p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh (0x4p-1076 + 0x1.921fb54442d1846ap+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh (0x4p-1076 + 0x1.921fb54442d18p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh (0x4p-1076 + 0x1.921fb54442d19p+0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh (0x4p-1076 + 0x1.921fb6p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh (0x8p-152 + 0x1.921fb4p+0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: ctanh (0x8p-152 + 0x1.921fb4p+0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh (0x8p-152 + 0x1.921fb54442d1846ap+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh (0x8p-152 + 0x1.921fb54442d18p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh (0x8p-152 + 0x1.921fb54442d19p+0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh (0x8p-152 + 0x1.921fb6p+0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh (0x8p-152 + 0x1.921fb6p+0 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: ctanh (0x8p-16448 + 0x1.921fb4p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh (0x8p-16448 + 0x1.921fb54442d1846ap+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh (0x8p-16448 + 0x1.921fb54442d18p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh (0x8p-16448 + 0x1.921fb54442d19p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh (0xcp-4 + 0x1.4p+0 i)": -float: 2 -ifloat: 2 - -# ctanh_downward -Test "Imaginary part of: ctanh_downward (+0 + 0x1.921fb4p+0 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: ctanh_downward (+0 + 0x1.921fb54442d18p+0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: ctanh_downward (+0 + 0x1.921fb54442d19p+0 i)": -double: 2 -idouble: 2 -Test "Imaginary part of: ctanh_downward (+0 + 0x1.921fb6p+0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_downward (+0 + 0xc.90fdaa22168c234p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_downward (+0 + 0xc.90fdaa22168c8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_downward (+0 + 0xc.90fdaa22168cp-4 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_downward (+0 + 0xc.90fdbp-4 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: ctanh_downward (-0x2p+0 - 0x3p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_downward (-0x2p+0 - 0x3p+0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: ctanh_downward (0x1.63p+8 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_downward (0x1.6dp+8 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_downward (0x1p+0 + 0x8p+1020 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_downward (0x1p+0 + 0x8p+1020 i)": -double: 1 -idouble: 1 -ildouble: 2 -ldouble: 2 -Test "Real part of: ctanh_downward (0x1p+0 + 0x8p+124 i)": -double: 1 -idouble: 1 -ildouble: 2 -ldouble: 2 -Test "Imaginary part of: ctanh_downward (0x1p+0 + 0x8p+124 i)": -double: 1 -idouble: 1 -Test "Real part of: ctanh_downward (0x1p+0 + 0x8p+16380 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_downward (0x1p+0 + 0x8p+16380 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_downward (0x1p+0 + 0xf.ffffffffffff8p+1020 i)": -double: 1 -idouble: 1 -Test "Real part of: ctanh_downward (0x1p+0 + 0xf.fffffp+124 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_downward (0x1p+0 + 0xf.fffffp+124 i)": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_downward (0x2.dp+4 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_downward (0x2.fp+4 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_downward (0x4p-1076 + 0x1.921fb4p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_downward (0x4p-1076 + 0x1.921fb54442d1846ap+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_downward (0x4p-1076 + 0x1.921fb54442d18p+0 i)": -double: 3 -idouble: 3 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_downward (0x4p-1076 + 0x1.921fb54442d18p+0 i)": -double: 1 -idouble: 1 -Test "Real part of: ctanh_downward (0x4p-1076 + 0x1.921fb54442d19p+0 i)": -double: 2 -idouble: 2 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_downward (0x4p-1076 + 0x1.921fb54442d19p+0 i)": -double: 2 -idouble: 2 -Test "Imaginary part of: ctanh_downward (0x4p-1076 + 0x1.921fb6p+0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_downward (0x8p-152 + 0x1.921fb4p+0 i)": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_downward (0x8p-152 + 0x1.921fb4p+0 i)": -float: 1 -ifloat: 1 -Test "Real part of: ctanh_downward (0x8p-152 + 0x1.921fb54442d1846ap+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_downward (0x8p-152 + 0x1.921fb54442d18p+0 i)": -double: 3 -idouble: 3 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_downward (0x8p-152 + 0x1.921fb54442d18p+0 i)": -double: 1 -idouble: 1 -Test "Real part of: ctanh_downward (0x8p-152 + 0x1.921fb54442d19p+0 i)": -double: 2 -idouble: 2 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_downward (0x8p-152 + 0x1.921fb54442d19p+0 i)": -double: 2 -idouble: 2 -Test "Real part of: ctanh_downward (0x8p-152 + 0x1.921fb6p+0 i)": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -Test "Imaginary part of: ctanh_downward (0x8p-152 + 0x1.921fb6p+0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_downward (0x8p-16448 + 0x1.921fb54442d1846ap+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_downward (0x8p-16448 + 0x1.921fb54442d18p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_downward (0x8p-16448 + 0x1.921fb54442d19p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_downward (0x8p-16448 + 0x1.921fb6p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_downward (0xcp-4 + 0x1.4p+0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: ctanh_downward (0xcp-4 + 0x1.4p+0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 - -# ctanh_tonearest -Test "Imaginary part of: ctanh_tonearest (+0 + 0x1.921fb4p+0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_tonearest (+0 + 0x1.921fb6p+0 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: ctanh_tonearest (+0 + 0xc.90fdaa22168c235p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_tonearest (+0 + 0xc.90fdap-4 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_tonearest (+0 + 0xc.90fdbp-4 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_tonearest (-0x2p+0 - 0x3p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_tonearest (-0x2p+0 - 0x3p+0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_tonearest (0x1p+0 + 0x8p+1020 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_tonearest (0x1p+0 + 0x8p+124 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_tonearest (0x1p+0 + 0x8p+124 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: ctanh_tonearest (0x1p+0 + 0x8p+16380 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_tonearest (0x1p+0 + 0xf.ffffffffffff8p+1020 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_tonearest (0x1p+0 + 0xf.fffffp+124 i)": -float: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 -Test "Imaginary part of: ctanh_tonearest (0x1p+0 + 0xf.fffffp+124 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: ctanh_tonearest (0x2.dp+4 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_tonearest (0x2.fp+4 + 0x1p+0 i)": -ildouble: 2 -ldouble: 2 -Test "Real part of: ctanh_tonearest (0x4p-1076 + 0x1.921fb4p+0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: ctanh_tonearest (0x4p-1076 + 0x1.921fb4p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_tonearest (0x4p-1076 + 0x1.921fb54442d1846ap+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_tonearest (0x4p-1076 + 0x1.921fb54442d18p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_tonearest (0x4p-1076 + 0x1.921fb54442d19p+0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_tonearest (0x4p-1076 + 0x1.921fb6p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_tonearest (0x8p-152 + 0x1.921fb4p+0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: ctanh_tonearest (0x8p-152 + 0x1.921fb4p+0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_tonearest (0x8p-152 + 0x1.921fb54442d1846ap+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_tonearest (0x8p-152 + 0x1.921fb54442d18p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_tonearest (0x8p-152 + 0x1.921fb54442d19p+0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_tonearest (0x8p-152 + 0x1.921fb6p+0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_tonearest (0x8p-152 + 0x1.921fb6p+0 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: ctanh_tonearest (0x8p-16448 + 0x1.921fb4p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_tonearest (0x8p-16448 + 0x1.921fb54442d1846ap+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_tonearest (0x8p-16448 + 0x1.921fb54442d18p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_tonearest (0x8p-16448 + 0x1.921fb54442d19p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_tonearest (0xcp-4 + 0x1.4p+0 i)": -float: 2 -ifloat: 2 - -# ctanh_towardzero -Test "Imaginary part of: ctanh_towardzero (+0 + 0x1.921fb4p+0 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: ctanh_towardzero (+0 + 0x1.921fb54442d18p+0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: ctanh_towardzero (+0 + 0x1.921fb54442d19p+0 i)": -double: 1 -idouble: 1 -Test "Imaginary part of: ctanh_towardzero (+0 + 0x1.921fb6p+0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_towardzero (+0 + 0xc.90fdaa22168c234p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_towardzero (+0 + 0xc.90fdaa22168c8p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_towardzero (+0 + 0xc.90fdaa22168cp-4 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_towardzero (+0 + 0xc.90fdbp-4 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Real part of: ctanh_towardzero (-0x2p+0 - 0x3p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_towardzero (-0x2p+0 - 0x3p+0 i)": -double: 1 -idouble: 1 -Test "Real part of: ctanh_towardzero (-0xc.35p+12 + 0xc.35p+12 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_towardzero (-0xc.35p+12 - 0xc.35p+12 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_towardzero (0x1.63p+8 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_towardzero (0x1.6dp+8 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_towardzero (0x1p+0 + 0x8p+1020 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_towardzero (0x1p+0 + 0x8p+1020 i)": -double: 1 -idouble: 1 -ildouble: 2 -ldouble: 2 -Test "Real part of: ctanh_towardzero (0x1p+0 + 0x8p+124 i)": -double: 1 -idouble: 1 -ildouble: 2 -ldouble: 2 -Test "Imaginary part of: ctanh_towardzero (0x1p+0 + 0x8p+124 i)": -double: 1 -idouble: 1 -Test "Real part of: ctanh_towardzero (0x1p+0 + 0x8p+16380 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_towardzero (0x1p+0 + 0x8p+16380 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_towardzero (0x1p+0 + 0xf.ffffffffffff8p+1020 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_towardzero (0x1p+0 + 0xf.fffffp+124 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_towardzero (0x1p+0 + 0xf.fffffp+124 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_towardzero (0x2.dp+4 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_towardzero (0x2.fp+4 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_towardzero (0x4p-1076 + 0x1.921fb4p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_towardzero (0x4p-1076 + 0x1.921fb54442d18p+0 i)": -double: 3 -idouble: 3 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_towardzero (0x4p-1076 + 0x1.921fb54442d18p+0 i)": -double: 1 -idouble: 1 -Test "Real part of: ctanh_towardzero (0x4p-1076 + 0x1.921fb54442d19p+0 i)": -double: 1 -idouble: 1 -ildouble: 3 -ldouble: 3 -Test "Imaginary part of: ctanh_towardzero (0x4p-1076 + 0x1.921fb54442d19p+0 i)": -double: 1 -idouble: 1 -Test "Real part of: ctanh_towardzero (0x4p-1076 + 0x1.921fb6p+0 i)": -ildouble: 4 -ldouble: 4 -Test "Imaginary part of: ctanh_towardzero (0x4p-1076 + 0x1.921fb6p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_towardzero (0x8p-152 + 0x1.921fb4p+0 i)": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_towardzero (0x8p-152 + 0x1.921fb4p+0 i)": -float: 1 -ifloat: 1 -Test "Real part of: ctanh_towardzero (0x8p-152 + 0x1.921fb54442d18p+0 i)": -double: 3 -idouble: 3 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_towardzero (0x8p-152 + 0x1.921fb54442d18p+0 i)": -double: 1 -idouble: 1 -Test "Real part of: ctanh_towardzero (0x8p-152 + 0x1.921fb54442d19p+0 i)": -double: 1 -idouble: 1 -ildouble: 3 -ldouble: 3 -Test "Imaginary part of: ctanh_towardzero (0x8p-152 + 0x1.921fb54442d19p+0 i)": -double: 1 -idouble: 1 -Test "Real part of: ctanh_towardzero (0x8p-152 + 0x1.921fb6p+0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 4 -ldouble: 4 -Test "Imaginary part of: ctanh_towardzero (0x8p-152 + 0x1.921fb6p+0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_towardzero (0x8p-16448 + 0x1.921fb54442d18p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_towardzero (0x8p-16448 + 0x1.921fb54442d19p+0 i)": -ildouble: 3 -ldouble: 3 -Test "Imaginary part of: ctanh_towardzero (0x8p-16448 + 0x1.921fb6p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_towardzero (0xcp-4 + 0x1.4p+0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: ctanh_towardzero (0xcp-4 + 0x1.4p+0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 - -# ctanh_upward -Test "Imaginary part of: ctanh_upward (+0 + 0x1.921fb4p+0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_upward (+0 + 0x1.921fb54442d18p+0 i)": -ildouble: 3 -ldouble: 3 -Test "Imaginary part of: ctanh_upward (+0 + 0x1.921fb6p+0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: ctanh_upward (+0 + 0xc.90fdaa22168c234p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_upward (+0 + 0xc.90fdaa22168c235p-4 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_upward (+0 + 0xc.90fdbp-4 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_upward (-0x2p+0 - 0x3p+0 i)": -float: 2 -ifloat: 2 -Test "Imaginary part of: ctanh_upward (-0x2p+0 - 0x3p+0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_upward (-0xc.35p+12 + 0xc.35p+12 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_upward (-0xc.35p+12 - 0xc.35p+12 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_upward (0x1.63ap+12 + 0x1p+0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_upward (0x1.63p+12 + 0x1p+0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_upward (0x1.63p+8 + 0x1p+0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 -Test "Imaginary part of: ctanh_upward (0x1.63p+8 + 0x1p+0 i)": -ildouble: 2 -ldouble: 2 -Test "Real part of: ctanh_upward (0x1.6dp+8 + 0x1p+0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 -Test "Imaginary part of: ctanh_upward (0x1.6dp+8 + 0x1p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_upward (0x1p+0 + 0x8p+1020 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_upward (0x1p+0 + 0x8p+1020 i)": -ildouble: 2 -ldouble: 2 -Test "Imaginary part of: ctanh_upward (0x1p+0 + 0x8p+124 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_upward (0x1p+0 + 0x8p+16380 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_upward (0x1p+0 + 0x8p+16380 i)": -ildouble: 2 -ldouble: 2 -Test "Imaginary part of: ctanh_upward (0x1p+0 + 0xf.ffffffffffff8p+1020 i)": -double: 1 -idouble: 1 -ildouble: 2 -ldouble: 2 -Test "Real part of: ctanh_upward (0x1p+0 + 0xf.fffffp+124 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_upward (0x1p+0 + 0xf.fffffp+124 i)": -float: 3 -ifloat: 3 -ildouble: 5 -ldouble: 5 -Test "Real part of: ctanh_upward (0x2.dp+4 + 0x1p+0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 -Test "Imaginary part of: ctanh_upward (0x2.dp+4 + 0x1p+0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_upward (0x2.fp+4 + 0x1p+0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 -Test "Imaginary part of: ctanh_upward (0x2.fp+4 + 0x1p+0 i)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_upward (0x4p-1076 + 0x1.921fb4p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_upward (0x4p-1076 + 0x1.921fb4p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_upward (0x4p-1076 + 0x1.921fb54442d1846ap+0 i)": -ildouble: 3 -ldouble: 3 -Test "Real part of: ctanh_upward (0x4p-1076 + 0x1.921fb54442d18p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_upward (0x4p-1076 + 0x1.921fb54442d18p+0 i)": -ildouble: 3 -ldouble: 3 -Test "Real part of: ctanh_upward (0x4p-1076 + 0x1.921fb54442d19p+0 i)": -double: 1 -idouble: 1 -ildouble: 7 -ldouble: 7 -Test "Real part of: ctanh_upward (0x4p-1076 + 0x1.921fb6p+0 i)": -ildouble: 7 -ldouble: 7 -Test "Imaginary part of: ctanh_upward (0x4p-1076 + 0x1.921fb6p+0 i)": -double: 1 -idouble: 1 -Test "Real part of: ctanh_upward (0x8p-152 + 0x1.921fb4p+0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_upward (0x8p-152 + 0x1.921fb4p+0 i)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_upward (0x8p-152 + 0x1.921fb54442d1846ap+0 i)": -ildouble: 3 -ldouble: 3 -Test "Real part of: ctanh_upward (0x8p-152 + 0x1.921fb54442d18p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Imaginary part of: ctanh_upward (0x8p-152 + 0x1.921fb54442d18p+0 i)": -ildouble: 3 -ldouble: 3 -Test "Real part of: ctanh_upward (0x8p-152 + 0x1.921fb54442d19p+0 i)": -double: 1 -idouble: 1 -ildouble: 7 -ldouble: 7 -Test "Real part of: ctanh_upward (0x8p-152 + 0x1.921fb6p+0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 7 -ldouble: 7 -Test "Imaginary part of: ctanh_upward (0x8p-152 + 0x1.921fb6p+0 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: ctanh_upward (0x8p-16448 + 0x1.921fb4p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_upward (0x8p-16448 + 0x1.921fb54442d18p+0 i)": -ildouble: 4 -ldouble: 4 -Test "Imaginary part of: ctanh_upward (0x8p-16448 + 0x1.921fb54442d18p+0 i)": -ildouble: 3 -ldouble: 3 -Test "Real part of: ctanh_upward (0x8p-16448 + 0x1.921fb54442d19p+0 i)": -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_upward (0xc.35p+12 + 0xc.35p+12 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_upward (0xc.35p+12 - 0xc.35p+12 i)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "Real part of: ctanh_upward (0xcp-4 + 0x1.4p+0 i)": -float: 1 -ifloat: 1 -Test "Imaginary part of: ctanh_upward (0xcp-4 + 0x1.4p+0 i)": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 - -# erf -Test "erf (-0x8p-4)": -ildouble: 1 -ldouble: 1 - -# erfc -Test "erfc (0x1.4p+0)": -ildouble: 1 -ldouble: 1 -Test "erfc (0x2p+0)": -float: 1 -ifloat: 1 -Test "erfc (0x3.ee6078p+0)": -ildouble: 1 -ldouble: 1 -Test "erfc (0x4.2p+0)": -ildouble: 1 -ldouble: 1 -Test "erfc (0x6.4p+4)": -ildouble: 1 -ldouble: 1 -Test "erfc (0x7.fe8008p+0)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "erfc (0x7.fffd58p+0)": -ildouble: 1 -ldouble: 1 -Test "erfc (0x7.fffd59e26af37bc8p+0)": -ildouble: 1 -ldouble: 1 -Test "erfc (0x7.fffd59e26af37bcp+0)": -ildouble: 1 -ldouble: 1 -Test "erfc (0x7.fffd6p+0)": -float: 1 -ifloat: 1 -Test "erfc (0x7.ffff2p+0)": -ildouble: 1 -ldouble: 1 - -# expm1 -Test "expm1 (-0x1p-64)": -ildouble: 1 -ldouble: 1 - -# expm1_tonearest -Test "expm1_tonearest (-0x1p-64)": -ildouble: 1 -ldouble: 1 - -# gamma -Test "gamma (-0x4p-12)": -ildouble: 1 -ldouble: 1 -Test "gamma (-0x4p-32)": -ildouble: 1 -ldouble: 1 -Test "gamma (-0x8p-4)": -ildouble: 1 -ldouble: 1 -Test "gamma (0x1.3333333333334p+0)": -ildouble: 1 -ldouble: 1 -Test "gamma (0x1p-40)": -ildouble: 1 -ldouble: 1 -Test "gamma (0xb.333333333333334p-4)": -ildouble: 1 -ldouble: 1 -Test "gamma (0xb.3333333333338p-4)": -ildouble: 1 -ldouble: 1 -Test "gamma (0xb.33333p-4)": -ildouble: 1 -ldouble: 1 - -# hypot -Test "hypot (-0xb.3333333333338p-4, -0xc.6666666666668p+0)": -ildouble: 1 -ldouble: 1 -Test "hypot (-0xb.3333333333338p-4, 0xc.6666666666668p+0)": -ildouble: 1 -ldouble: 1 -Test "hypot (-0xb.33333p-4, -0xc.666666666666p+0)": -ildouble: 1 -ldouble: 1 -Test "hypot (-0xb.33333p-4, 0xc.666666666666p+0)": -ildouble: 1 -ldouble: 1 -Test "hypot (-0xb.33334p-4, -0xc.6666666666668p+0)": -double: 1 -idouble: 1 -Test "hypot (-0xb.33334p-4, 0xc.6666666666668p+0)": -double: 1 -idouble: 1 -Test "hypot (-0xc.6666666666668p+0, -0xb.3333333333338p-4)": -ildouble: 1 -ldouble: 1 -Test "hypot (-0xc.6666666666668p+0, -0xb.33334p-4)": -double: 1 -idouble: 1 -Test "hypot (-0xc.6666666666668p+0, 0xb.3333333333338p-4)": -ildouble: 1 -ldouble: 1 -Test "hypot (-0xc.6666666666668p+0, 0xb.33334p-4)": -double: 1 -idouble: 1 -Test "hypot (-0xc.666666666666p+0, -0xb.33333p-4)": -ildouble: 1 -ldouble: 1 -Test "hypot (-0xc.666666666666p+0, 0xb.33333p-4)": -ildouble: 1 -ldouble: 1 -Test "hypot (0x1.23456789abcdef02p-500, 0x1.23456789abcdefp-500)": -ildouble: 1 -ldouble: 1 -Test "hypot (0x1.23456789abcdefp-500, 0x1.23456789abcdef02p-500)": -ildouble: 1 -ldouble: 1 -Test "hypot (0x1.23456789abcdefp-500, 0x1.23456789abcdfp-500)": -ildouble: 1 -ldouble: 1 -Test "hypot (0x1.23456789abcdfp-500, 0x1.23456789abcdefp-500)": -ildouble: 1 -ldouble: 1 -Test "hypot (0xb.3333333333338p-4, -0xc.6666666666668p+0)": -ildouble: 1 -ldouble: 1 -Test "hypot (0xb.3333333333338p-4, 0xc.6666666666668p+0)": -ildouble: 1 -ldouble: 1 -Test "hypot (0xb.33333p-4, -0xc.666666666666p+0)": -ildouble: 1 -ldouble: 1 -Test "hypot (0xb.33333p-4, 0xc.666666666666p+0)": -ildouble: 1 -ldouble: 1 -Test "hypot (0xb.33334p-4, -0xc.6666666666668p+0)": -double: 1 -idouble: 1 -Test "hypot (0xb.33334p-4, 0xc.6666666666668p+0)": -double: 1 -idouble: 1 -Test "hypot (0xc.6666666666668p+0, -0xb.3333333333338p-4)": -ildouble: 1 -ldouble: 1 -Test "hypot (0xc.6666666666668p+0, -0xb.33334p-4)": -double: 1 -idouble: 1 -Test "hypot (0xc.6666666666668p+0, 0xb.3333333333338p-4)": -ildouble: 1 -ldouble: 1 -Test "hypot (0xc.6666666666668p+0, 0xb.33334p-4)": -double: 1 -idouble: 1 -Test "hypot (0xc.666666666666p+0, -0xb.33333p-4)": -ildouble: 1 -ldouble: 1 -Test "hypot (0xc.666666666666p+0, 0xb.33333p-4)": -ildouble: 1 -ldouble: 1 - -# j0 -Test "j0 (-0x2.002000002p+592)": -ildouble: 2 -ldouble: 2 -Test "j0 (-0x4p+0)": -float: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 -Test "j0 (-0xf.fffffp+124)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "j0 (0x1.8p+0)": -float: 1 -ifloat: 1 -Test "j0 (0x4p+0)": -float: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 -Test "j0 (0x4p+16380)": -ildouble: 1 -ldouble: 1 -Test "j0 (0x8p+0)": -float: 1 -ifloat: 1 -Test "j0 (0x8p+1020)": -double: 1 -idouble: 1 -Test "j0 (0xap+0)": -double: 1 -idouble: 1 -Test "j0 (0xe.be71dp+104)": -float: 2 -ifloat: 2 -Test "j0 (0xf.ffffffffffff8p+1020)": -ildouble: 1 -ldouble: 1 -Test "j0 (0xf.fffffp+124)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -# j1 -Test "j1 (0x1.8p+0)": -float: 1 -ifloat: 1 -Test "j1 (0x2p+0)": -float: 1 -ifloat: 1 -Test "j1 (0x4.ffcp+72)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "j1 (0x4p+16380)": -ildouble: 1 -ldouble: 1 -Test "j1 (0xap+0)": -float: 2 -ifloat: 2 -ildouble: 1 -ldouble: 1 - -# jn -Test "jn (0, -0x4p+0)": -float: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 -Test "jn (0, 0x1.8p+0)": -float: 1 -ifloat: 1 -Test "jn (0, 0x4p+0)": -float: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 -Test "jn (0, 0x8p+0)": -float: 1 -ifloat: 1 -Test "jn (0, 0xap+0)": -double: 1 -idouble: 1 -Test "jn (1, 0x1.8p+0)": -float: 1 -ifloat: 1 -Test "jn (1, 0x2p+0)": -float: 1 -ifloat: 1 -Test "jn (1, 0xap+0)": -float: 2 -ifloat: 2 -ildouble: 1 -ldouble: 1 -Test "jn (10, -0x1p+0)": -ildouble: 1 -ldouble: 1 -Test "jn (10, 0x1p+0)": -ildouble: 1 -ldouble: 1 -Test "jn (10, 0x2p+0)": -ildouble: 1 -ldouble: 1 -Test "jn (10, 0x2p-4)": -float: 1 -ifloat: 1 -Test "jn (10, 0xap+0)": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 2 -ldouble: 2 -Test "jn (10, 0xcp-4)": -float: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 -Test "jn (2, 0x2.67a2a4p+0)": -ildouble: 3 -ldouble: 3 -Test "jn (2, 0x2.67a2a5d2e36800fcp+0)": -ildouble: 1 -ldouble: 1 -Test "jn (2, 0x2.67a2a5d2e36801p+0)": -ildouble: 2 -ldouble: 2 -Test "jn (2, 0x2.67a2a5d2e3682p+0)": -ildouble: 1 -ldouble: 1 -Test "jn (2, 0x2.67a2a5d2e368p+0)": -ildouble: 1 -ldouble: 1 -Test "jn (2, 0x2.67a2a8p+0)": -double: 1 -idouble: 1 -ildouble: 2 -ldouble: 2 -Test "jn (2, 0x8p+1020)": -double: 1 -idouble: 1 -Test "jn (2, 0x8p+124)": -ildouble: 1 -ldouble: 1 -Test "jn (2, 0xf.fffb1p+96)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "jn (2, 0xf.ffffffffffff8p+1020)": -ildouble: 1 -ldouble: 1 -Test "jn (2, 0xf.fffffp+124)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "jn (3, -0x1p+0)": -ildouble: 1 -ldouble: 1 -Test "jn (3, 0x1p+0)": -ildouble: 1 -ldouble: 1 -Test "jn (3, 0x2.67a2a4p+0)": -ildouble: 1 -ldouble: 1 -Test "jn (3, 0x2.67a2a5d2e36801p+0)": -ildouble: 3 -ldouble: 3 -Test "jn (3, 0x2.67a2a5d2e3682p+0)": -ildouble: 1 -ldouble: 1 -Test "jn (3, 0x2.67a2a8p+0)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "jn (3, 0x2p+0)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "jn (3, 0xap+0)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "jn (4, 0x2.67a2a4p+0)": -ildouble: 1 -ldouble: 1 -Test "jn (4, 0x2.67a2a5d2e36800fcp+0)": -ildouble: 2 -ldouble: 2 -Test "jn (4, 0x2.67a2a5d2e36801p+0)": -ildouble: 1 -ldouble: 1 -Test "jn (4, 0x2.67a2a5d2e368p+0)": -ildouble: 1 -ldouble: 1 -Test "jn (4, 0x2.67a2a8p+0)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "jn (5, 0x2.67a2a4p+0)": -ildouble: 1 -ldouble: 1 -Test "jn (5, 0x2.67a2a5d2e36800fcp+0)": -ildouble: 2 -ldouble: 2 -Test "jn (5, 0x2.67a2a5d2e36801p+0)": -ildouble: 1 -ldouble: 1 -Test "jn (5, 0x2.67a2a5d2e368p+0)": -ildouble: 1 -ldouble: 1 -Test "jn (6, 0x2.67a2a4p+0)": -ildouble: 1 -ldouble: 1 -Test "jn (6, 0x2.67a2a5d2e36800fcp+0)": -ildouble: 1 -ldouble: 1 -Test "jn (6, 0x2.67a2a5d2e36801p+0)": -ildouble: 1 -ldouble: 1 -Test "jn (6, 0x2.67a2a5d2e3682p+0)": -ildouble: 1 -ldouble: 1 -Test "jn (6, 0x2.67a2a8p+0)": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 1 -ldouble: 1 -Test "jn (7, 0x2.67a2a4p+0)": -float: 1 -ifloat: 1 -Test "jn (7, 0x2.67a2a5d2e36800fcp+0)": -ildouble: 2 -ldouble: 2 -Test "jn (7, 0x2.67a2a5d2e36801p+0)": -ildouble: 1 -ldouble: 1 -Test "jn (7, 0x2.67a2a5d2e3682p+0)": -ildouble: 4 -ldouble: 4 -Test "jn (7, 0x2.67a2a5d2e368p+0)": -ildouble: 1 -ldouble: 1 -Test "jn (7, 0x2.67a2a8p+0)": -float: 1 -ifloat: 1 -Test "jn (8, 0x2.67a2a4p+0)": -ildouble: 1 -ldouble: 1 -Test "jn (8, 0x2.67a2a5d2e3682p+0)": -double: 1 -idouble: 1 -Test "jn (8, 0x2.67a2a8p+0)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "jn (9, 0x2.67a2a4p+0)": -float: 2 -ifloat: 2 -ildouble: 2 -ldouble: 2 -Test "jn (9, 0x2.67a2a5d2e3682p+0)": -double: 1 -idouble: 1 -Test "jn (9, 0x2.67a2a5d2e368p+0)": -ildouble: 1 -ldouble: 1 -Test "jn (9, 0x2.67a2a8p+0)": -double: 1 -idouble: 1 -ildouble: 3 -ldouble: 3 - -# lgamma -Test "lgamma (-0x4p-12)": -ildouble: 1 -ldouble: 1 -Test "lgamma (-0x4p-32)": -ildouble: 1 -ldouble: 1 -Test "lgamma (-0x8p-4)": -ildouble: 1 -ldouble: 1 -Test "lgamma (0x1.3333333333334p+0)": -ildouble: 1 -ldouble: 1 -Test "lgamma (0x1p-40)": -ildouble: 1 -ldouble: 1 -Test "lgamma (0xb.333333333333334p-4)": -ildouble: 1 -ldouble: 1 -Test "lgamma (0xb.3333333333338p-4)": -ildouble: 1 -ldouble: 1 -Test "lgamma (0xb.33333p-4)": -ildouble: 1 -ldouble: 1 - -# pow -Test "pow (-0x2p+0, -0x7.ep+4)": -ildouble: 7 -ldouble: 7 -Test "pow (-0x2p+0, -0x7.fp+4)": -ifloat: 7 -Test "pow (-0x2p+0, 0x7.ep+4)": -ildouble: 7 -ldouble: 7 -Test "pow (-0x8p-4, -0x7.ep+4)": -ildouble: 7 -ldouble: 7 -Test "pow (-0x8p-4, 0x7.ep+4)": -ildouble: 7 -ldouble: 7 -Test "pow (-0x8p-4, 0x7.fp+4)": -ifloat: 7 -Test "pow (0x1p+64, 0x2p-4)": -ildouble: 1 -ldouble: 1 -Test "pow (0x1p+8, 0x8p+0)": -float: 1 -ifloat: 1 -ildouble: 7 -ldouble: 7 -Test "pow (0xf.ffffffffffff8p+1020, 0xcp-4)": -double: 1 -idouble: 1 -Test "pow (0xf.fffffp+124, 0xcp-4)": -float: 5 -ifloat: 5 -Test "pow (0xf.fffffp-4, -0x1p+24)": -float: 1 -ifloat: 1 -Test "pow (0xf.fffffp-4, 0x1p+24)": -float: 1 -ifloat: 1 - -# pow_downward -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_tonearest -Test "pow_tonearest (-0x2p+0, -0x7.ep+4)": -ildouble: 7 -ldouble: 7 -Test "pow_tonearest (-0x2p+0, -0x7.fp+4)": -float: 7 -ifloat: 7 -Test "pow_tonearest (-0x2p+0, 0x7.ep+4)": -ildouble: 7 -ldouble: 7 -Test "pow_tonearest (-0x8p-4, -0x7.ep+4)": -ildouble: 7 -ldouble: 7 -Test "pow_tonearest (-0x8p-4, 0x7.ep+4)": -ildouble: 7 -ldouble: 7 -Test "pow_tonearest (-0x8p-4, 0x7.fp+4)": -float: 7 -ifloat: 7 -Test "pow_tonearest (0x1p+64, 0x2p-4)": -ildouble: 1 -ldouble: 1 -Test "pow_tonearest (0x1p+8, 0x8p+0)": -float: 1 -ifloat: 1 -ildouble: 7 -ldouble: 7 -Test "pow_tonearest (0xf.ffffffffffff8p+1020, 0xcp-4)": -double: 1 -idouble: 1 -Test "pow_tonearest (0xf.fffffp+124, 0xcp-4)": -float: 5 -ifloat: 5 -Test "pow_tonearest (0xf.fffffp-4, -0x1p+24)": -float: 1 -ifloat: 1 -Test "pow_tonearest (0xf.fffffp-4, 0x1p+24)": -float: 1 -ifloat: 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)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "pow_upward (1.5, 1.03125)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 - -# sin -Test "sin (0x2.5535376715bap+0)": -double: 1 -idouble: 1 -Test "sin (0x4.1237e153f708p+0)": -double: 1 -idouble: 1 -Test "sin (0x4.c92d0ffa4bfp+0)": -double: 1 -idouble: 1 -Test "sin (0xe.ef3af1b5d8p-4)": -double: 1 -idouble: 1 - -# sin_tonearest -Test "sin_tonearest (0x2.5535376715bap+0)": -double: 1 -idouble: 1 -Test "sin_tonearest (0x4.1237e153f708p+0)": -double: 1 -idouble: 1 -Test "sin_tonearest (0x4.c92d0ffa4bfp+0)": -double: 1 -idouble: 1 -Test "sin_tonearest (0xe.ef3af1b5d8p-4)": -double: 1 -idouble: 1 - -# tgamma -Test "tgamma (-0x1.000002p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x1.3ffffep+4)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x1.3ffffffffffffffep+4)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x1.3ffffffffffffp+4)": -ildouble: 3 -ldouble: 3 -Test "tgamma (-0x1.4000000000000002p+4)": -ildouble: 3 -ldouble: 3 -Test "tgamma (-0x1.4000000000001p+4)": -double: 1 -idouble: 1 -ildouble: 6 -ldouble: 6 -Test "tgamma (-0x1.400002p+4)": -float: 3 -ifloat: 3 -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x1.8p+0)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x1.dffffffffffffffep+4)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x1.dffffffffffffp+4)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x1.e000000000000002p+4)": -ildouble: 2 -ldouble: 2 -Test "tgamma (-0x1.e000000000001p+4)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x1.e00002p+4)": -ildouble: 2 -ldouble: 2 -Test "tgamma (-0x1.f3fffep+8)": -ildouble: 5 -ldouble: 5 -Test "tgamma (-0x1.f3fffffffffffp+8)": -ildouble: 7 -ldouble: 7 -Test "tgamma (-0x1.f400000000000002p+8)": -ildouble: 8 -ldouble: 8 -Test "tgamma (-0x1.f40002p+8)": -ildouble: 4 -ldouble: 4 -Test "tgamma (-0x1.fffffffffffffp+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x1p-24)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x2.0000000000000004p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x2.0000000000002p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x2.000004p+0)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x2.146544p+4)": -float: 2 -ifloat: 2 -Test "tgamma (-0x2.7ffffcp+4)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x2.7fffffffffffep+4)": -ildouble: 5 -ldouble: 5 -Test "tgamma (-0x2.7ffffffffffffffcp+4)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x2.8000000000000004p+4)": -ildouble: 6 -ldouble: 6 -Test "tgamma (-0x2.800004p+4)": -ildouble: 2 -ldouble: 2 -Test "tgamma (-0x2.8ffffcp+4)": -ildouble: 6 -ldouble: 6 -Test "tgamma (-0x2.8fffffffffffep+4)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x2.8ffffffffffffffcp+4)": -ildouble: 3 -ldouble: 3 -Test "tgamma (-0x2.8p+0)": -double: 1 -idouble: 1 -Test "tgamma (-0x2.9000000000000004p+4)": -ildouble: 4 -ldouble: 4 -Test "tgamma (-0x2.9000000000002p+4)": -ildouble: 7 -ldouble: 7 -Test "tgamma (-0x2.900004p+4)": -ildouble: 4 -ldouble: 4 -Test "tgamma (-0x2.9ffffcp+4)": -ildouble: 7 -ldouble: 7 -Test "tgamma (-0x2.9fffffffffffep+4)": -ildouble: 2 -ldouble: 2 -Test "tgamma (-0x2.9ffffffffffffffcp+4)": -ildouble: 2 -ldouble: 2 -Test "tgamma (-0x2.a000000000002p+4)": -ildouble: 5 -ldouble: 5 -Test "tgamma (-0x3.0000000000002p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x3.000004p+0)": -float: 1 -ifloat: 1 -Test "tgamma (-0x3.1ffffcp+4)": -ildouble: 3 -ldouble: 3 -Test "tgamma (-0x3.1fffffffffffep+4)": -double: 1 -idouble: 1 -ildouble: 5 -ldouble: 5 -Test "tgamma (-0x3.2000000000000004p+4)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x3.2000000000002p+4)": -ildouble: 5 -ldouble: 5 -Test "tgamma (-0x3.200004p+4)": -double: 1 -idouble: 1 -ildouble: 8 -ldouble: 8 -Test "tgamma (-0x3.e7fffffffffffffcp+8)": -ildouble: 4 -ldouble: 4 -Test "tgamma (-0x3.e800000000002p+8)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x3.e80004p+8)": -ildouble: 5 -ldouble: 5 -Test "tgamma (-0x3.fffffcp+0)": -float: 1 -ifloat: 1 -Test "tgamma (-0x3.fffffffffffffffcp+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x4.0000000000000008p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x4.000008p+0)": -float: 2 -ifloat: 2 -Test "tgamma (-0x4.8p+0)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x4.fffff8p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x5.0000000000000008p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x5.0000000000004p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x5.000008p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x5.fffff8p+0)": -float: 1 -ifloat: 1 -Test "tgamma (-0x6.0000000000000008p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x6.3ffff8p+4)": -ildouble: 4 -ldouble: 4 -Test "tgamma (-0x6.3fffffffffffcp+4)": -ildouble: 5 -ldouble: 5 -Test "tgamma (-0x6.3ffffffffffffff8p+4)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x6.4000000000004p+4)": -ildouble: 6 -ldouble: 6 -Test "tgamma (-0x6.400008p+4)": -ildouble: 9 -ldouble: 9 -Test "tgamma (-0x6.8p+0)": -float: 1 -ifloat: 1 -Test "tgamma (-0x6.d60008p+8)": -ildouble: 2 -ldouble: 2 -Test "tgamma (-0x6.fffff8p+0)": -ildouble: 2 -ldouble: 2 -Test "tgamma (-0x6.ffffffffffffcp+0)": -double: 3 -idouble: 3 -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x7.0000000000000008p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x7.0000000000004p+0)": -double: 4 -idouble: 4 -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x7.000008p+0)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x7.8p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x7.fffff8p+0)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x7.ffffffffffffcp+0)": -double: 3 -idouble: 3 -Test "tgamma (-0x7.fffffffffffffff8p+0)": -ildouble: 2 -ldouble: 2 -Test "tgamma (-0x8.000000000000001p+0)": -ildouble: 3 -ldouble: 3 -Test "tgamma (-0x8.00001p+0)": -double: 1 -idouble: 1 -Test "tgamma (-0x8.8p+0)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x8p-4)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "tgamma (-0x9.5fffffffffff8p+4)": -ildouble: 3 -ldouble: 3 -Test "tgamma (-0x9.5ffffffffffffffp+4)": -ildouble: 2 -ldouble: 2 -Test "tgamma (-0x9.60001p+4)": -ildouble: 7 -ldouble: 7 -Test "tgamma (-0x9.8p+0)": -float: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 -Test "tgamma (-0x9.ffffffffffff8p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0x9.fffffp+0)": -float: 1 -ifloat: 1 -Test "tgamma (-0xa.000000000000001p+0)": -ildouble: 2 -ldouble: 2 -Test "tgamma (-0xa.0000000000008p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0xa.00001p+0)": -double: 1 -idouble: 1 -Test "tgamma (-0xb.500000000000001p+4)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0xb.5000000000008p+4)": -ildouble: 7 -ldouble: 7 -Test "tgamma (-0xb.5fffffffffff8p+4)": -ildouble: 6 -ldouble: 6 -Test "tgamma (-0xb.5ffffp+4)": -ildouble: 3 -ldouble: 3 -Test "tgamma (-0xb.6000000000008p+4)": -ildouble: 2 -ldouble: 2 -Test "tgamma (-0xb.6fffffffffff8p+4)": -ildouble: 4 -ldouble: 4 -Test "tgamma (-0xb.7000000000008p+4)": -ildouble: 4 -ldouble: 4 -Test "tgamma (-0xb.800000000000001p+4)": -ildouble: 2 -ldouble: 2 -Test "tgamma (-0xb.8000000000008p+4)": -ildouble: 4 -ldouble: 4 -Test "tgamma (-0xb.80001p+4)": -ildouble: 4 -ldouble: 4 -Test "tgamma (-0xb.bfffffffffff8p+4)": -ildouble: 2 -ldouble: 2 -Test "tgamma (-0xb.bffffffffffffffp+4)": -ildouble: 2 -ldouble: 2 -Test "tgamma (-0xb.bffffp+4)": -ildouble: 5 -ldouble: 5 -Test "tgamma (-0xb.cfffffffffff8p+4)": -ildouble: 6 -ldouble: 6 -Test "tgamma (-0xb.d00000000000001p+4)": -ildouble: 3 -ldouble: 3 -Test "tgamma (-0xb.dfffffffffff8p+4)": -ildouble: 9 -ldouble: 9 -Test "tgamma (-0xb.e000000000008p+4)": -ildouble: 9 -ldouble: 9 -Test "tgamma (-0xf.9fffffffffff8p+4)": -ildouble: 5 -ldouble: 5 -Test "tgamma (-0xf.9ffffffffffffffp+4)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0xf.9ffffp+4)": -ildouble: 3 -ldouble: 3 -Test "tgamma (-0xf.a00000000000001p+4)": -ildouble: 4 -ldouble: 4 -Test "tgamma (-0xf.a000000000008p+4)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0xf.fffffffffffffffp-4)": -ildouble: 1 -ldouble: 1 -Test "tgamma (-0xf.fffffp-4)": -float: 1 -ifloat: 1 -Test "tgamma (0x1.28p+4)": -float: 1 -ifloat: 1 -Test "tgamma (0x1.38p+4)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "tgamma (0x1.78p+4)": -ildouble: 1 -ldouble: 1 -Test "tgamma (0x1.d8p+4)": -ildouble: 1 -ldouble: 1 -Test "tgamma (0x1.e8p+4)": -float: 1 -ifloat: 1 -Test "tgamma (0x1.fffffep+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (0x1.fffffffffffffffep+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (0x1p-24)": -float: 1 -ifloat: 1 -Test "tgamma (0x1p-64)": -ildouble: 1 -ldouble: 1 -Test "tgamma (0x2.0000000000002p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (0x2.000004p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (0x2.08p+4)": -ildouble: 1 -ldouble: 1 -Test "tgamma (0x2.18p+4)": -float: 1 -ifloat: 1 -Test "tgamma (0x2.28p+4)": -float: 1 -ifloat: 1 -ildouble: 3 -ldouble: 3 -Test "tgamma (0x2.30a43cp+4)": -float: 2 -ifloat: 2 -ildouble: 3 -ldouble: 3 -Test "tgamma (0x2.30a44p+4)": -double: 1 -idouble: 1 -Test "tgamma (0x2.8p+0)": -float: 1 -ifloat: 1 -Test "tgamma (0x2.fffffcp+0)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "tgamma (0x2.ffffffffffffep+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (0x3.0000000000002p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (0x3.8p+0)": -float: 1 -ifloat: 1 -Test "tgamma (0x3.e8p+8)": -ildouble: 7 -ldouble: 7 -Test "tgamma (0x3.fffffcp+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (0x3.fffffffffffffffcp+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (0x3p+0)": -float: 1 -ifloat: 1 -Test "tgamma (0x4.0000000000000008p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (0x4.000008p+0)": -float: 1 -ifloat: 1 -Test "tgamma (0x4.8p+0)": -double: 1 -idouble: 1 -Test "tgamma (0x4.fffff8p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (0x4.fffffffffffffff8p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (0x4p+0)": -float: 1 -ifloat: 1 -Test "tgamma (0x5.0000000000000008p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (0x5.000008p+0)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "tgamma (0x5.8p+0)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "tgamma (0x5.fffff8p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (0x5.ffffffffffffcp+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (0x5p+0)": -float: 1 -ifloat: 1 -Test "tgamma (0x6.0000000000000008p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (0x6.000008p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (0x6.8p+0)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "tgamma (0x6.fffff8p+0)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "tgamma (0x6.ffffffffffffcp+0)": -double: 3 -idouble: 3 -Test "tgamma (0x6p+0)": -float: 1 -ifloat: 1 -Test "tgamma (0x7.0000000000000008p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (0x7.0000000000004p+0)": -double: 4 -idouble: 4 -ildouble: 1 -ldouble: 1 -Test "tgamma (0x7.000008p+0)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "tgamma (0x7.8p+0)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "tgamma (0x7.fffff8p+0)": -ildouble: 1 -ldouble: 1 -Test "tgamma (0x7.ffffffffffffcp+0)": -double: 2 -idouble: 2 -Test "tgamma (0x7.fffffffffffffff8p+0)": -ildouble: 2 -ldouble: 2 -Test "tgamma (0x7p+0)": -double: 1 -idouble: 1 -Test "tgamma (0x8.000000000000001p+0)": -ildouble: 2 -ldouble: 2 -Test "tgamma (0x8.00001p+0)": -double: 1 -idouble: 1 -Test "tgamma (0x8.8p+0)": -float: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 -Test "tgamma (0x8p+0)": -double: 1 -idouble: 1 -Test "tgamma (0x8p-4)": -float: 1 -ifloat: 1 -Test "tgamma (0x8p-56)": -double: 1 -idouble: 1 -Test "tgamma (0x9.8p+0)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "tgamma (0x9p+0)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "tgamma (0xa.b9fd7p+4)": -double: 1 -idouble: 1 -Test "tgamma (0xa.b9fd8p+4)": -ildouble: 3 -ldouble: 3 -Test "tgamma (0xap+0)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 - -# y0 -Test "y0 (0x1.8p+0)": -float: 1 -ifloat: 1 -Test "y0 (0x1p+0)": -ildouble: 1 -ldouble: 1 -Test "y0 (0x1p-100)": -float: 1 -ifloat: 1 -Test "y0 (0x1p-20)": -float: 1 -ifloat: 1 -Test "y0 (0x1p-40)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "y0 (0x1p-60)": -double: 1 -idouble: 1 -Test "y0 (0x1p-80)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "y0 (0x2p-4)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "y0 (0x4.ffcp+72)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "y0 (0x4p+16380)": -ildouble: 1 -ldouble: 1 -Test "y0 (0x4p-112)": -float: 1 -ifloat: 1 -Test "y0 (0x4p-12)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "y0 (0x4p-32)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "y0 (0x4p-72)": -double: 1 -idouble: 1 -Test "y0 (0x4p-92)": -float: 1 -ifloat: 1 -Test "y0 (0x8p+0)": -ildouble: 1 -ldouble: 1 -Test "y0 (0xap+0)": -float: 1 -ifloat: 1 -Test "y0 (0xcp-4)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 - -# y1 -Test "y1 (0x1p+0)": -double: 1 -idouble: 1 -Test "y1 (0x2.002000002p+592)": -ildouble: 2 -ldouble: 2 -Test "y1 (0x2p+0)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "y1 (0x2p-4)": -ildouble: 1 -ldouble: 1 -Test "y1 (0x4p+16380)": -ildouble: 1 -ldouble: 1 -Test "y1 (0x4p-12)": -float: 1 -ifloat: 1 -Test "y1 (0x8p+0)": -float: 1 -ifloat: 1 -Test "y1 (0x8p+1020)": -double: 1 -idouble: 1 -Test "y1 (0x9.3f102p+96)": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 1 -ldouble: 1 -Test "y1 (0xf.ffffffffffff8p+1020)": -ildouble: 1 -ldouble: 1 -Test "y1 (0xf.fffffp+124)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -# yn -Test "yn (-1, 0x1p+0)": -double: 1 -idouble: 1 -Test "yn (-10, 0x1p+0)": -float: 2 -ifloat: 2 -Test "yn (0, 0x1.8p+0)": -float: 1 -ifloat: 1 -Test "yn (0, 0x1p+0)": -ildouble: 1 -ldouble: 1 -Test "yn (0, 0x2p-4)": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 -Test "yn (0, 0x8p+0)": -ildouble: 1 -ldouble: 1 -Test "yn (0, 0xap+0)": -float: 1 -ifloat: 1 -Test "yn (0, 0xcp-4)": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "yn (1, 0x1p+0)": -double: 1 -idouble: 1 -Test "yn (1, 0x2p+0)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "yn (1, 0x2p-4)": -ildouble: 1 -ldouble: 1 -Test "yn (1, 0x8p+0)": -float: 1 -ifloat: 1 -Test "yn (10, 0x1p+0)": -float: 2 -ifloat: 2 -Test "yn (10, 0x2p+0)": -float: 1 -ifloat: 1 -Test "yn (10, 0x2p-4)": -double: 1 -idouble: 1 -ildouble: 2 -ldouble: 2 -Test "yn (10, 0x4p-1024)": -ildouble: 1 -ldouble: 1 -Test "yn (10, 0x4p-128)": -ildouble: 1 -ldouble: 1 -Test "yn (10, 0x8p-972)": -ildouble: 1 -ldouble: 1 -Test "yn (10, 0xap+0)": -float: 2 -ifloat: 2 -Test "yn (10, 0xcp-4)": -float: 1 -ifloat: 1 -ildouble: 4 -ldouble: 4 -Test "yn (2, 0x8p+124)": -float: 3 -ifloat: 3 -Test "yn (2, 0xf.fffb1p+96)": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "yn (3, 0x2p-4)": -ildouble: 1 -ldouble: 1 -Test "yn (3, 0xcp-4)": -double: 1 -idouble: 1 -ildouble: 2 -ldouble: 2 - -# Maximal error of functions: -Function: "acosh": -double: 1 -idouble: 1 - -Function: "asin_downward": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "asin_towardzero": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "asin_upward": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "asinh": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "atan2": -ildouble: 1 -ldouble: 1 - -Function: Real part of "cacos": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 1 -ldouble: 1 - -Function: Imaginary part of "cacos": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: Real part of "cacosh": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: Imaginary part of "cacosh": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 1 -ldouble: 1 - -Function: Real part of "casin": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: Imaginary part of "casin": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: Real part of "casinh": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: Imaginary part of "casinh": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: Real part of "catan": -ildouble: 1 -ldouble: 1 - -Function: Imaginary part of "catan": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: Real part of "catanh": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: Imaginary part of "catanh": -ildouble: 1 -ldouble: 1 - -Function: "cbrt": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: Real part of "ccos": -ildouble: 1 -ldouble: 1 - -Function: Imaginary part of "ccos": -ildouble: 1 -ldouble: 1 - -Function: Imaginary part of "ccosh": -ildouble: 1 -ldouble: 1 - -Function: Real part of "cexp": -ildouble: 1 -ldouble: 1 - -Function: Imaginary part of "cexp": -ildouble: 1 -ldouble: 1 - -Function: Real part of "clog": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: Imaginary part of "clog": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: Real part of "clog10": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: Imaginary part of "clog10": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: "cos": -double: 1 -idouble: 1 - -Function: "cos_tonearest": -double: 1 -idouble: 1 - -Function: Real part of "cpow": -double: 1 -float: 3 -idouble: 1 -ifloat: 3 -ildouble: 3 -ldouble: 3 - -Function: Imaginary part of "cpow": -float: 5 -ifloat: 5 -ildouble: 1 -ldouble: 1 - -Function: Real part of "csin": -ildouble: 1 -ldouble: 1 - -Function: Real part of "csinh": -ildouble: 1 -ldouble: 1 - -Function: Real part of "csqrt": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 - -Function: Imaginary part of "csqrt": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 - -Function: Real part of "ctan": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: Imaginary part of "ctan": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: Real part of "ctan_downward": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 2 -ldouble: 2 - -Function: Imaginary part of "ctan_downward": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 -ildouble: 2 -ldouble: 2 - -Function: Real part of "ctan_tonearest": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: Imaginary part of "ctan_tonearest": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: Real part of "ctan_towardzero": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 2 -ldouble: 2 - -Function: Imaginary part of "ctan_towardzero": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 -ildouble: 4 -ldouble: 4 - -Function: Real part of "ctan_upward": -double: 1 -float: 3 -idouble: 1 -ifloat: 3 -ildouble: 5 -ldouble: 5 - -Function: Imaginary part of "ctan_upward": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 7 -ldouble: 7 - -Function: Real part of "ctanh": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: Imaginary part of "ctanh": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 2 -ldouble: 2 - -Function: Real part of "ctanh_downward": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 -ildouble: 2 -ldouble: 2 - -Function: Imaginary part of "ctanh_downward": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 2 -ldouble: 2 - -Function: Real part of "ctanh_tonearest": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: Imaginary part of "ctanh_tonearest": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 2 -ldouble: 2 - -Function: Real part of "ctanh_towardzero": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 -ildouble: 4 -ldouble: 4 - -Function: Imaginary part of "ctanh_towardzero": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: Real part of "ctanh_upward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 7 -ldouble: 7 - -Function: Imaginary part of "ctanh_upward": -double: 1 -float: 3 -idouble: 1 -ifloat: 3 -ildouble: 5 -ldouble: 5 - -Function: "erf": -ildouble: 1 -ldouble: 1 - -Function: "erfc": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "expm1": -ildouble: 1 -ldouble: 1 - -Function: "expm1_tonearest": -ildouble: 1 -ldouble: 1 - -Function: "gamma": -ildouble: 1 -ldouble: 1 - -Function: "hypot": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 - -Function: "j0": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 2 -ldouble: 2 - -Function: "j1": -float: 2 -ifloat: 2 -ildouble: 1 -ldouble: 1 - -Function: "jn": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 4 -ldouble: 4 - -Function: "lgamma": -ildouble: 1 -ldouble: 1 - -Function: "pow": -double: 1 -float: 5 -idouble: 1 -ifloat: 7 -ildouble: 7 -ldouble: 7 - -Function: "pow_downward": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "pow_tonearest": -double: 1 -float: 7 -idouble: 1 -ifloat: 7 -ildouble: 7 -ldouble: 7 - -Function: "pow_towardzero": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "pow_upward": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "sin": -double: 1 -idouble: 1 - -Function: "sin_tonearest": -double: 1 -idouble: 1 - -Function: "tgamma": -double: 4 -float: 3 -idouble: 4 -ifloat: 3 -ildouble: 9 -ldouble: 9 - -Function: "y0": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "y1": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 2 -ldouble: 2 - -Function: "yn": -double: 1 -float: 3 -idouble: 1 -ifloat: 3 -ildouble: 4 -ldouble: 4 - -# end of automatic generation diff --git a/ports/sysdeps/m68k/m680x0/fpu/math_private.h b/ports/sysdeps/m68k/m680x0/fpu/math_private.h deleted file mode 100644 index 217de2ecc2..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/math_private.h +++ /dev/null @@ -1,19 +0,0 @@ -#ifndef _MATH_PRIVATE_H - -#define math_opt_barrier(x) \ -({ __typeof (x) __x; \ - __asm ("" : "=f" (__x) : "0" (x)); \ - __x; }) -#define math_force_eval(x) \ -do \ - { \ - __typeof (x) __x = (x); \ - if (sizeof (x) <= sizeof (double)) \ - __asm __volatile ("" : : "m" (__x)); \ - else \ - __asm __volatile ("" : : "f" (__x)); \ - } \ -while (0) - -#include_next <math_private.h> -#endif diff --git a/ports/sysdeps/m68k/m680x0/fpu/mathimpl.h b/ports/sysdeps/m68k/m680x0/fpu/mathimpl.h deleted file mode 100644 index 2b129a86bd..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/mathimpl.h +++ /dev/null @@ -1,93 +0,0 @@ -/* Definitions of libc internal inline math functions implemented - by the m68881/2. - Copyright (C) 1991-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -/* This file contains the definitions of the inline math functions that - are only used internally inside libm, not visible to the user. */ - -__inline_mathop (__ieee754_acos, acos) -__inline_mathop (__ieee754_asin, asin) -__inline_mathop (__ieee754_cosh, cosh) -__inline_mathop (__ieee754_sinh, sinh) -__inline_mathop (__ieee754_exp, etox) -__inline_mathop (__ieee754_exp2, twotox) -__inline_mathop (__ieee754_exp10, tentox) -__inline_mathop (__ieee754_log10, log10) -__inline_mathop (__ieee754_log2, log2) -__inline_mathop (__ieee754_log, logn) -__inline_mathop (__ieee754_sqrt, sqrt) -__inline_mathop (__ieee754_atanh, atanh) - -__m81_defun (double, __ieee754_remainder, (double __x, double __y)) -{ - double __result; - __asm ("frem%.x %1, %0" : "=f" (__result) : "f" (__y), "0" (__x)); - return __result; -} - -__m81_defun (float, __ieee754_remainderf, (float __x, float __y)) -{ - float __result; - __asm ("frem%.x %1, %0" : "=f" (__result) : "f" (__y), "0" (__x)); - return __result; -} - -__m81_defun (long double, - __ieee754_remainderl, (long double __x, long double __y)) -{ - long double __result; - __asm ("frem%.x %1, %0" : "=f" (__result) : "f" (__y), "0" (__x)); - return __result; -} - -__m81_defun (double, __ieee754_fmod, (double __x, double __y)) -{ - double __result; - __asm ("fmod%.x %1, %0" : "=f" (__result) : "f" (__y), "0" (__x)); - return __result; -} - -__m81_defun (float, __ieee754_fmodf, (float __x, float __y)) -{ - float __result; - __asm ("fmod%.x %1, %0" : "=f" (__result) : "f" (__y), "0" (__x)); - return __result; -} - -__m81_defun (long double, - __ieee754_fmodl, (long double __x, long double __y)) -{ - long double __result; - __asm ("fmod%.x %1, %0" : "=f" (__result) : "f" (__y), "0" (__x)); - return __result; -} - -/* Get the m68881 condition codes, to quickly check multiple conditions. */ -static __inline__ unsigned long -__m81_test (long double __val) -{ - unsigned long __fpsr; - __asm ("ftst%.x %1; fmove%.l %/fpsr,%0" : "=dm" (__fpsr) : "f" (__val)); - return __fpsr; -} - -/* Bit values returned by __m81_test. */ -#define __M81_COND_NAN (1 << 24) -#define __M81_COND_INF (2 << 24) -#define __M81_COND_ZERO (4 << 24) -#define __M81_COND_NEG (8 << 24) diff --git a/ports/sysdeps/m68k/m680x0/fpu/mpa.c b/ports/sysdeps/m68k/m680x0/fpu/mpa.c deleted file mode 100644 index 1cc8931700..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/mpa.c +++ /dev/null @@ -1 +0,0 @@ -/* Not needed. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/mpatan.c b/ports/sysdeps/m68k/m680x0/fpu/mpatan.c deleted file mode 100644 index 1cc8931700..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/mpatan.c +++ /dev/null @@ -1 +0,0 @@ -/* Not needed. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/mpatan2.c b/ports/sysdeps/m68k/m680x0/fpu/mpatan2.c deleted file mode 100644 index 1cc8931700..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/mpatan2.c +++ /dev/null @@ -1 +0,0 @@ -/* Not needed. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/mpexp.c b/ports/sysdeps/m68k/m680x0/fpu/mpexp.c deleted file mode 100644 index 1cc8931700..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/mpexp.c +++ /dev/null @@ -1 +0,0 @@ -/* Not needed. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/mplog.c b/ports/sysdeps/m68k/m680x0/fpu/mplog.c deleted file mode 100644 index 1cc8931700..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/mplog.c +++ /dev/null @@ -1 +0,0 @@ -/* Not needed. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/mpsqrt.c b/ports/sysdeps/m68k/m680x0/fpu/mpsqrt.c deleted file mode 100644 index 1cc8931700..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/mpsqrt.c +++ /dev/null @@ -1 +0,0 @@ -/* Not needed. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/mptan.c b/ports/sysdeps/m68k/m680x0/fpu/mptan.c deleted file mode 100644 index 1cc8931700..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/mptan.c +++ /dev/null @@ -1 +0,0 @@ -/* Not needed. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_atan.c b/ports/sysdeps/m68k/m680x0/fpu/s_atan.c deleted file mode 100644 index c10437e50d..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_atan.c +++ /dev/null @@ -1,35 +0,0 @@ -/* Copyright (C) 1996-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <math.h> - -#ifndef FUNC -#define FUNC atan -#endif -#ifndef float_type -#define float_type double -#endif - -#define __CONCATX(a,b) __CONCAT(a,b) - -float_type -__CONCATX(__,FUNC) (x) - float_type x; -{ - return __m81_u(__CONCATX(__,FUNC))(x); -} -weak_alias (__CONCATX(__,FUNC), FUNC) diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_atanf.c b/ports/sysdeps/m68k/m680x0/fpu/s_atanf.c deleted file mode 100644 index c98559a8ba..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_atanf.c +++ /dev/null @@ -1,5 +0,0 @@ -#ifndef FUNC -#define FUNC atanf -#endif -#define float_type float -#include <s_atan.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_atanl.c b/ports/sysdeps/m68k/m680x0/fpu/s_atanl.c deleted file mode 100644 index b7e608addd..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_atanl.c +++ /dev/null @@ -1,5 +0,0 @@ -#ifndef FUNC -#define FUNC atanl -#endif -#define float_type long double -#include <s_atan.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_ccosh.c b/ports/sysdeps/m68k/m680x0/fpu/s_ccosh.c deleted file mode 100644 index 249516c15d..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_ccosh.c +++ /dev/null @@ -1,76 +0,0 @@ -/* Complex cosine hyperbole function. m68k fpu version - Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <complex.h> -#include <math.h> -#include "mathimpl.h" - -#ifndef SUFF -#define SUFF -#endif -#ifndef float_type -#define float_type double -#endif - -#define CONCATX(a,b) __CONCAT(a,b) -#define s(name) CONCATX(name,SUFF) -#define m81(func) __m81_u(s(func)) - -__complex__ float_type -s(__ccosh) (__complex__ float_type x) -{ - __complex__ float_type retval; - unsigned long ix_cond = __m81_test (__imag__ x); - - if ((ix_cond & (__M81_COND_INF|__M81_COND_NAN)) == 0) - { - /* Imaginary part is finite. */ - float_type sin_ix, cos_ix; - - __asm ("fsincos%.x %2,%1:%0" : "=f" (sin_ix), "=f" (cos_ix) - : "f" (__imag__ x)); - __real__ retval = cos_ix * m81(__ieee754_cosh) (__real__ x); - if (ix_cond & __M81_COND_ZERO) - __imag__ retval = (signbit (__real__ x) - ? -__imag__ x : __imag__ x); - else - __imag__ retval = sin_ix * m81(__ieee754_sinh) (__real__ x); - } - else - { - unsigned long rx_cond = __m81_test (__real__ x); - - if (rx_cond & __M81_COND_ZERO) - { - __real__ retval = __imag__ x - __imag__ x; - __imag__ retval = __real__ x; - } - else - { - if (rx_cond & __M81_COND_INF) - __real__ retval = s(fabs) (__real__ x); - else - __real__ retval = s(__nan) (""); - __imag__ retval = __imag__ x - __imag__ x; - } - } - - return retval; -} -weak_alias (s(__ccosh), s(ccosh)) diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_ccoshf.c b/ports/sysdeps/m68k/m680x0/fpu/s_ccoshf.c deleted file mode 100644 index 3c8e7c7bb7..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_ccoshf.c +++ /dev/null @@ -1,3 +0,0 @@ -#define SUFF f -#define float_type float -#include <s_ccosh.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_ccoshl.c b/ports/sysdeps/m68k/m680x0/fpu/s_ccoshl.c deleted file mode 100644 index 772d5786cf..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_ccoshl.c +++ /dev/null @@ -1,3 +0,0 @@ -#define SUFF l -#define float_type long double -#include <s_ccosh.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_ceil.c b/ports/sysdeps/m68k/m680x0/fpu/s_ceil.c deleted file mode 100644 index 93d5ad72e5..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_ceil.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC ceil -#include <s_atan.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_ceilf.c b/ports/sysdeps/m68k/m680x0/fpu/s_ceilf.c deleted file mode 100644 index b3ba6a5700..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_ceilf.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC ceilf -#include <s_atanf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_ceill.c b/ports/sysdeps/m68k/m680x0/fpu/s_ceill.c deleted file mode 100644 index 2bf95b00c6..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_ceill.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC ceill -#include <s_atanl.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_cexp.c b/ports/sysdeps/m68k/m680x0/fpu/s_cexp.c deleted file mode 100644 index 79a2ca49c3..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_cexp.c +++ /dev/null @@ -1,136 +0,0 @@ -/* Complex exponential function. m68k fpu version - Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <float.h> -#include <complex.h> -#include <math.h> -#include "mathimpl.h" - -#ifndef SUFF -#define SUFF -#endif -#ifndef float_type -#define float_type double -#endif - -#define CONCATX(a,b) __CONCAT(a,b) -#define s(name) CONCATX(name,SUFF) -#define m81(func) __m81_u(s(func)) - -__complex__ float_type -s(__cexp) (__complex__ float_type x) -{ - __complex__ float_type retval; - unsigned long ix_cond; - - ix_cond = __m81_test (__imag__ x); - - if ((ix_cond & (__M81_COND_NAN|__M81_COND_INF)) == 0) - { - /* Imaginary part is finite. */ - unsigned long rx_cond = __m81_test (__real__ x); - - if ((rx_cond & (__M81_COND_NAN|__M81_COND_INF)) == 0) - { - const int t = (int) ((LDBL_MAX_EXP - 1) * M_LN2l); - long double sin_ix, cos_ix, exp_val; - - __m81_u (__sincosl) (__imag__ x, &sin_ix, &cos_ix); - - if (__real__ x > t) - { - long double exp_t = __m81_u(__ieee754_expl) (t); - __real__ x -= t; - sin_ix *= exp_t; - cos_ix *= exp_t; - if (__real__ x > t) - { - __real__ x -= t; - sin_ix *= exp_t; - cos_ix *= exp_t; - } - } - - exp_val = __m81_u(__ieee754_expl) (__real__ x); - __real__ retval = exp_val * cos_ix; - if (ix_cond & __M81_COND_ZERO) - __imag__ retval = __imag__ x; - else - __imag__ retval = exp_val * sin_ix; - } - else - { - /* Compute the sign of the result. */ - long double remainder, pi_2; - int quadrant; - - if ((rx_cond & (__M81_COND_NAN|__M81_COND_NEG)) == __M81_COND_NEG) - __real__ retval = __imag__ retval = 0.0; - else - __real__ retval = __imag__ retval = __real__ x; - __asm ("fmovecr %#0,%0\n\tfscale%.w %#-1,%0" : "=f" (pi_2)); - __asm ("fmod%.x %2,%0\n\tfmove%.l %/fpsr,%1" - : "=f" (remainder), "=dm" (quadrant) - : "f" (pi_2), "0" (__imag__ x)); - quadrant = (quadrant >> 16) & 0x83; - if (quadrant & 0x80) - quadrant ^= 0x83; - switch (quadrant) - { - default: - break; - case 1: - __real__ retval = -__real__ retval; - break; - case 2: - __real__ retval = -__real__ retval; - case 3: - __imag__ retval = -__imag__ retval; - break; - } - if (ix_cond & __M81_COND_ZERO && (rx_cond & __M81_COND_NAN) == 0) - __imag__ retval = __imag__ x; - } - } - else - { - unsigned long rx_cond = __m81_test (__real__ x); - - if (rx_cond & __M81_COND_INF) - { - /* Real part is infinite. */ - if (rx_cond & __M81_COND_NEG) - { - __real__ retval = __imag__ retval = 0.0; - if (ix_cond & __M81_COND_NEG) - __imag__ retval = -__imag__ retval; - } - else - { - __real__ retval = __real__ x; - __imag__ retval = __imag__ x - __imag__ x; - } - } - else - __real__ retval = __imag__ retval = __imag__ x - __imag__ x; - } - - return retval; -} -weak_alias (s(__cexp), s(cexp)) diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_cexpf.c b/ports/sysdeps/m68k/m680x0/fpu/s_cexpf.c deleted file mode 100644 index 177a360f9b..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_cexpf.c +++ /dev/null @@ -1,3 +0,0 @@ -#define SUFF f -#define float_type float -#include <s_cexp.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_cexpl.c b/ports/sysdeps/m68k/m680x0/fpu/s_cexpl.c deleted file mode 100644 index bbda4ba990..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_cexpl.c +++ /dev/null @@ -1,3 +0,0 @@ -#define SUFF l -#define float_type long double -#include <s_cexp.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_cos.c b/ports/sysdeps/m68k/m680x0/fpu/s_cos.c deleted file mode 100644 index 2f1adf77f5..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_cos.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC cos -#include <s_sin.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_cosf.c b/ports/sysdeps/m68k/m680x0/fpu/s_cosf.c deleted file mode 100644 index b6d6accb4a..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_cosf.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC cosf -#include <s_sinf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_cosl.c b/ports/sysdeps/m68k/m680x0/fpu/s_cosl.c deleted file mode 100644 index eb61521fdd..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_cosl.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC cosl -#include <s_sinl.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_csin.c b/ports/sysdeps/m68k/m680x0/fpu/s_csin.c deleted file mode 100644 index 9400adb094..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_csin.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Complex sine function. m68k fpu version - Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <complex.h> -#include <math.h> -#include "mathimpl.h" - -#ifndef SUFF -#define SUFF -#endif -#ifndef float_type -#define float_type double -#endif - -#define CONCATX(a,b) __CONCAT(a,b) -#define s(name) CONCATX(name,SUFF) -#define m81(func) __m81_u(s(func)) - -__complex__ float_type -s(__csin) (__complex__ float_type x) -{ - __complex__ float_type retval; - unsigned long rx_cond = __m81_test (__real__ x); - - if ((rx_cond & (__M81_COND_INF|__M81_COND_NAN)) == 0) - { - /* Real part is finite. */ - float_type sin_rx, cos_rx; - - __asm ("fsincos%.x %2,%1:%0" : "=f" (sin_rx), "=f" (cos_rx) - : "f" (__real__ x)); - if (rx_cond & __M81_COND_ZERO) - __real__ retval = __real__ x; - else - __real__ retval = sin_rx * m81(__ieee754_cosh) (__imag__ x); - __imag__ retval = cos_rx * m81(__ieee754_sinh) (__imag__ x); - } - else - { - unsigned long ix_cond = __m81_test (__imag__ x); - - __real__ retval = __real__ x - __real__ x; - if (ix_cond & (__M81_COND_ZERO|__M81_COND_INF|__M81_COND_NAN)) - __imag__ retval = __imag__ x; - else - __imag__ retval = __real__ retval; - } - - return retval; -} -weak_alias (s(__csin), s(csin)) diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_csinf.c b/ports/sysdeps/m68k/m680x0/fpu/s_csinf.c deleted file mode 100644 index b760e192c3..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_csinf.c +++ /dev/null @@ -1,3 +0,0 @@ -#define SUFF f -#define float_type float -#include <s_csin.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_csinh.c b/ports/sysdeps/m68k/m680x0/fpu/s_csinh.c deleted file mode 100644 index b5d10e03fd..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_csinh.c +++ /dev/null @@ -1,69 +0,0 @@ -/* Complex sine hyperbole function. m68k fpu version - Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <complex.h> -#include <math.h> -#include "mathimpl.h" - -#ifndef SUFF -#define SUFF -#endif -#ifndef float_type -#define float_type double -#endif - -#define CONCATX(a,b) __CONCAT(a,b) -#define s(name) CONCATX(name,SUFF) -#define m81(func) __m81_u(s(func)) - -__complex__ float_type -s(__csinh) (__complex__ float_type x) -{ - __complex__ float_type retval; - unsigned long ix_cond; - - ix_cond = __m81_test (__imag__ x); - - if ((ix_cond & (__M81_COND_INF|__M81_COND_NAN)) == 0) - { - /* Imaginary part is finite. */ - float_type sin_ix, cos_ix; - - __asm ("fsincos%.x %2,%1:%0" : "=f" (sin_ix), "=f" (cos_ix) - : "f" (__imag__ x)); - __real__ retval = cos_ix * m81(__ieee754_sinh) (__real__ x); - if (ix_cond & __M81_COND_ZERO) - __imag__ retval = __imag__ x; - else - __imag__ retval = sin_ix * m81(__ieee754_cosh) (__real__ x); - } - else - { - unsigned long rx_cond = __m81_test (__real__ x); - - __imag__ retval = __imag__ x - __imag__ x; - if (rx_cond & (__M81_COND_ZERO|__M81_COND_INF|__M81_COND_NAN)) - __real__ retval = __real__ x; - else - __real__ retval = __imag__ retval; - } - - return retval; -} -weak_alias (s(__csinh), s(csinh)) diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_csinhf.c b/ports/sysdeps/m68k/m680x0/fpu/s_csinhf.c deleted file mode 100644 index 2f7a43e6a8..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_csinhf.c +++ /dev/null @@ -1,3 +0,0 @@ -#define SUFF f -#define float_type float -#include <s_csinh.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_csinhl.c b/ports/sysdeps/m68k/m680x0/fpu/s_csinhl.c deleted file mode 100644 index 026a20e7be..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_csinhl.c +++ /dev/null @@ -1,3 +0,0 @@ -#define SUFF l -#define float_type long double -#include <s_csinh.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_csinl.c b/ports/sysdeps/m68k/m680x0/fpu/s_csinl.c deleted file mode 100644 index ea2dad0556..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_csinl.c +++ /dev/null @@ -1,3 +0,0 @@ -#define SUFF l -#define float_type long double -#include <s_csin.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_expm1.c b/ports/sysdeps/m68k/m680x0/fpu/s_expm1.c deleted file mode 100644 index 341cd160b7..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_expm1.c +++ /dev/null @@ -1,41 +0,0 @@ -/* Copyright (C) 2012-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <math.h> -#include <errno.h> -#include "mathimpl.h" - -#ifndef FUNC -# define FUNC expm1 -#endif -#ifndef float_type -# define float_type double -#endif -#ifndef o_threshold -# define o_threshold 7.09782712893383973096e+02 -#endif - -#define CONCATX(a,b) __CONCAT(a,b) - -float_type -CONCATX(__,FUNC) (float_type x) -{ - if ((__m81_test (x) & __M81_COND_INF) == 0 && isgreater (x, o_threshold)) - __set_errno (ERANGE); - return __m81_u(CONCATX(__, FUNC)) (x); -} -weak_alias (CONCATX(__, FUNC), FUNC) diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_expm1f.c b/ports/sysdeps/m68k/m680x0/fpu/s_expm1f.c deleted file mode 100644 index 2cd8ffcfeb..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_expm1f.c +++ /dev/null @@ -1,4 +0,0 @@ -#define FUNC expm1f -#define float_type float -#define o_threshold 8.8722831726e+01F -#include <s_expm1.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_expm1l.c b/ports/sysdeps/m68k/m680x0/fpu/s_expm1l.c deleted file mode 100644 index a2c80860ba..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_expm1l.c +++ /dev/null @@ -1,6 +0,0 @@ -#define FUNC expm1l -#define float_type long double -/* 400c0000b17217f7d1cf79ab */ -#define o_threshold 1.13565234062941439487914863093465101e+04L -#include <s_expm1.c> -libm_hidden_def (__expm1l) diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_fabs.c b/ports/sysdeps/m68k/m680x0/fpu/s_fabs.c deleted file mode 100644 index 1f0631e2ff..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_fabs.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC fabs -#include <s_atan.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_fabsf.c b/ports/sysdeps/m68k/m680x0/fpu/s_fabsf.c deleted file mode 100644 index 8f9421998a..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_fabsf.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC fabsf -#include <s_atanf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_fabsl.c b/ports/sysdeps/m68k/m680x0/fpu/s_fabsl.c deleted file mode 100644 index 8ac14d5b8c..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_fabsl.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC fabsl -#include <s_atanl.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_finite.c b/ports/sysdeps/m68k/m680x0/fpu/s_finite.c deleted file mode 100644 index dafbd5901d..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_finite.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC finite -#include <s_isinf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_finitef.c b/ports/sysdeps/m68k/m680x0/fpu/s_finitef.c deleted file mode 100644 index b81342e5c6..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_finitef.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC finitef -#include <s_isinff.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_finitel.c b/ports/sysdeps/m68k/m680x0/fpu/s_finitel.c deleted file mode 100644 index bd346a220c..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_finitel.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC finitel -#include <s_isinfl.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_floor.c b/ports/sysdeps/m68k/m680x0/fpu/s_floor.c deleted file mode 100644 index e1219c602a..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_floor.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC floor -#include <s_atan.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_floorf.c b/ports/sysdeps/m68k/m680x0/fpu/s_floorf.c deleted file mode 100644 index f4f9b9a1d8..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_floorf.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC floorf -#include <s_atanf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_floorl.c b/ports/sysdeps/m68k/m680x0/fpu/s_floorl.c deleted file mode 100644 index 2c1ffd7d2c..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_floorl.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC floorl -#include <s_atanl.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_fpclassifyl.c b/ports/sysdeps/m68k/m680x0/fpu/s_fpclassifyl.c deleted file mode 100644 index c28decbba1..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_fpclassifyl.c +++ /dev/null @@ -1,43 +0,0 @@ -/* Return classification value corresponding to argument. m68k version. - Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. - Fixed for m68k by Andreas Schwab <schwab@suse.de>. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <math.h> - -#include <math_private.h> - - -int -__fpclassifyl (long double x) -{ - u_int32_t ex, hx, lx; - int retval = FP_NORMAL; - - GET_LDOUBLE_WORDS (ex, hx, lx, x); - ex &= 0x7fff; - if ((ex | hx | lx) == 0) - retval = FP_ZERO; - else if (ex == 0 && (hx & 0x80000000) == 0) - retval = FP_SUBNORMAL; - else if (ex == 0x7fff) - retval = ((hx & 0x7fffffff) | lx) != 0 ? FP_NAN : FP_INFINITE; - - return retval; -} -libm_hidden_def (__fpclassifyl) diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_frexp.c b/ports/sysdeps/m68k/m680x0/fpu/s_frexp.c deleted file mode 100644 index f061b4f9ad..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_frexp.c +++ /dev/null @@ -1,53 +0,0 @@ -/* Copyright (C) 1996-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <math.h> - -#ifndef FUNC -#define FUNC frexp -#endif -#ifndef float_type -#define float_type double -#endif - -#define __CONCATX(a,b) __CONCAT(a,b) - -float_type -__CONCATX(__,FUNC) (float_type value, int *expptr) -{ - float_type mantissa, exponent; - int iexponent; - unsigned long fpsr; - - __asm ("ftst%.x %1\n" - "fmove%.l %/fpsr, %0" - : "=dm" (fpsr) : "f" (value)); - if (fpsr & (7 << 24)) - { - /* Not finite or zero. */ - *expptr = 0; - return value; - } - __asm ("fgetexp%.x %1, %0" : "=f" (exponent) : "f" (value)); - iexponent = (int) exponent + 1; - *expptr = iexponent; - __asm ("fscale%.l %2, %0" - : "=f" (mantissa) - : "0" (value), "dmi" (-iexponent)); - return mantissa; -} -weak_alias (__CONCATX(__,FUNC), FUNC) diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_frexpf.c b/ports/sysdeps/m68k/m680x0/fpu/s_frexpf.c deleted file mode 100644 index 893b6ad3cf..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_frexpf.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC frexpf -#define float_type float -#include <s_frexp.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_frexpl.c b/ports/sysdeps/m68k/m680x0/fpu/s_frexpl.c deleted file mode 100644 index 7fdfe2cf7d..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_frexpl.c +++ /dev/null @@ -1,58 +0,0 @@ -/* Copyright (C) 2003-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <math.h> - -long double -__frexpl (long double value, int *expptr) -{ - long double mantissa, exponent; - int iexponent; - unsigned long fpsr; - - __asm ("ftst%.x %1\n" - "fmove%.l %/fpsr, %0" - : "=dm" (fpsr) : "f" (value)); - if (fpsr & (7 << 24)) - { - /* Not finite or zero. */ - *expptr = 0; - return value; - } - __asm ("fgetexp%.x %1, %0" : "=f" (exponent) : "f" (value)); - iexponent = (int) exponent + 1; - *expptr = iexponent; - /* Unnormalized numbers must be handled specially, otherwise fscale - results in overflow. */ - if (iexponent <= -16384) - { - value *= 0x1p16383L; - iexponent += 16383; - } - else if (iexponent >= 16384) - { - value *= 0x1p-16383L; - iexponent -= 16383; - } - - __asm ("fscale%.l %2, %0" - : "=f" (mantissa) - : "0" (value), "dmi" (-iexponent)); - return mantissa; -} - -weak_alias (__frexpl, frexpl) diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_isinf.c b/ports/sysdeps/m68k/m680x0/fpu/s_isinf.c deleted file mode 100644 index 43952f7a42..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_isinf.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright (C) 1996-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <math.h> - -#ifndef FUNC -#define FUNC isinf -#endif -#ifndef float_type -#define float_type double -#endif - -#define __CONCATX(a,b) __CONCAT(a,b) - -int -__CONCATX(__,FUNC) (x) - float_type x; -{ - return __m81_u(__CONCATX(__,FUNC))(x); -} - -#define hidden_defx(a) hidden_def(a) -hidden_defx(__CONCATX(__,FUNC)) -weak_alias (__CONCATX(__,FUNC), FUNC) diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_isinff.c b/ports/sysdeps/m68k/m680x0/fpu/s_isinff.c deleted file mode 100644 index ebf4f2ae96..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_isinff.c +++ /dev/null @@ -1,5 +0,0 @@ -#ifndef FUNC -#define FUNC isinff -#endif -#define float_type float -#include <s_isinf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_isinfl.c b/ports/sysdeps/m68k/m680x0/fpu/s_isinfl.c deleted file mode 100644 index 963725ad77..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_isinfl.c +++ /dev/null @@ -1,5 +0,0 @@ -#ifndef FUNC -#define FUNC isinfl -#endif -#define float_type long double -#include <s_isinf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_isnan.c b/ports/sysdeps/m68k/m680x0/fpu/s_isnan.c deleted file mode 100644 index 151d6dc6b4..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_isnan.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC isnan -#include <s_isinf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_isnanf.c b/ports/sysdeps/m68k/m680x0/fpu/s_isnanf.c deleted file mode 100644 index 667bca7235..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_isnanf.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC isnanf -#include <s_isinff.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_isnanl.c b/ports/sysdeps/m68k/m680x0/fpu/s_isnanl.c deleted file mode 100644 index bbacb64f11..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_isnanl.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC isnanl -#include <s_isinfl.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_llrint.c b/ports/sysdeps/m68k/m680x0/fpu/s_llrint.c deleted file mode 100644 index 0734ac32ea..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_llrint.c +++ /dev/null @@ -1,75 +0,0 @@ -/* Round argument to nearest integral value according to current rounding - direction. - Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <math.h> -#include <math_private.h> -#include "mathimpl.h" - -long long int -__llrint (double x) -{ - int32_t e; - u_int32_t h, l, s; - long long int result; - - x = __m81_u(__rint) (x); - - /* We could use __fixxfdi from libgcc, but here we can take advantage of - the known floating point format. */ - EXTRACT_WORDS (h, l, x); - - e = ((h >> 20) & 0x7ff) - 0x3ff; - if (e < 0) - return 0; - s = h; - h &= 0xfffff; - h |= 0x100000; - - if (e < 63) - { - if (e > 52) - { - h <<= e - 52; - h |= l >> (84 - e); - l <<= e - 52; - result = ((long long int) h << 32) | l; - } - else if (e > 20) - { - l >>= 52 - e; - l |= h << (e - 20); - h >>= 52 - e; - result = ((long long int) h << 32) | l; - } - else - result = h >> (20 - e); - if (s & 0x80000000) - result = -result; - } - else - /* The number is too large or not finite. The standard leaves it - undefined what to return when the number is too large to fit in a - `long long int'. */ - result = -1LL; - - return result; -} - -weak_alias (__llrint, llrint) diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_llrintf.c b/ports/sysdeps/m68k/m680x0/fpu/s_llrintf.c deleted file mode 100644 index 4cd80308bd..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_llrintf.c +++ /dev/null @@ -1,65 +0,0 @@ -/* Round argument to nearest integral value according to current rounding - direction. - Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <math.h> -#include <math_private.h> -#include "mathimpl.h" - -long long int -__llrintf (float x) -{ - int32_t e; - u_int32_t i, s; - long long int result; - - x = __m81_u(__rintf) (x); - - GET_FLOAT_WORD (i, x); - - e = ((i >> 23) & 0xff) - 0x7f; - if (e < 0) - return 0; - s = i; - i &= 0x7fffff; - i |= 0x800000; - - if (e < 63) - { - if (e > 55) - result = (long long int) (i << (e - 55)) << 32; - else if (e > 31) - result = (((long long int) (i >> (55 - e)) << 32) | (i << (e - 23))); - else if (e > 23) - result = i << (e - 23); - else - result = i >> (23 - e); - if (s & 0x80000000) - result = -result; - } - else - /* The number is too large or not finite. The standard leaves it - undefined what to return when the number is too large to fit in a - `long long int'. */ - result = -1LL; - - return result; -} - -weak_alias (__llrintf, llrintf) diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_llrintl.c b/ports/sysdeps/m68k/m680x0/fpu/s_llrintl.c deleted file mode 100644 index 9bd9bf40e0..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_llrintl.c +++ /dev/null @@ -1,64 +0,0 @@ -/* Round argument to nearest integral value according to current rounding - direction. - Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <math.h> -#include <math_private.h> -#include "mathimpl.h" - -long long int -__llrintl (long double x) -{ - int32_t e, s; - u_int32_t h, l; - long long int result; - - x = __m81_u(__rintl) (x); - - GET_LDOUBLE_WORDS (e, h, l, x); - - s = e; - e = (e & 0x7fff) - 0x3fff; - if (e < 0) - return 0; - - if (e < 63) - { - if (e > 31) - { - l >>= 63 - e; - l |= h << (e - 31); - h >>= 63 - e; - result = ((long long int) h << 32) | l; - } - else - result = h >> (31 - e); - if (s & 0x8000) - result = -result; - } - else - /* The number is too large or not finite. The standard leaves it - undefined what to return when the number is too large to fit in a - `long long int'. */ - result = -1LL; - - return result; -} - -weak_alias (__llrintl, llrintl) diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_log1p.c b/ports/sysdeps/m68k/m680x0/fpu/s_log1p.c deleted file mode 100644 index 1840ced137..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_log1p.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC log1p -#include <s_atan.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_log1pf.c b/ports/sysdeps/m68k/m680x0/fpu/s_log1pf.c deleted file mode 100644 index cb7235a071..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_log1pf.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC log1pf -#include <s_atanf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_log1pl.c b/ports/sysdeps/m68k/m680x0/fpu/s_log1pl.c deleted file mode 100644 index 8dbef89095..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_log1pl.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC log1pl -#include <s_atanl.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_logbl.c b/ports/sysdeps/m68k/m680x0/fpu/s_logbl.c deleted file mode 100644 index 2586622bf7..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_logbl.c +++ /dev/null @@ -1,49 +0,0 @@ -/* s_logbl.c -- long double version of s_logb.c. - * Conversion to long double by Ulrich Drepper, - * Cygnus Support, drepper@cygnus.com. - */ - -/* - * ==================================================== - * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. - * - * Developed at SunPro, a Sun Microsystems, Inc. business. - * Permission to use, copy, modify, and distribute this - * software is freely granted, provided that this notice - * is preserved. - * ==================================================== - */ - -/* - * long double logbl(x) - * IEEE 754 logb. Included to pass IEEE test suite. Not recommend. - * Use ilogb instead. - */ - -#include <math.h> -#include <math_private.h> - -long double -__logbl (long double x) -{ - int32_t es, lx, ix; - - GET_LDOUBLE_WORDS (es, ix, lx, x); - es &= 0x7fff; /* exponent */ - if ((es | ix | lx) == 0) - return -1.0 / fabsl (x); - if (es == 0x7fff) - return x * x; - if (es == 0) /* IEEE 754 logb */ - { - /* POSIX specifies that denormal number is treated as - though it were normalized. */ - if (ix == 0) - es = -(__builtin_clz (lx) + 32); - else - es = -__builtin_clz (ix); - } - return (long double) (es - 16383); -} - -weak_alias (__logbl, logbl) diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_lrint.c b/ports/sysdeps/m68k/m680x0/fpu/s_lrint.c deleted file mode 100644 index 02cb621d6a..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_lrint.c +++ /dev/null @@ -1,37 +0,0 @@ -/* Round argument to nearest integral value according to current rounding - direction. - Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <math.h> - -#ifndef suffix -#define suffix /*empty*/ -#endif -#ifndef float_type -#define float_type double -#endif - -#define CONCATX(a,b) __CONCAT(a,b) - -long int -CONCATX(__lrint,suffix) (float_type x) -{ - return __m81_u(CONCATX(__lrint,suffix)) (x); -} -weak_alias (CONCATX(__lrint,suffix), CONCATX(lrint,suffix)) diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_lrintf.c b/ports/sysdeps/m68k/m680x0/fpu/s_lrintf.c deleted file mode 100644 index 44924cb82f..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_lrintf.c +++ /dev/null @@ -1,3 +0,0 @@ -#define suffix f -#define float_type float -#include <s_lrint.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_lrintl.c b/ports/sysdeps/m68k/m680x0/fpu/s_lrintl.c deleted file mode 100644 index cd0bd23b8a..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_lrintl.c +++ /dev/null @@ -1,3 +0,0 @@ -#define suffix l -#define float_type long double -#include <s_lrint.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_modf.c b/ports/sysdeps/m68k/m680x0/fpu/s_modf.c deleted file mode 100644 index c9360c0ec4..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_modf.c +++ /dev/null @@ -1,53 +0,0 @@ -/* Copyright (C) 1996-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <math.h> -#include "mathimpl.h" - -#ifndef SUFF -#define SUFF -#endif -#ifndef float_type -#define float_type double -#endif - -#define CONCATX(a,b) __CONCAT(a,b) -#define s(name) CONCATX(name,SUFF) -#define m81(func) __m81_u(s(func)) - -float_type -s(__modf) (float_type x, float_type *iptr) -{ - float_type x_int, result; - unsigned long x_cond; - - __asm ("fintrz%.x %1, %0" : "=f" (x_int) : "f" (x)); - *iptr = x_int; - x_cond = __m81_test (x); - if (x_cond & __M81_COND_INF) - { - result = 0; - if (x_cond & __M81_COND_NEG) - result = -result; - } - else if (x_cond & __M81_COND_ZERO) - result = x; - else - result = x - x_int; - return result; -} -weak_alias (s(__modf), s(modf)) diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_modff.c b/ports/sysdeps/m68k/m680x0/fpu/s_modff.c deleted file mode 100644 index 0c44d7c0ab..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_modff.c +++ /dev/null @@ -1,3 +0,0 @@ -#define SUFF f -#define float_type float -#include <s_modf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_modfl.c b/ports/sysdeps/m68k/m680x0/fpu/s_modfl.c deleted file mode 100644 index c7075b3ba9..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_modfl.c +++ /dev/null @@ -1,3 +0,0 @@ -#define SUFF l -#define float_type long double -#include <s_modf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_nearbyint.c b/ports/sysdeps/m68k/m680x0/fpu/s_nearbyint.c deleted file mode 100644 index b87f5e2160..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_nearbyint.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC nearbyint -#include <s_atan.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_nearbyintf.c b/ports/sysdeps/m68k/m680x0/fpu/s_nearbyintf.c deleted file mode 100644 index 70d08ab44c..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_nearbyintf.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC nearbyintf -#include <s_atanf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_nearbyintl.c b/ports/sysdeps/m68k/m680x0/fpu/s_nearbyintl.c deleted file mode 100644 index 230cd7784c..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_nearbyintl.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC nearbyintl -#include <s_atanl.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_nextafterl.c b/ports/sysdeps/m68k/m680x0/fpu/s_nextafterl.c deleted file mode 100644 index 03c136bb08..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_nextafterl.c +++ /dev/null @@ -1,102 +0,0 @@ -/* s_nextafterl.c -- long double version of s_nextafter.c. - * Conversion to long double by Ulrich Drepper, - * Cygnus Support, drepper@cygnus.com. - * Fixed for m68k by Andreas Schwab <schwab@suse.de>. - */ - -/* - * ==================================================== - * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. - * - * Developed at SunPro, a Sun Microsystems, Inc. business. - * Permission to use, copy, modify, and distribute this - * software is freely granted, provided that this notice - * is preserved. - * ==================================================== - */ - -#if defined(LIBM_SCCS) && !defined(lint) -static char rcsid[] = "$NetBSD: $"; -#endif - -/* IEEE functions - * nextafterl(x,y) - * return the next machine floating-point number of x in the - * direction toward y. - * Special cases: - */ - -#include <math.h> -#include <math_private.h> - -long double __nextafterl(long double x, long double y) -{ - int32_t ix,iy,esx,esy; - u_int32_t hx,hy,lx,ly; - - GET_LDOUBLE_WORDS(esx,hx,lx,x); - GET_LDOUBLE_WORDS(esy,hy,ly,y); - ix = esx&0x7fff; /* |x| */ - iy = esy&0x7fff; /* |y| */ - - if(((ix==0x7fff)&&((hx&0x7fffffff)|lx)!=0) || /* x is nan */ - ((iy==0x7fff)&&((hy&0x7fffffff)|ly)!=0)) /* y is nan */ - return x+y; - if(x==y) return y; /* x=y, return y */ - if((ix|hx|lx)==0) { /* x == 0 */ - SET_LDOUBLE_WORDS(x,esy&0x8000,0,1);/* return +-minsubnormal */ - y = x*x; - math_force_eval (y); /* raise underflow flag */ - return x; - } - if(esx>=0) { /* x > 0 */ - if(esx>esy||((esx==esy) && (hx>hy||((hx==hy)&&(lx>ly))))) { - /* x > y, x -= ulp */ - if(lx==0) { - if (ix != 0 && hx == 0x80000000) hx = 0; - if (hx==0) esx -= 1; - hx -= 1; - } - lx -= 1; - } else { /* x < y, x += ulp */ - lx += 1; - if(lx==0) { - hx += 1; - if (hx==0) { - hx = 0x80000000; - esx += 1; - } - } - } - } else { /* x < 0 */ - if(esy>=0||esx>esy||((esx==esy) && (hx>hy||((hx==hy)&&(lx>ly))))){ - /* x < y, x -= ulp */ - if(lx==0) { - if (ix != 0 && hx == 0x80000000) hx = 0; - if (hx==0) esx -= 1; - hx -= 1; - } - lx -= 1; - } else { /* x > y, x += ulp */ - lx += 1; - if(lx==0) { - hx += 1; - if (hx==0) { - hx = 0x80000000; - esx += 1; - } - } - } - } - esy = esx&0x7fff; - if(esy==0x7fff) return x+x; /* overflow */ - if(esy==0 && (hx & 0x80000000) == 0) { /* underflow */ - y = x*x; - math_force_eval (y); /* raise underflow flag */ - } - SET_LDOUBLE_WORDS(x,esx,hx,lx); - return x; -} -weak_alias (__nextafterl, nextafterl) -strong_alias (__nextafterl, __nexttowardl) -weak_alias (__nextafterl, nexttowardl) diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_remquo.c b/ports/sysdeps/m68k/m680x0/fpu/s_remquo.c deleted file mode 100644 index 95211b8e01..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_remquo.c +++ /dev/null @@ -1,46 +0,0 @@ -/* Compute remainder and a congruent to the quotient. m68k fpu version - Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <math.h> - -#ifndef SUFF -#define SUFF -#endif -#ifndef float_type -#define float_type double -#endif - -#define CONCATX(a,b) __CONCAT(a,b) -#define s(name) CONCATX(name,SUFF) - -float_type -s(__remquo) (float_type x, float_type y, int *quo) -{ - float_type result; - int cquo, fpsr; - - __asm ("frem%.x %2,%0\n\tfmove%.l %/fpsr,%1" - : "=f" (result), "=dm" (fpsr) : "f" (y), "0" (x)); - cquo = (fpsr >> 16) & 0x7f; - if (fpsr & (1 << 23)) - cquo = -cquo; - *quo = cquo; - return result; -} -weak_alias (s(__remquo), s(remquo)) diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_remquof.c b/ports/sysdeps/m68k/m680x0/fpu/s_remquof.c deleted file mode 100644 index 8a292fc26c..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_remquof.c +++ /dev/null @@ -1,3 +0,0 @@ -#define SUFF f -#define float_type float -#include <s_remquo.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_remquol.c b/ports/sysdeps/m68k/m680x0/fpu/s_remquol.c deleted file mode 100644 index d236cfd1f9..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_remquol.c +++ /dev/null @@ -1,3 +0,0 @@ -#define SUFF l -#define float_type long double -#include <s_remquo.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_rint.c b/ports/sysdeps/m68k/m680x0/fpu/s_rint.c deleted file mode 100644 index f0f18c7346..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_rint.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC rint -#include <s_atan.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_rintf.c b/ports/sysdeps/m68k/m680x0/fpu/s_rintf.c deleted file mode 100644 index 4e00cab0fb..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_rintf.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC rintf -#include <s_atanf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_rintl.c b/ports/sysdeps/m68k/m680x0/fpu/s_rintl.c deleted file mode 100644 index 305667b3a1..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_rintl.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC rintl -#include <s_atanl.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_scalbln.c b/ports/sysdeps/m68k/m680x0/fpu/s_scalbln.c deleted file mode 100644 index 1009713fbc..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_scalbln.c +++ /dev/null @@ -1,2 +0,0 @@ -/* Nothing to do. This function is the same as scalbn. So we define an - alias. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_scalblnf.c b/ports/sysdeps/m68k/m680x0/fpu/s_scalblnf.c deleted file mode 100644 index 5e558c3540..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_scalblnf.c +++ /dev/null @@ -1,2 +0,0 @@ -/* Nothing to do. This function is the same as scalbnf. So we define an - alias. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_scalblnl.c b/ports/sysdeps/m68k/m680x0/fpu/s_scalblnl.c deleted file mode 100644 index cda2ec11c8..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_scalblnl.c +++ /dev/null @@ -1,2 +0,0 @@ -/* Nothing to do. This function is the same as scalbnl. So we define an - alias. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_scalbn.c b/ports/sysdeps/m68k/m680x0/fpu/s_scalbn.c deleted file mode 100644 index c56a9ffe94..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_scalbn.c +++ /dev/null @@ -1,50 +0,0 @@ -/* Copyright (C) 1996-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#define scalbln __no_scalbln_decl -#define scalblnf __no_scalblnf_decl -#define scalblnl __no_scalblnl_decl -#define __scalbln __no__scalbln_decl -#define __scalblnf __no__scalblnf_decl -#define __scalblnl __no__scalblnl_decl -#include <math.h> -#undef scalbln -#undef scalblnf -#undef scalblnl -#undef __scalbln -#undef __scalblnf -#undef __scalblnl - -#ifndef suffix -#define suffix /*empty*/ -#endif -#ifndef float_type -#define float_type double -#endif - -#define __CONCATX(a,b) __CONCAT(a,b) - -float_type -__CONCATX(__scalbn,suffix) (x, exp) - float_type x; - int exp; -{ - return __m81_u(__CONCATX(__scalbn,suffix))(x, exp); -} -weak_alias (__CONCATX(__scalbn,suffix), __CONCATX(scalbn,suffix)) -strong_alias (__CONCATX(__scalbn,suffix), __CONCATX(__scalbln,suffix)) -weak_alias (__CONCATX(__scalbn,suffix), __CONCATX(scalbln,suffix)) diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_scalbnf.c b/ports/sysdeps/m68k/m680x0/fpu/s_scalbnf.c deleted file mode 100644 index 547971836a..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_scalbnf.c +++ /dev/null @@ -1,3 +0,0 @@ -#define suffix f -#define float_type float -#include <s_scalbn.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_scalbnl.c b/ports/sysdeps/m68k/m680x0/fpu/s_scalbnl.c deleted file mode 100644 index 874bafb04b..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_scalbnl.c +++ /dev/null @@ -1,3 +0,0 @@ -#define suffix l -#define float_type long double -#include <s_scalbn.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_significand.c b/ports/sysdeps/m68k/m680x0/fpu/s_significand.c deleted file mode 100644 index 34d4ea3d14..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_significand.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC significand -#include <s_atan.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_significandf.c b/ports/sysdeps/m68k/m680x0/fpu/s_significandf.c deleted file mode 100644 index 4e769ca317..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_significandf.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC significandf -#include <s_atanf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_significandl.c b/ports/sysdeps/m68k/m680x0/fpu/s_significandl.c deleted file mode 100644 index 8c6fc7e610..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_significandl.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC significandl -#include <s_atanl.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_sin.c b/ports/sysdeps/m68k/m680x0/fpu/s_sin.c deleted file mode 100644 index 5768efc8f6..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_sin.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright (C) 2012-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <math.h> -#include <errno.h> -#include "mathimpl.h" - -#ifndef FUNC -# define FUNC sin -#endif -#ifndef float_type -# define float_type double -#endif - -#define CONCATX(a,b) __CONCAT(a,b) - -float_type -CONCATX(__,FUNC) (float_type x) -{ - if (__m81_test (x) & __M81_COND_INF) - __set_errno (EDOM); - return __m81_u(CONCATX(__, FUNC)) (x); -} -weak_alias (CONCATX(__, FUNC), FUNC) diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_sincos.c b/ports/sysdeps/m68k/m680x0/fpu/s_sincos.c deleted file mode 100644 index 68c2327fd9..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_sincos.c +++ /dev/null @@ -1,35 +0,0 @@ -/* Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <math.h> - -#ifndef FUNC -#define FUNC sincos -#endif -#ifndef float_type -#define float_type double -#endif - -#define CONCATX(a,b) __CONCAT(a,b) - -void -CONCATX(__,FUNC) (x, sinx, cosx) - float_type x, *sinx, *cosx; -{ - __m81_u(CONCATX(__,FUNC))(x, sinx, cosx); -} -weak_alias (CONCATX(__,FUNC), FUNC) diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_sincosf.c b/ports/sysdeps/m68k/m680x0/fpu/s_sincosf.c deleted file mode 100644 index 7ee2ec6600..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_sincosf.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC sincosf -#define float_type float -#include <s_sincos.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_sincosl.c b/ports/sysdeps/m68k/m680x0/fpu/s_sincosl.c deleted file mode 100644 index f998cc0977..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_sincosl.c +++ /dev/null @@ -1,3 +0,0 @@ -#define FUNC sincosl -#define float_type long double -#include <s_sincos.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_sinf.c b/ports/sysdeps/m68k/m680x0/fpu/s_sinf.c deleted file mode 100644 index 304f4f76f6..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_sinf.c +++ /dev/null @@ -1,5 +0,0 @@ -#ifndef FUNC -# define FUNC sinf -#endif -#define float_type float -#include <s_sin.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_sinl.c b/ports/sysdeps/m68k/m680x0/fpu/s_sinl.c deleted file mode 100644 index 31dac0bee7..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_sinl.c +++ /dev/null @@ -1,5 +0,0 @@ -#ifndef FUNC -# define FUNC sinl -#endif -#define float_type long double -#include <s_sin.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_tan.c b/ports/sysdeps/m68k/m680x0/fpu/s_tan.c deleted file mode 100644 index dfbbbb2270..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_tan.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC tan -#include <s_sin.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_tanf.c b/ports/sysdeps/m68k/m680x0/fpu/s_tanf.c deleted file mode 100644 index 9ae66ddbf3..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_tanf.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC tanf -#include <s_sinf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_tanh.c b/ports/sysdeps/m68k/m680x0/fpu/s_tanh.c deleted file mode 100644 index ac2e7dbb79..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_tanh.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC tanh -#include <s_atan.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_tanhf.c b/ports/sysdeps/m68k/m680x0/fpu/s_tanhf.c deleted file mode 100644 index 1addaae4ff..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_tanhf.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC tanhf -#include <s_atanf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_tanhl.c b/ports/sysdeps/m68k/m680x0/fpu/s_tanhl.c deleted file mode 100644 index 6e997911f2..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_tanhl.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC tanhl -#include <s_atanl.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_tanl.c b/ports/sysdeps/m68k/m680x0/fpu/s_tanl.c deleted file mode 100644 index 27daf8f29b..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_tanl.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC tanl -#include <s_sinl.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_trunc.c b/ports/sysdeps/m68k/m680x0/fpu/s_trunc.c deleted file mode 100644 index 96f29a776c..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_trunc.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC trunc -#include <s_atan.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_truncf.c b/ports/sysdeps/m68k/m680x0/fpu/s_truncf.c deleted file mode 100644 index 44dca748ca..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_truncf.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC truncf -#include <s_atanf.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_truncl.c b/ports/sysdeps/m68k/m680x0/fpu/s_truncl.c deleted file mode 100644 index 8d35777aed..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/s_truncl.c +++ /dev/null @@ -1,2 +0,0 @@ -#define FUNC truncl -#include <s_atanl.c> diff --git a/ports/sysdeps/m68k/m680x0/fpu/sincos32.c b/ports/sysdeps/m68k/m680x0/fpu/sincos32.c deleted file mode 100644 index 1cc8931700..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/sincos32.c +++ /dev/null @@ -1 +0,0 @@ -/* Not needed. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/sincostab.c b/ports/sysdeps/m68k/m680x0/fpu/sincostab.c deleted file mode 100644 index 1cc8931700..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/sincostab.c +++ /dev/null @@ -1 +0,0 @@ -/* Not needed. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/slowexp.c b/ports/sysdeps/m68k/m680x0/fpu/slowexp.c deleted file mode 100644 index 1cc8931700..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/slowexp.c +++ /dev/null @@ -1 +0,0 @@ -/* Not needed. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/slowpow.c b/ports/sysdeps/m68k/m680x0/fpu/slowpow.c deleted file mode 100644 index 1cc8931700..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/slowpow.c +++ /dev/null @@ -1 +0,0 @@ -/* Not needed. */ diff --git a/ports/sysdeps/m68k/m680x0/fpu/t_exp.c b/ports/sysdeps/m68k/m680x0/fpu/t_exp.c deleted file mode 100644 index fd37963b05..0000000000 --- a/ports/sysdeps/m68k/m680x0/fpu/t_exp.c +++ /dev/null @@ -1 +0,0 @@ -/* Empty. Not needed. */ diff --git a/ports/sysdeps/m68k/m680x0/lshift.S b/ports/sysdeps/m68k/m680x0/lshift.S deleted file mode 100644 index f7724f4514..0000000000 --- a/ports/sysdeps/m68k/m680x0/lshift.S +++ /dev/null @@ -1,168 +0,0 @@ -/* mc68020 __mpn_lshift -- Shift left a low-level natural-number integer. - -Copyright (C) 1996-2014 Free Software Foundation, Inc. - -This file is part of the GNU MP Library. - -The GNU MP Library is free software; you can redistribute it and/or modify -it under the terms of the GNU Lesser General Public License as published by -the Free Software Foundation; either version 2.1 of the License, or (at your -option) any later version. - -The GNU MP Library is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public -License for more details. - -You should have received a copy of the GNU Lesser General Public License -along with the GNU MP Library. If not, see <http://www.gnu.org/licenses/>. */ - -/* - INPUT PARAMETERS - res_ptr (sp + 4) - s_ptr (sp + 8) - s_size (sp + 16) - cnt (sp + 12) -*/ - -#include "sysdep.h" -#include "asm-syntax.h" - -#define res_ptr a1 -#define s_ptr a0 -#define s_size d6 -#define cnt d4 - - TEXT -ENTRY(__mpn_lshift) - -/* Save used registers on the stack. */ - moveml R(d2)-R(d6)/R(a2),MEM_PREDEC(sp) - cfi_adjust_cfa_offset (6*4) - cfi_rel_offset (R(d2), 0) - cfi_rel_offset (R(d3), 4) - cfi_rel_offset (R(d4), 8) - cfi_rel_offset (R(d5), 12) - cfi_rel_offset (R(d6), 16) - cfi_rel_offset (R(a2), 20) - -/* Copy the arguments to registers. */ - movel MEM_DISP(sp,28),R(res_ptr) - movel MEM_DISP(sp,32),R(s_ptr) - movel MEM_DISP(sp,36),R(s_size) - movel MEM_DISP(sp,40),R(cnt) - - moveql #1,R(d5) - cmpl R(d5),R(cnt) - bne L(Lnormal) - cmpl R(s_ptr),R(res_ptr) - bls L(Lspecial) /* jump if s_ptr >= res_ptr */ -#if (defined (__mc68020__) || defined (__NeXT__) || defined(mc68020)) - lea MEM_INDX1(s_ptr,s_size,l,4),R(a2) -#else /* not mc68020 */ - movel R(s_size),R(d0) - asll #2,R(d0) - lea MEM_INDX(s_ptr,d0,l),R(a2) -#endif - cmpl R(res_ptr),R(a2) - bls L(Lspecial) /* jump if res_ptr >= s_ptr + s_size */ - -L(Lnormal:) - moveql #32,R(d5) - subl R(cnt),R(d5) - -#if (defined (__mc68020__) || defined (__NeXT__) || defined(mc68020)) - lea MEM_INDX1(s_ptr,s_size,l,4),R(s_ptr) - lea MEM_INDX1(res_ptr,s_size,l,4),R(res_ptr) -#else /* not mc68000 */ - movel R(s_size),R(d0) - asll #2,R(d0) - addl R(s_size),R(s_ptr) - addl R(s_size),R(res_ptr) -#endif - movel MEM_PREDEC(s_ptr),R(d2) - movel R(d2),R(d0) - lsrl R(d5),R(d0) /* compute carry limb */ - - lsll R(cnt),R(d2) - movel R(d2),R(d1) - subql #1,R(s_size) - beq L(Lend) - lsrl #1,R(s_size) - bcs L(L1) - subql #1,R(s_size) - -L(Loop:) - movel MEM_PREDEC(s_ptr),R(d2) - movel R(d2),R(d3) - lsrl R(d5),R(d3) - orl R(d3),R(d1) - movel R(d1),MEM_PREDEC(res_ptr) - lsll R(cnt),R(d2) -L(L1:) - movel MEM_PREDEC(s_ptr),R(d1) - movel R(d1),R(d3) - lsrl R(d5),R(d3) - orl R(d3),R(d2) - movel R(d2),MEM_PREDEC(res_ptr) - lsll R(cnt),R(d1) - - dbf R(s_size),L(Loop) - subl #0x10000,R(s_size) - bcc L(Loop) - -L(Lend:) - movel R(d1),MEM_PREDEC(res_ptr) /* store least significant limb */ - -/* Restore used registers from stack frame. */ - moveml MEM_POSTINC(sp),R(d2)-R(d6)/R(a2) - cfi_remember_state - cfi_adjust_cfa_offset (-6*4) - cfi_restore (R(d2)) - cfi_restore (R(d3)) - cfi_restore (R(d4)) - cfi_restore (R(d5)) - cfi_restore (R(d6)) - cfi_restore (R(a2)) - rts - -/* We loop from least significant end of the arrays, which is only - permissible if the source and destination don't overlap, since the - function is documented to work for overlapping source and destination. */ - - cfi_restore_state -L(Lspecial:) - clrl R(d0) /* initialize carry */ - eorw #1,R(s_size) - lsrl #1,R(s_size) - bcc L(LL1) - subql #1,R(s_size) - -L(LLoop:) - movel MEM_POSTINC(s_ptr),R(d2) - addxl R(d2),R(d2) - movel R(d2),MEM_POSTINC(res_ptr) -L(LL1:) - movel MEM_POSTINC(s_ptr),R(d2) - addxl R(d2),R(d2) - movel R(d2),MEM_POSTINC(res_ptr) - - dbf R(s_size),L(LLoop) - addxl R(d0),R(d0) /* save cy in lsb */ - subl #0x10000,R(s_size) - bcs L(LLend) - lsrl #1,R(d0) /* restore cy */ - bra L(LLoop) - -L(LLend:) -/* Restore used registers from stack frame. */ - moveml MEM_POSTINC(sp),R(d2)-R(d6)/R(a2) - cfi_adjust_cfa_offset (-6*4) - cfi_restore (R(d2)) - cfi_restore (R(d3)) - cfi_restore (R(d4)) - cfi_restore (R(d5)) - cfi_restore (R(d6)) - cfi_restore (R(a2)) - rts -END(__mpn_lshift) diff --git a/ports/sysdeps/m68k/m680x0/m68020/Makefile b/ports/sysdeps/m68k/m680x0/m68020/Makefile deleted file mode 100644 index b17635467d..0000000000 --- a/ports/sysdeps/m68k/m680x0/m68020/Makefile +++ /dev/null @@ -1,3 +0,0 @@ -ifeq ($(subdir),db2) -CPPFLAGS += -DHAVE_SPINLOCKS=1 -DHAVE_ASSEM_MC68020_GCC=1 -endif diff --git a/ports/sysdeps/m68k/m680x0/m68020/addmul_1.S b/ports/sysdeps/m68k/m680x0/m68020/addmul_1.S deleted file mode 100644 index 5629202104..0000000000 --- a/ports/sysdeps/m68k/m680x0/m68020/addmul_1.S +++ /dev/null @@ -1,88 +0,0 @@ -/* mc68020 __mpn_addmul_1 -- Multiply a limb vector with a limb and add - the result to a second limb vector. - -Copyright (C) 1992-2014 Free Software Foundation, Inc. - -This file is part of the GNU MP Library. - -The GNU MP Library is free software; you can redistribute it and/or modify -it under the terms of the GNU Lesser General Public License as published by -the Free Software Foundation; either version 2.1 of the License, or (at your -option) any later version. - -The GNU MP Library is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public -License for more details. - -You should have received a copy of the GNU Lesser General Public License -along with the GNU MP Library. If not, see <http://www.gnu.org/licenses/>. */ - -/* - INPUT PARAMETERS - res_ptr (sp + 4) - s1_ptr (sp + 8) - s1_size (sp + 12) - s2_limb (sp + 16) -*/ - -#include "sysdep.h" -#include "asm-syntax.h" - - TEXT -ENTRY(__mpn_addmul_1) - -#define res_ptr a0 -#define s1_ptr a1 -#define s1_size d2 -#define s2_limb d4 - -/* Save used registers on the stack. */ - moveml R(d2)-R(d5),MEM_PREDEC(sp) - cfi_adjust_cfa_offset (4*4) - cfi_rel_offset (R(d2), 0) - cfi_rel_offset (R(d3), 4) - cfi_rel_offset (R(d4), 8) - cfi_rel_offset (R(d5), 12) - -/* Copy the arguments to registers. Better use movem? */ - movel MEM_DISP(sp,20),R(res_ptr) - movel MEM_DISP(sp,24),R(s1_ptr) - movel MEM_DISP(sp,28),R(s1_size) - movel MEM_DISP(sp,32),R(s2_limb) - - eorw #1,R(s1_size) - clrl R(d1) - clrl R(d5) - lsrl #1,R(s1_size) - bcc L(L1) - subql #1,R(s1_size) - subl R(d0),R(d0) /* (d0,cy) <= (0,0) */ - -L(Loop:) - movel MEM_POSTINC(s1_ptr),R(d3) - mulul R(s2_limb),R(d1):R(d3) - addxl R(d0),R(d3) - addxl R(d5),R(d1) - addl R(d3),MEM_POSTINC(res_ptr) -L(L1:) movel MEM_POSTINC(s1_ptr),R(d3) - mulul R(s2_limb),R(d0):R(d3) - addxl R(d1),R(d3) - addxl R(d5),R(d0) - addl R(d3),MEM_POSTINC(res_ptr) - - dbf R(s1_size),L(Loop) - addxl R(d5),R(d0) - subl #0x10000,R(s1_size) - bcc L(Loop) - -/* Restore used registers from stack frame. */ - moveml MEM_POSTINC(sp),R(d2)-R(d5) - cfi_adjust_cfa_offset (-4*4) - cfi_restore (R(d2)) - cfi_restore (R(d3)) - cfi_restore (R(d4)) - cfi_restore (R(d5)) - - rts -END(__mpn_addmul_1) diff --git a/ports/sysdeps/m68k/m680x0/m68020/bits/atomic.h b/ports/sysdeps/m68k/m680x0/m68020/bits/atomic.h deleted file mode 100644 index 0f081f169a..0000000000 --- a/ports/sysdeps/m68k/m680x0/m68020/bits/atomic.h +++ /dev/null @@ -1,253 +0,0 @@ -/* Copyright (C) 2003-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@suse.de>, 2003. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <stdint.h> - - -typedef int8_t atomic8_t; -typedef uint8_t uatomic8_t; -typedef int_fast8_t atomic_fast8_t; -typedef uint_fast8_t uatomic_fast8_t; - -typedef int16_t atomic16_t; -typedef uint16_t uatomic16_t; -typedef int_fast16_t atomic_fast16_t; -typedef uint_fast16_t uatomic_fast16_t; - -typedef int32_t atomic32_t; -typedef uint32_t uatomic32_t; -typedef int_fast32_t atomic_fast32_t; -typedef uint_fast32_t uatomic_fast32_t; - -typedef int64_t atomic64_t; -typedef uint64_t uatomic64_t; -typedef int_fast64_t atomic_fast64_t; -typedef uint_fast64_t uatomic_fast64_t; - -typedef intptr_t atomicptr_t; -typedef uintptr_t uatomicptr_t; -typedef intmax_t atomic_max_t; -typedef uintmax_t uatomic_max_t; - -#define __arch_compare_and_exchange_val_8_acq(mem, newval, oldval) \ - ({ __typeof (*(mem)) __ret; \ - __asm __volatile ("cas%.b %0,%2,%1" \ - : "=d" (__ret), "+m" (*(mem)) \ - : "d" (newval), "0" (oldval)); \ - __ret; }) - -#define __arch_compare_and_exchange_val_16_acq(mem, newval, oldval) \ - ({ __typeof (*(mem)) __ret; \ - __asm __volatile ("cas%.w %0,%2,%1" \ - : "=d" (__ret), "+m" (*(mem)) \ - : "d" (newval), "0" (oldval)); \ - __ret; }) - -#define __arch_compare_and_exchange_val_32_acq(mem, newval, oldval) \ - ({ __typeof (*(mem)) __ret; \ - __asm __volatile ("cas%.l %0,%2,%1" \ - : "=d" (__ret), "+m" (*(mem)) \ - : "d" (newval), "0" (oldval)); \ - __ret; }) - -# define __arch_compare_and_exchange_val_64_acq(mem, newval, oldval) \ - ({ __typeof (*(mem)) __ret; \ - __typeof (mem) __memp = (mem); \ - __asm __volatile ("cas2%.l %0:%R0,%1:%R1,(%2):(%3)" \ - : "=d" (__ret) \ - : "d" (newval), "r" (__memp), \ - "r" ((char *) __memp + 4), "0" (oldval) \ - : "memory"); \ - __ret; }) - -#define atomic_exchange_acq(mem, newvalue) \ - ({ __typeof (*(mem)) __result = *(mem); \ - if (sizeof (*(mem)) == 1) \ - __asm __volatile ("1: cas%.b %0,%2,%1;" \ - " jbne 1b" \ - : "=d" (__result), "+m" (*(mem)) \ - : "d" (newvalue), "0" (__result)); \ - else if (sizeof (*(mem)) == 2) \ - __asm __volatile ("1: cas%.w %0,%2,%1;" \ - " jbne 1b" \ - : "=d" (__result), "+m" (*(mem)) \ - : "d" (newvalue), "0" (__result)); \ - else if (sizeof (*(mem)) == 4) \ - __asm __volatile ("1: cas%.l %0,%2,%1;" \ - " jbne 1b" \ - : "=d" (__result), "+m" (*(mem)) \ - : "d" (newvalue), "0" (__result)); \ - else \ - { \ - __typeof (mem) __memp = (mem); \ - __asm __volatile ("1: cas2%.l %0:%R0,%1:%R1,(%2):(%3);" \ - " jbne 1b" \ - : "=d" (__result) \ - : "d" (newvalue), "r" (__memp), \ - "r" ((char *) __memp + 4), "0" (__result) \ - : "memory"); \ - } \ - __result; }) - -#define atomic_exchange_and_add(mem, value) \ - ({ __typeof (*(mem)) __result = *(mem); \ - __typeof (*(mem)) __temp; \ - if (sizeof (*(mem)) == 1) \ - __asm __volatile ("1: move%.b %0,%2;" \ - " add%.b %3,%2;" \ - " cas%.b %0,%2,%1;" \ - " jbne 1b" \ - : "=d" (__result), "+m" (*(mem)), \ - "=&d" (__temp) \ - : "d" (value), "0" (__result)); \ - else if (sizeof (*(mem)) == 2) \ - __asm __volatile ("1: move%.w %0,%2;" \ - " add%.w %3,%2;" \ - " cas%.w %0,%2,%1;" \ - " jbne 1b" \ - : "=d" (__result), "+m" (*(mem)), \ - "=&d" (__temp) \ - : "d" (value), "0" (__result)); \ - else if (sizeof (*(mem)) == 4) \ - __asm __volatile ("1: move%.l %0,%2;" \ - " add%.l %3,%2;" \ - " cas%.l %0,%2,%1;" \ - " jbne 1b" \ - : "=d" (__result), "+m" (*(mem)), \ - "=&d" (__temp) \ - : "d" (value), "0" (__result)); \ - else \ - { \ - __typeof (mem) __memp = (mem); \ - __asm __volatile ("1: move%.l %0,%1;" \ - " move%.l %R0,%R1;" \ - " add%.l %2,%1;" \ - " addx%.l %R2,%R1;" \ - " cas2%.l %0:%R0,%1:%R1,(%3):(%4);" \ - " jbne 1b" \ - : "=d" (__result), "=&d" (__temp) \ - : "d" (value), "r" (__memp), \ - "r" ((char *) __memp + 4), "0" (__result) \ - : "memory"); \ - } \ - __result; }) - -#define atomic_add(mem, value) \ - (void) ({ if (sizeof (*(mem)) == 1) \ - __asm __volatile ("add%.b %1,%0" \ - : "+m" (*(mem)) \ - : "id" (value)); \ - else if (sizeof (*(mem)) == 2) \ - __asm __volatile ("add%.w %1,%0" \ - : "+m" (*(mem)) \ - : "id" (value)); \ - else if (sizeof (*(mem)) == 4) \ - __asm __volatile ("add%.l %1,%0" \ - : "+m" (*(mem)) \ - : "id" (value)); \ - else \ - { \ - __typeof (mem) __memp = (mem); \ - __typeof (*(mem)) __oldval = *__memp; \ - __typeof (*(mem)) __temp; \ - __asm __volatile ("1: move%.l %0,%1;" \ - " move%.l %R0,%R1;" \ - " add%.l %2,%1;" \ - " addx%.l %R2,%R1;" \ - " cas2%.l %0:%R0,%1:%R1,(%3):(%4);" \ - " jbne 1b" \ - : "=d" (__oldval), "=&d" (__temp) \ - : "d" (value), "r" (__memp), \ - "r" ((char *) __memp + 4), "0" (__oldval) \ - : "memory"); \ - } \ - }) - -#define atomic_increment_and_test(mem) \ - ({ char __result; \ - if (sizeof (*(mem)) == 1) \ - __asm __volatile ("addq%.b %#1,%1; seq %0" \ - : "=dm" (__result), "+m" (*(mem))); \ - else if (sizeof (*(mem)) == 2) \ - __asm __volatile ("addq%.w %#1,%1; seq %0" \ - : "=dm" (__result), "+m" (*(mem))); \ - else if (sizeof (*(mem)) == 4) \ - __asm __volatile ("addq%.l %#1,%1; seq %0" \ - : "=dm" (__result), "+m" (*(mem))); \ - else \ - { \ - __typeof (mem) __memp = (mem); \ - __typeof (*(mem)) __oldval = *__memp; \ - __typeof (*(mem)) __temp; \ - __asm __volatile ("1: move%.l %1,%2;" \ - " move%.l %R1,%R2;" \ - " addq%.l %#1,%2;" \ - " addx%.l %5,%R2;" \ - " seq %0;" \ - " cas2%.l %1:%R1,%2:%R2,(%3):(%4);" \ - " jbne 1b" \ - : "=&dm" (__result), "=d" (__oldval), \ - "=&d" (__temp) \ - : "r" (__memp), "r" ((char *) __memp + 4), \ - "d" (0), "1" (__oldval) \ - : "memory"); \ - } \ - __result; }) - -#define atomic_decrement_and_test(mem) \ - ({ char __result; \ - if (sizeof (*(mem)) == 1) \ - __asm __volatile ("subq%.b %#1,%1; seq %0" \ - : "=dm" (__result), "+m" (*(mem))); \ - else if (sizeof (*(mem)) == 2) \ - __asm __volatile ("subq%.w %#1,%1; seq %0" \ - : "=dm" (__result), "+m" (*(mem))); \ - else if (sizeof (*(mem)) == 4) \ - __asm __volatile ("subq%.l %#1,%1; seq %0" \ - : "=dm" (__result), "+m" (*(mem))); \ - else \ - { \ - __typeof (mem) __memp = (mem); \ - __typeof (*(mem)) __oldval = *__memp; \ - __typeof (*(mem)) __temp; \ - __asm __volatile ("1: move%.l %1,%2;" \ - " move%.l %R1,%R2;" \ - " subq%.l %#1,%2;" \ - " subx%.l %5,%R2;" \ - " seq %0;" \ - " cas2%.l %1:%R1,%2:%R2,(%3):(%4);" \ - " jbne 1b" \ - : "=&dm" (__result), "=d" (__oldval), \ - "=&d" (__temp) \ - : "r" (__memp), "r" ((char *) __memp + 4), \ - "d" (0), "1" (__oldval) \ - : "memory"); \ - } \ - __result; }) - -#define atomic_bit_set(mem, bit) \ - __asm __volatile ("bfset %0{%1,#1}" \ - : "+m" (*(mem)) \ - : "di" (sizeof (*(mem)) * 8 - (bit) - 1)) - -#define atomic_bit_test_set(mem, bit) \ - ({ char __result; \ - __asm __volatile ("bfset %1{%2,#1}; sne %0" \ - : "=dm" (__result), "+m" (*(mem)) \ - : "di" (sizeof (*(mem)) * 8 - (bit) - 1)); \ - __result; }) diff --git a/ports/sysdeps/m68k/m680x0/m68020/bits/string.h b/ports/sysdeps/m68k/m680x0/m68020/bits/string.h deleted file mode 100644 index af6a776e0e..0000000000 --- a/ports/sysdeps/m68k/m680x0/m68020/bits/string.h +++ /dev/null @@ -1,25 +0,0 @@ -/* Optimized, inlined string functions. m680x0 version, x >= 2. - Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef _STRING_H -# error "Never use <bits/string.h> directly; include <string.h> instead." -#endif - -/* Currently the only purpose of this file is to tell the generic inline - macros that unaligned memory access is possible. */ -#define _STRING_ARCH_unaligned 1 diff --git a/ports/sysdeps/m68k/m680x0/m68020/mul_1.S b/ports/sysdeps/m68k/m680x0/m68020/mul_1.S deleted file mode 100644 index 67822cd1af..0000000000 --- a/ports/sysdeps/m68k/m680x0/m68020/mul_1.S +++ /dev/null @@ -1,83 +0,0 @@ -/* mc68020 __mpn_mul_1 -- Multiply a limb vector with a limb and store - the result in a second limb vector. - -Copyright (C) 1992-2014 Free Software Foundation, Inc. - -This file is part of the GNU MP Library. - -The GNU MP Library is free software; you can redistribute it and/or modify -it under the terms of the GNU Lesser General Public License as published by -the Free Software Foundation; either version 2.1 of the License, or (at your -option) any later version. - -The GNU MP Library is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public -License for more details. - -You should have received a copy of the GNU Lesser General Public License -along with the GNU MP Library. If not, see <http://www.gnu.org/licenses/>. */ - -/* - INPUT PARAMETERS - res_ptr (sp + 4) - s1_ptr (sp + 8) - s1_size (sp + 12) - s2_limb (sp + 16) -*/ - -#include "sysdep.h" -#include "asm-syntax.h" - - TEXT -ENTRY(__mpn_mul_1) - -#define res_ptr a0 -#define s1_ptr a1 -#define s1_size d2 -#define s2_limb d4 - -/* Save used registers on the stack. */ - moveml R(d2)-R(d4),MEM_PREDEC(sp) - cfi_adjust_cfa_offset (3*4) - cfi_rel_offset (R(d2), 0) - cfi_rel_offset (R(d3), 4) - cfi_rel_offset (R(d4), 8) - -/* Copy the arguments to registers. Better use movem? */ - movel MEM_DISP(sp,16),R(res_ptr) - movel MEM_DISP(sp,20),R(s1_ptr) - movel MEM_DISP(sp,24),R(s1_size) - movel MEM_DISP(sp,28),R(s2_limb) - - eorw #1,R(s1_size) - clrl R(d1) - lsrl #1,R(s1_size) - bcc L(L1) - subql #1,R(s1_size) - subl R(d0),R(d0) /* (d0,cy) <= (0,0) */ - -L(Loop:) - movel MEM_POSTINC(s1_ptr),R(d3) - mulul R(s2_limb),R(d1):R(d3) - addxl R(d0),R(d3) - movel R(d3),MEM_POSTINC(res_ptr) -L(L1:) movel MEM_POSTINC(s1_ptr),R(d3) - mulul R(s2_limb),R(d0):R(d3) - addxl R(d1),R(d3) - movel R(d3),MEM_POSTINC(res_ptr) - - dbf R(s1_size),L(Loop) - clrl R(d3) - addxl R(d3),R(d0) - subl #0x10000,R(s1_size) - bcc L(Loop) - -/* Restore used registers from stack frame. */ - moveml MEM_POSTINC(sp),R(d2)-R(d4) - cfi_adjust_cfa_offset (-3*4) - cfi_restore (R(d2)) - cfi_restore (R(d3)) - cfi_restore (R(d4)) - rts -END(__mpn_mul_1) diff --git a/ports/sysdeps/m68k/m680x0/m68020/submul_1.S b/ports/sysdeps/m68k/m680x0/m68020/submul_1.S deleted file mode 100644 index b7c60d4b89..0000000000 --- a/ports/sysdeps/m68k/m680x0/m68020/submul_1.S +++ /dev/null @@ -1,88 +0,0 @@ -/* mc68020 __mpn_submul_1 -- Multiply a limb vector with a limb and subtract - the result from a second limb vector. - -Copyright (C) 1992-2014 Free Software Foundation, Inc. - -This file is part of the GNU MP Library. - -The GNU MP Library is free software; you can redistribute it and/or modify -it under the terms of the GNU Lesser General Public License as published by -the Free Software Foundation; either version 2.1 of the License, or (at your -option) any later version. - -The GNU MP Library is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public -License for more details. - -You should have received a copy of the GNU Lesser General Public License -along with the GNU MP Library. If not, see <http://www.gnu.org/licenses/>. */ - -/* - INPUT PARAMETERS - res_ptr (sp + 4) - s1_ptr (sp + 8) - s1_size (sp + 12) - s2_limb (sp + 16) -*/ - -#include "sysdep.h" -#include "asm-syntax.h" - - TEXT -ENTRY(__mpn_submul_1) - -#define res_ptr a0 -#define s1_ptr a1 -#define s1_size d2 -#define s2_limb d4 - -/* Save used registers on the stack. */ - moveml R(d2)-R(d5),MEM_PREDEC(sp) - cfi_adjust_cfa_offset (4*4) - cfi_rel_offset (R(d2), 0) - cfi_rel_offset (R(d3), 4) - cfi_rel_offset (R(d4), 8) - cfi_rel_offset (R(d5), 12) - -/* Copy the arguments to registers. Better use movem? */ - movel MEM_DISP(sp,20),R(res_ptr) - movel MEM_DISP(sp,24),R(s1_ptr) - movel MEM_DISP(sp,28),R(s1_size) - movel MEM_DISP(sp,32),R(s2_limb) - - eorw #1,R(s1_size) - clrl R(d1) - clrl R(d5) - lsrl #1,R(s1_size) - bcc L(L1) - subql #1,R(s1_size) - subl R(d0),R(d0) /* (d0,cy) <= (0,0) */ - -L(Loop:) - movel MEM_POSTINC(s1_ptr),R(d3) - mulul R(s2_limb),R(d1):R(d3) - addxl R(d0),R(d3) - addxl R(d5),R(d1) - subl R(d3),MEM_POSTINC(res_ptr) -L(L1:) movel MEM_POSTINC(s1_ptr),R(d3) - mulul R(s2_limb),R(d0):R(d3) - addxl R(d1),R(d3) - addxl R(d5),R(d0) - subl R(d3),MEM_POSTINC(res_ptr) - - dbf R(s1_size),L(Loop) - addxl R(d5),R(d0) - subl #0x10000,R(s1_size) - bcc L(Loop) - -/* Restore used registers from stack frame. */ - moveml MEM_POSTINC(sp),R(d2)-R(d5) - cfi_adjust_cfa_offset (-4*4) - cfi_restore (R(d2)) - cfi_restore (R(d3)) - cfi_restore (R(d4)) - cfi_restore (R(d5)) - - rts -END(__mpn_submul_1) diff --git a/ports/sysdeps/m68k/m680x0/m68020/wordcopy.S b/ports/sysdeps/m68k/m680x0/m68020/wordcopy.S deleted file mode 100644 index 4fb1a4518f..0000000000 --- a/ports/sysdeps/m68k/m680x0/m68020/wordcopy.S +++ /dev/null @@ -1 +0,0 @@ -/* Empty, not needed. */ diff --git a/ports/sysdeps/m68k/m680x0/printf_fphex.c b/ports/sysdeps/m68k/m680x0/printf_fphex.c deleted file mode 100644 index d021a090ab..0000000000 --- a/ports/sysdeps/m68k/m680x0/printf_fphex.c +++ /dev/null @@ -1,2 +0,0 @@ -#define LONG_DOUBLE_DENORM_BIAS IEEE854_LONG_DOUBLE_BIAS -#include <sysdeps/ieee754/ldbl-96/printf_fphex.c> diff --git a/ports/sysdeps/m68k/m680x0/rshift.S b/ports/sysdeps/m68k/m680x0/rshift.S deleted file mode 100644 index e2d335405c..0000000000 --- a/ports/sysdeps/m68k/m680x0/rshift.S +++ /dev/null @@ -1,167 +0,0 @@ -/* mc68020 __mpn_rshift -- Shift right a low-level natural-number integer. - -Copyright (C) 1996-2014 Free Software Foundation, Inc. - -This file is part of the GNU MP Library. - -The GNU MP Library is free software; you can redistribute it and/or modify -it under the terms of the GNU Lesser General Public License as published by -the Free Software Foundation; either version 2.1 of the License, or (at your -option) any later version. - -The GNU MP Library is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public -License for more details. - -You should have received a copy of the GNU Lesser General Public License -along with the GNU MP Library. If not, see <http://www.gnu.org/licenses/>. */ - -/* - INPUT PARAMETERS - res_ptr (sp + 4) - s_ptr (sp + 8) - s_size (sp + 16) - cnt (sp + 12) -*/ - -#include "sysdep.h" -#include "asm-syntax.h" - -#define res_ptr a1 -#define s_ptr a0 -#define s_size d6 -#define cnt d4 - - TEXT -ENTRY(__mpn_rshift) -/* Save used registers on the stack. */ - moveml R(d2)-R(d6)/R(a2),MEM_PREDEC(sp) - cfi_adjust_cfa_offset (6*4) - cfi_rel_offset (R(d2), 0) - cfi_rel_offset (R(d3), 4) - cfi_rel_offset (R(d4), 8) - cfi_rel_offset (R(d5), 12) - cfi_rel_offset (R(d6), 16) - cfi_rel_offset (R(a2), 20) - -/* Copy the arguments to registers. */ - movel MEM_DISP(sp,28),R(res_ptr) - movel MEM_DISP(sp,32),R(s_ptr) - movel MEM_DISP(sp,36),R(s_size) - movel MEM_DISP(sp,40),R(cnt) - - moveql #1,R(d5) - cmpl R(d5),R(cnt) - bne L(Lnormal) - cmpl R(res_ptr),R(s_ptr) - bls L(Lspecial) /* jump if res_ptr >= s_ptr */ -#if (defined (__mc68020__) || defined (__NeXT__) || defined(mc68020)) - lea MEM_INDX1(res_ptr,s_size,l,4),R(a2) -#else /* not mc68020 */ - movel R(s_size),R(d0) - asll #2,R(d0) - lea MEM_INDX(res_ptr,d0,l),R(a2) -#endif - cmpl R(s_ptr),R(a2) - bls L(Lspecial) /* jump if s_ptr >= res_ptr + s_size */ - -L(Lnormal:) - moveql #32,R(d5) - subl R(cnt),R(d5) - movel MEM_POSTINC(s_ptr),R(d2) - movel R(d2),R(d0) - lsll R(d5),R(d0) /* compute carry limb */ - - lsrl R(cnt),R(d2) - movel R(d2),R(d1) - subql #1,R(s_size) - beq L(Lend) - lsrl #1,R(s_size) - bcs L(L1) - subql #1,R(s_size) - -L(Loop:) - movel MEM_POSTINC(s_ptr),R(d2) - movel R(d2),R(d3) - lsll R(d5),R(d3) - orl R(d3),R(d1) - movel R(d1),MEM_POSTINC(res_ptr) - lsrl R(cnt),R(d2) -L(L1:) - movel MEM_POSTINC(s_ptr),R(d1) - movel R(d1),R(d3) - lsll R(d5),R(d3) - orl R(d3),R(d2) - movel R(d2),MEM_POSTINC(res_ptr) - lsrl R(cnt),R(d1) - - dbf R(s_size),L(Loop) - subl #0x10000,R(s_size) - bcc L(Loop) - -L(Lend:) - movel R(d1),MEM(res_ptr) /* store most significant limb */ - -/* Restore used registers from stack frame. */ - moveml MEM_POSTINC(sp),R(d2)-R(d6)/R(a2) - cfi_remember_state - cfi_adjust_cfa_offset (-6*4) - cfi_restore (R(d2)) - cfi_restore (R(d3)) - cfi_restore (R(d4)) - cfi_restore (R(d5)) - cfi_restore (R(d6)) - cfi_restore (R(a2)) - rts - -/* We loop from most significant end of the arrays, which is only - permissible if the source and destination don't overlap, since the - function is documented to work for overlapping source and destination. */ - - cfi_restore_state -L(Lspecial:) -#if (defined (__mc68020__) || defined (__NeXT__) || defined(mc68020)) - lea MEM_INDX1(s_ptr,s_size,l,4),R(s_ptr) - lea MEM_INDX1(res_ptr,s_size,l,4),R(res_ptr) -#else /* not mc68000 */ - movel R(s_size),R(d0) - asll #2,R(d0) - addl R(s_size),R(s_ptr) - addl R(s_size),R(res_ptr) -#endif - - clrl R(d0) /* initialize carry */ - eorw #1,R(s_size) - lsrl #1,R(s_size) - bcc L(LL1) - subql #1,R(s_size) - -L(LLoop:) - movel MEM_PREDEC(s_ptr),R(d2) - roxrl #1,R(d2) - movel R(d2),MEM_PREDEC(res_ptr) -L(LL1:) - movel MEM_PREDEC(s_ptr),R(d2) - roxrl #1,R(d2) - movel R(d2),MEM_PREDEC(res_ptr) - - dbf R(s_size),L(LLoop) - roxrl #1,R(d0) /* save cy in msb */ - subl #0x10000,R(s_size) - bcs L(LLend) - addl R(d0),R(d0) /* restore cy */ - bra L(LLoop) - -L(LLend:) -/* Restore used registers from stack frame. */ - moveml MEM_POSTINC(sp),R(d2)-R(d6)/R(a2) - cfi_adjust_cfa_offset (-6*4) - cfi_restore (R(d2)) - cfi_restore (R(d3)) - cfi_restore (R(d4)) - cfi_restore (R(d5)) - cfi_restore (R(d6)) - cfi_restore (R(a2)) - rts -END(__mpn_rshift) diff --git a/ports/sysdeps/m68k/m680x0/strtold_l.c b/ports/sysdeps/m68k/m680x0/strtold_l.c deleted file mode 100644 index 481d9924c2..0000000000 --- a/ports/sysdeps/m68k/m680x0/strtold_l.c +++ /dev/null @@ -1,2 +0,0 @@ -#define DENORM_EXP (MIN_EXP - 1) -#include <sysdeps/ieee754/ldbl-96/strtold_l.c> diff --git a/ports/sysdeps/m68k/m680x0/sub_n.S b/ports/sysdeps/m68k/m680x0/sub_n.S deleted file mode 100644 index 6c6d92e6f5..0000000000 --- a/ports/sysdeps/m68k/m680x0/sub_n.S +++ /dev/null @@ -1,82 +0,0 @@ -/* mc68020 __mpn_sub_n -- Subtract two limb vectors of the same length > 0 and - store difference in a third limb vector. - -Copyright (C) 1992-2014 Free Software Foundation, Inc. - -This file is part of the GNU MP Library. - -The GNU MP Library is free software; you can redistribute it and/or modify -it under the terms of the GNU Lesser General Public License as published by -the Free Software Foundation; either version 2.1 of the License, or (at your -option) any later version. - -The GNU MP Library is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public -License for more details. - -You should have received a copy of the GNU Lesser General Public License -along with the GNU MP Library. If not, see <http://www.gnu.org/licenses/>. */ - -/* - INPUT PARAMETERS - res_ptr (sp + 4) - s1_ptr (sp + 8) - s2_ptr (sp + 16) - size (sp + 12) -*/ - -#include "sysdep.h" -#include "asm-syntax.h" - - TEXT -ENTRY(__mpn_sub_n) -/* Save used registers on the stack. */ - movel R(d2),MEM_PREDEC(sp) - cfi_adjust_cfa_offset (4) - movel R(a2),MEM_PREDEC(sp) - cfi_adjust_cfa_offset (4) - cfi_rel_offset (R(d2), 4) - cfi_rel_offset (R(a2), 0) - -/* Copy the arguments to registers. Better use movem? */ - movel MEM_DISP(sp,12),R(a2) - movel MEM_DISP(sp,16),R(a0) - movel MEM_DISP(sp,20),R(a1) - movel MEM_DISP(sp,24),R(d2) - - eorw #1,R(d2) - lsrl #1,R(d2) - bcc L(L1) - subql #1,R(d2) /* clears cy as side effect */ - -L(Loop:) - movel MEM_POSTINC(a0),R(d0) - movel MEM_POSTINC(a1),R(d1) - subxl R(d1),R(d0) - movel R(d0),MEM_POSTINC(a2) -L(L1:) movel MEM_POSTINC(a0),R(d0) - movel MEM_POSTINC(a1),R(d1) - subxl R(d1),R(d0) - movel R(d0),MEM_POSTINC(a2) - - dbf R(d2),L(Loop) /* loop until 16 lsb of %4 == -1 */ - subxl R(d0),R(d0) /* d0 <= -cy; save cy as 0 or -1 in d0 */ - subl #0x10000,R(d2) - bcs L(L2) - addl R(d0),R(d0) /* restore cy */ - bra L(Loop) - -L(L2:) - negl R(d0) - -/* Restore used registers from stack frame. */ - movel MEM_POSTINC(sp),R(a2) - cfi_adjust_cfa_offset (-4) - cfi_restore (R(a2)) - movel MEM_POSTINC(sp),R(d2) - cfi_adjust_cfa_offset (-4) - cfi_restore (R(d2)) - - rts -END(__mpn_sub_n) diff --git a/ports/sysdeps/m68k/m680x0/sysdep.h b/ports/sysdeps/m68k/m680x0/sysdep.h deleted file mode 100644 index 40526176f1..0000000000 --- a/ports/sysdeps/m68k/m680x0/sysdep.h +++ /dev/null @@ -1,39 +0,0 @@ -/* Assembler macros for m680x0. - Copyright (C) 2010-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <sysdeps/m68k/sysdep.h> - -#ifdef __ASSEMBLER__ - -/* Perform operation OP with PC-relative SRC as the first operand and - DST as the second. TMP is available as a temporary if needed. */ -# define PCREL_OP(OP, SRC, DST, TMP) \ - OP SRC(%pc), DST - -/* Load the address of the GOT into register R. */ -# define LOAD_GOT(R) \ - lea _GLOBAL_OFFSET_TABLE_@GOTPC (%pc), R - -#else - -/* As above, but PC is the spelling of the PC register. We need this - so that the macro can be used in both normal and extended asms. */ -#define PCREL_OP(OP, SRC, DST, TMP, PC) \ - OP " " SRC "(" PC "), " DST - -#endif /* __ASSEMBLER__ */ diff --git a/ports/sysdeps/m68k/memchr.S b/ports/sysdeps/m68k/memchr.S deleted file mode 100644 index d031e3284d..0000000000 --- a/ports/sysdeps/m68k/memchr.S +++ /dev/null @@ -1,307 +0,0 @@ -/* memchr (str, ch, n) -- Return pointer to first occurrence of CH in the - first N bytes of STR. - For Motorola 68000. - Copyright (C) 1999-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@gnu.org>. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <sysdep.h> -#include "asm-syntax.h" - - TEXT -ENTRY(__memchr) - /* Save the callee-saved registers we use. */ -#ifdef __mcoldfire__ - movel R(d2),MEM_PREDEC(sp) - cfi_adjust_cfa_offset (4) - movel R(d3),MEM_PREDEC(sp) - cfi_adjust_cfa_offset (4) - movel R(d4),MEM_PREDEC(sp) - cfi_adjust_cfa_offset (4) - cfi_rel_offset (R(d2), 8) - cfi_rel_offset (R(d3), 4) - cfi_rel_offset (R(d4), 0) -#else - moveml R(d2)-R(d4),MEM_PREDEC(sp) - cfi_adjust_cfa_offset (3*4) - cfi_rel_offset (R(d2), 0) - cfi_rel_offset (R(d3), 4) - cfi_rel_offset (R(d4), 8) -#endif - - /* Get string pointer, character and length. */ - movel MEM_DISP(sp,16),R(a0) - moveb MEM_DISP(sp,23),R(d0) - movel MEM_DISP(sp,24),R(d4) - - /* Check if at least four bytes left to search. */ -#ifdef __mcoldfire__ - subql #4,R(d4) - bcs L(L6) - addql #4,R(d4) -#else - moveql #4,R(d1) - cmpl R(d1),R(d4) - bcs L(L6) -#endif - - /* Distribute the character to all bytes of a longword. */ - movel R(d0),R(d1) - lsll #8,R(d1) - moveb R(d0),R(d1) - movel R(d1),R(d0) - swap R(d0) - movew R(d1),R(d0) - - /* First search for the character one byte at a time until the - pointer is aligned to a longword boundary. */ - movel R(a0),R(d1) -#ifdef __mcoldfire__ - andl #3,R(d1) -#else - andw #3,R(d1) -#endif - beq L(L1) - cmpb MEM(a0),R(d0) - beq L(L9) - addql #1,R(a0) - subql #1,R(d4) - beq L(L7) - -#ifdef __mcoldfire__ - subql #3,R(d1) -#else - subqw #3,R(d1) -#endif - beq L(L1) - cmpb MEM(a0),R(d0) - beq L(L9) - addql #1,R(a0) - subql #1,R(d4) - beq L(L7) - -#ifdef __mcoldfire__ - addql #1,R(d1) -#else - addqw #1,R(d1) -#endif - beq L(L1) - cmpb MEM(a0),R(d0) - beq L(L9) - addql #1,R(a0) - subql #1,R(d4) - beq L(L7) - -L(L1:) - /* Load the magic bits. Unlike the generic implementation we can - use the carry bit as the fourth hole. */ - movel #0xfefefeff,R(d3) - - /* We exit the loop if adding MAGIC_BITS to LONGWORD fails to - change any of the hole bits of LONGWORD. - - 1) Is this safe? Will it catch all the zero bytes? - Suppose there is a byte with all zeros. Any carry bits - propagating from its left will fall into the hole at its - least significant bit and stop. Since there will be no - carry from its most significant bit, the LSB of the - byte to the left will be unchanged, and the zero will be - detected. - - 2) Is this worthwhile? Will it ignore everything except - zero bytes? Suppose every byte of LONGWORD has a bit set - somewhere. There will be a carry into bit 8. If bit 8 - is set, this will carry into bit 16. If bit 8 is clear, - one of bits 9-15 must be set, so there will be a carry - into bit 16. Similarly, there will be a carry into bit - 24. If one of bits 24-31 is set, there will be a carry - into bit 32 (=carry flag), so all of the hole bits will - be changed. - - 3) But wait! Aren't we looking for C, not zero? - Good point. So what we do is XOR LONGWORD with a longword, - each of whose bytes is C. This turns each byte that is C - into a zero. */ - - /* Still at least 4 bytes to search? */ - subql #4,R(d4) - bcs L(L6) - -L(L2:) - /* Get the longword in question. */ - movel MEM_POSTINC(a0),R(d1) - /* XOR with the byte we search for. */ - eorl R(d0),R(d1) - - /* Add the magic value. We get carry bits reported for each byte - which is not C. */ - movel R(d3),R(d2) - addl R(d1),R(d2) - - /* Check the fourth carry bit before it is clobbered by the next - XOR. If it is not set we have a hit. */ - bcc L(L8) - - /* We are only interested in carry bits that change due to the - previous add, so remove original bits. */ - eorl R(d1),R(d2) - - /* Now test for the other three overflow bits. - Set all non-carry bits. */ - orl R(d3),R(d2) - /* Add 1 to get zero if all carry bits were set. */ - addql #1,R(d2) - - /* If we don't get zero then at least one byte of the word equals - C. */ - bne L(L8) - - /* Still at least 4 bytes to search? */ - subql #4,R(d4) - bcs L(L6) - - /* Get the longword in question. */ - movel MEM_POSTINC(a0),R(d1) - /* XOR with the byte we search for. */ - eorl R(d0),R(d1) - - /* Add the magic value. We get carry bits reported for each byte - which is not C. */ - movel R(d3),R(d2) - addl R(d1),R(d2) - - /* Check the fourth carry bit before it is clobbered by the next - XOR. If it is not set we have a hit. */ - bcc L(L8) - - /* We are only interested in carry bits that change due to the - previous add, so remove original bits */ - eorl R(d1),R(d2) - - /* Now test for the other three overflow bits. - Set all non-carry bits. */ - orl R(d3),R(d2) - /* Add 1 to get zero if all carry bits were set. */ - addql #1,R(d2) - - /* If we don't get zero then at least one byte of the word equals - C. */ - bne L(L8) - - /* Still at least 4 bytes to search? */ - subql #4,R(d4) - bcc L(L2) - -L(L6:) - /* Search one byte at a time in the remaining less than 4 bytes. */ -#ifdef __mcoldfire__ - addql #4,R(d4) -#else - andw #3,R(d4) -#endif - beq L(L7) - cmpb MEM(a0),R(d0) - beq L(L9) - addql #1,R(a0) - -#ifdef __mcoldfire__ - subql #1,R(d4) -#else - subqw #1,R(d4) -#endif - beq L(L7) - cmpb MEM(a0),R(d0) - beq L(L9) - addql #1,R(a0) - -#ifdef __mcoldfire__ - subql #1,R(d4) -#else - subqw #1,R(d4) -#endif - beq L(L7) - cmpb MEM(a0),R(d0) - beq L(L9) - -L(L7:) - /* Return NULL. */ - clrl R(d0) - movel R(d0),R(a0) -#ifdef __mcoldfire__ - movel MEM_POSTINC(sp),R(d4) - cfi_remember_state - cfi_adjust_cfa_offset (-4) - cfi_restore (R(d4)) - movel MEM_POSTINC(sp),R(d3) - cfi_adjust_cfa_offset (-4) - cfi_restore (R(d3)) - movel MEM_POSTINC(sp),R(d2) - cfi_adjust_cfa_offset (-4) - cfi_restore (R(d2)) -#else - moveml MEM_POSTINC(sp),R(d2)-R(d4) - cfi_remember_state - cfi_adjust_cfa_offset (-3*4) - cfi_restore (R(d2)) - cfi_restore (R(d3)) - cfi_restore (R(d4)) -#endif - rts - - cfi_restore_state -L(L8:) - /* We have a hit. Check to see which byte it was. First - compensate for the autoincrement in the loop. */ - subql #4,R(a0) - - cmpb MEM(a0),R(d0) - beq L(L9) - addql #1,R(a0) - - cmpb MEM(a0),R(d0) - beq L(L9) - addql #1,R(a0) - - cmpb MEM(a0),R(d0) - beq L(L9) - addql #1,R(a0) - - /* Otherwise the fourth byte must equal C. */ -L(L9:) - movel R(a0),R(d0) -#ifdef __mcoldfire__ - movel MEM_POSTINC(sp),R(d4) - cfi_adjust_cfa_offset (-4) - cfi_restore (R(d4)) - movel MEM_POSTINC(sp),R(d3) - cfi_adjust_cfa_offset (-4) - cfi_restore (R(d3)) - movel MEM_POSTINC(sp),R(d2) - cfi_adjust_cfa_offset (-4) - cfi_restore (R(d2)) -#else - moveml MEM_POSTINC(sp),R(d2)-R(d4) - cfi_adjust_cfa_offset (-3*4) - cfi_restore (R(d2)) - cfi_restore (R(d3)) - cfi_restore (R(d4)) -#endif - rts -END(__memchr) - -weak_alias (__memchr, memchr) -libc_hidden_builtin_def (memchr) diff --git a/ports/sysdeps/m68k/memcopy.h b/ports/sysdeps/m68k/memcopy.h deleted file mode 100644 index 3210d4e83e..0000000000 --- a/ports/sysdeps/m68k/memcopy.h +++ /dev/null @@ -1,99 +0,0 @@ -/* memcopy.h -- definitions for memory copy functions. Motorola 68020 version. - Copyright (C) 1991-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Torbjorn Granlund (tege@sics.se). - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <sysdeps/generic/memcopy.h> - -#if defined(__mc68020__) || defined(mc68020) - -#undef OP_T_THRES -#define OP_T_THRES 16 - -/* WORD_COPY_FWD and WORD_COPY_BWD are not symmetric on the 68020, - because of its weird instruction overlap characteristics. */ - -#undef WORD_COPY_FWD -#define WORD_COPY_FWD(dst_bp, src_bp, nbytes_left, nbytes) \ - do \ - { \ - size_t __nwords = (nbytes) / sizeof (op_t); \ - size_t __nblocks = __nwords / 8 + 1; \ - dst_bp -= (8 - __nwords % 8) * sizeof (op_t); \ - src_bp -= (8 - __nwords % 8) * sizeof (op_t); \ - switch (__nwords % 8) \ - do \ - { \ - ((op_t *) dst_bp)[0] = ((op_t *) src_bp)[0]; \ - case 7: \ - ((op_t *) dst_bp)[1] = ((op_t *) src_bp)[1]; \ - case 6: \ - ((op_t *) dst_bp)[2] = ((op_t *) src_bp)[2]; \ - case 5: \ - ((op_t *) dst_bp)[3] = ((op_t *) src_bp)[3]; \ - case 4: \ - ((op_t *) dst_bp)[4] = ((op_t *) src_bp)[4]; \ - case 3: \ - ((op_t *) dst_bp)[5] = ((op_t *) src_bp)[5]; \ - case 2: \ - ((op_t *) dst_bp)[6] = ((op_t *) src_bp)[6]; \ - case 1: \ - ((op_t *) dst_bp)[7] = ((op_t *) src_bp)[7]; \ - case 0: \ - src_bp += 32; \ - dst_bp += 32; \ - __nblocks--; \ - } \ - while (__nblocks != 0); \ - (nbytes_left) = (nbytes) % sizeof (op_t); \ - } while (0) - -#undef WORD_COPY_BWD -#define WORD_COPY_BWD(dst_ep, src_ep, nbytes_left, nbytes) \ - do \ - { \ - size_t __nblocks = (nbytes) / 32 + 1; \ - op_t *__dst_ep = (op_t *) (dst_ep); \ - op_t *__src_ep = (op_t *) (src_ep); \ - switch ((nbytes) / sizeof (op_t) % 8) \ - do \ - { \ - *--__dst_ep = *--__src_ep; \ - case 7: \ - *--__dst_ep = *--__src_ep; \ - case 6: \ - *--__dst_ep = *--__src_ep; \ - case 5: \ - *--__dst_ep = *--__src_ep; \ - case 4: \ - *--__dst_ep = *--__src_ep; \ - case 3: \ - *--__dst_ep = *--__src_ep; \ - case 2: \ - *--__dst_ep = *--__src_ep; \ - case 1: \ - *--__dst_ep = *--__src_ep; \ - case 0: \ - __nblocks--; \ - } \ - while (__nblocks != 0); \ - (nbytes_left) = (nbytes) % sizeof (op_t); \ - (dst_ep) = (unsigned long) __dst_ep; \ - (src_ep) = (unsigned long) __src_ep; \ - } while (0) - -#endif diff --git a/ports/sysdeps/m68k/memusage.h b/ports/sysdeps/m68k/memusage.h deleted file mode 100644 index c0ca783fae..0000000000 --- a/ports/sysdeps/m68k/memusage.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright (C) 2000-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - - -#define GETSP() ({ register uintptr_t stack_ptr asm ("%sp"); stack_ptr; }) - -#include <sysdeps/generic/memusage.h> diff --git a/ports/sysdeps/m68k/nptl/Makefile b/ports/sysdeps/m68k/nptl/Makefile deleted file mode 100644 index 3a3f7c102b..0000000000 --- a/ports/sysdeps/m68k/nptl/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# Copyright (C) 2010-2014 Free Software Foundation, Inc. -# This file is part of the GNU C Library. -# Contributed by Maxim Kuvyrkov <maxim@codesourcery.com>, 2010. -# -# The GNU C Library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# The GNU C Library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with the GNU C Library. If not, see -# <http://www.gnu.org/licenses/>. - -ifeq ($(subdir),csu) -gen-as-const-headers += tcb-offsets.sym -endif diff --git a/ports/sysdeps/m68k/nptl/pthread_spin_lock.c b/ports/sysdeps/m68k/nptl/pthread_spin_lock.c deleted file mode 100644 index 0914b41394..0000000000 --- a/ports/sysdeps/m68k/nptl/pthread_spin_lock.c +++ /dev/null @@ -1,24 +0,0 @@ -/* Copyright (C) 2010-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Maxim Kuvyrkov <maxim@codesourcery.com>, 2010. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#define SPIN_LOCK_READS_BETWEEN_CMPXCHG 1000 - -/* We can't use the normal "#include <nptl/pthread_spin_lock.c>" because - it will resolve to this very file. Using "sysdeps/.." as reference to the - top level directory does the job. */ -#include <sysdeps/../nptl/pthread_spin_lock.c> diff --git a/ports/sysdeps/m68k/nptl/pthreaddef.h b/ports/sysdeps/m68k/nptl/pthreaddef.h deleted file mode 100644 index 68bf11af14..0000000000 --- a/ports/sysdeps/m68k/nptl/pthreaddef.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright (C) 2010-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Maxim Kuvyrkov <maxim@codesourcery.com>, 2010. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -/* Default stack size. */ -#define ARCH_STACK_DEFAULT_SIZE (2 * 1024 * 1024) - -/* Required stack pointer alignment at beginning. */ -#define STACK_ALIGN 16 - -/* Minimal stack size after allocating thread descriptor and guard size. */ -#define MINIMAL_REST_STACK 2048 - -/* Alignment requirement for TCB. */ -#define TCB_ALIGNMENT 16 - - -/* Location of current stack frame. */ -#define CURRENT_STACK_FRAME __builtin_frame_address (0) - - -/* XXX Until we have a better place keep the definitions here. */ -#define __exit_thread_inline(val) \ - INLINE_SYSCALL (exit, 1, (val)) diff --git a/ports/sysdeps/m68k/nptl/tcb-offsets.sym b/ports/sysdeps/m68k/nptl/tcb-offsets.sym deleted file mode 100644 index b1bba65868..0000000000 --- a/ports/sysdeps/m68k/nptl/tcb-offsets.sym +++ /dev/null @@ -1,11 +0,0 @@ -#include <sysdep.h> -#include <tls.h> - --- - --- Derive offsets relative to the thread register. -#define thread_offsetof(mem) (long)(offsetof(struct pthread, mem) - TLS_TCB_OFFSET - TLS_PRE_TCB_SIZE) - -MULTIPLE_THREADS_OFFSET thread_offsetof (header.multiple_threads) -PID_OFFSET thread_offsetof (pid) -TID_OFFSET thread_offsetof (tid) diff --git a/ports/sysdeps/m68k/nptl/tls.h b/ports/sysdeps/m68k/nptl/tls.h deleted file mode 100644 index 5de079b9d4..0000000000 --- a/ports/sysdeps/m68k/nptl/tls.h +++ /dev/null @@ -1,167 +0,0 @@ -/* Definition for thread-local data handling. NPTL/m68k version. - Copyright (C) 2010-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Maxim Kuvyrkov <maxim@codesourcery.com>, 2010. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef _TLS_H -#define _TLS_H 1 - -#include <dl-sysdep.h> - -#ifndef __ASSEMBLER__ -# include <stdbool.h> -# include <stddef.h> -# include <stdint.h> - -/* Type for the dtv. */ -typedef union dtv -{ - size_t counter; - struct - { - void *val; - bool is_static; - } pointer; -} dtv_t; - -#else /* __ASSEMBLER__ */ -# include <tcb-offsets.h> -#endif /* __ASSEMBLER__ */ - -#ifndef __ASSEMBLER__ - -/* Get system call information. */ -# include <sysdep.h> - -/* The TP points to the start of the thread blocks. */ -# define TLS_DTV_AT_TP 1 - -/* Get the thread descriptor definition. */ -# include <nptl/descr.h> - -typedef struct -{ - dtv_t *dtv; - void *private; -} tcbhead_t; - -/* This is the size of the initial TCB. Because our TCB is before the thread - pointer, we don't need this. */ -# define TLS_INIT_TCB_SIZE 0 - -/* Alignment requirements for the initial TCB. */ -# define TLS_INIT_TCB_ALIGN __alignof__ (struct pthread) - -/* This is the size of the TCB. Because our TCB is before the thread - pointer, we don't need this. */ -# define TLS_TCB_SIZE 0 - -/* Alignment requirements for the TCB. */ -# define TLS_TCB_ALIGN __alignof__ (struct pthread) - -/* This is the size we need before TCB - actually, it includes the TCB. */ -# define TLS_PRE_TCB_SIZE \ - (sizeof (struct pthread) \ - + ((sizeof (tcbhead_t) + TLS_TCB_ALIGN - 1) & ~(TLS_TCB_ALIGN - 1))) - -/* The thread pointer (TP) points to the end of the - TCB + 0x7000, as for PowerPC and MIPS. This implies that TCB address is - TP - 0x7000. As we define TLS_DTV_AT_TP we can - assume that the pthread struct is allocated immediately ahead of the - TCB. This implies that the pthread_descr address is - TP - (TLS_PRE_TCB_SIZE + 0x7000). */ -# define TLS_TCB_OFFSET 0x7000 - -/* Install the dtv pointer. The pointer passed is to the element with - index -1 which contain the length. */ -# define INSTALL_DTV(tcbp, dtvp) \ - ((tcbhead_t *) (tcbp))[-1].dtv = dtvp + 1 - -/* Install new dtv for current thread. */ -# define INSTALL_NEW_DTV(dtv) \ - (THREAD_DTV () = (dtv)) - -/* Return dtv of given thread descriptor. */ -# define GET_DTV(tcbp) \ - (((tcbhead_t *) (tcbp))[-1].dtv) - -/* Code to initially initialize the thread pointer. This might need - special attention since 'errno' is not yet available and if the - operation can cause a failure 'errno' must not be touched. */ -# define TLS_INIT_TP(tcbp, secondcall) \ - ({ \ - INTERNAL_SYSCALL_DECL (err); \ - int _sys_result; \ - \ - _sys_result = INTERNAL_SYSCALL (set_thread_area, err, 1, \ - ((void *) (tcbp)) + TLS_TCB_OFFSET); \ - INTERNAL_SYSCALL_ERROR_P (_sys_result, err) ? "unknown error" : NULL; }) - -extern void * __m68k_read_tp (void); - -/* Return the address of the dtv for the current thread. */ -# define THREAD_DTV() \ - (((tcbhead_t *) (__m68k_read_tp () - TLS_TCB_OFFSET))[-1].dtv) - -/* Return the thread descriptor for the current thread. */ -# define THREAD_SELF \ - ((struct pthread *) (__m68k_read_tp () - TLS_TCB_OFFSET - TLS_PRE_TCB_SIZE)) - -/* Magic for libthread_db to know how to do THREAD_SELF. */ -# define DB_THREAD_SELF \ - CONST_THREAD_AREA (32, TLS_TCB_OFFSET + TLS_PRE_TCB_SIZE) - -/* Access to data in the thread descriptor is easy. */ -# define THREAD_GETMEM(descr, member) \ - descr->member -# define THREAD_GETMEM_NC(descr, member, idx) \ - descr->member[idx] -# define THREAD_SETMEM(descr, member, value) \ - descr->member = (value) -# define THREAD_SETMEM_NC(descr, member, idx, value) \ - descr->member[idx] = (value) - -/* l_tls_offset == 0 is perfectly valid on M68K, so we have to use some - different value to mean unset l_tls_offset. */ -# define NO_TLS_OFFSET -1 - -/* Get and set the global scope generation counter in struct pthread. */ -#define THREAD_GSCOPE_FLAG_UNUSED 0 -#define THREAD_GSCOPE_FLAG_USED 1 -#define THREAD_GSCOPE_FLAG_WAIT 2 -#define THREAD_GSCOPE_RESET_FLAG() \ - do \ - { int __res \ - = atomic_exchange_rel (&THREAD_SELF->header.gscope_flag, \ - THREAD_GSCOPE_FLAG_UNUSED); \ - if (__res == THREAD_GSCOPE_FLAG_WAIT) \ - lll_futex_wake (&THREAD_SELF->header.gscope_flag, 1, LLL_PRIVATE); \ - } \ - while (0) -#define THREAD_GSCOPE_SET_FLAG() \ - do \ - { \ - THREAD_SELF->header.gscope_flag = THREAD_GSCOPE_FLAG_USED; \ - atomic_write_barrier (); \ - } \ - while (0) -#define THREAD_GSCOPE_WAIT() \ - GL(dl_wait_lookup_done) () - -#endif /* __ASSEMBLER__ */ - -#endif /* tls.h */ diff --git a/ports/sysdeps/m68k/preconfigure b/ports/sysdeps/m68k/preconfigure deleted file mode 100644 index 94fc1aabc2..0000000000 --- a/ports/sysdeps/m68k/preconfigure +++ /dev/null @@ -1,17 +0,0 @@ -# This fragment canonicalizes the machine names for m68k variants. - -case "$machine" in -m680?0) base_machine=m68k machine=m68k/m680x0/$machine ;; -m68k) variant=`(echo "#ifdef __mcoldfire__" - echo "coldfire" - echo "#else" - echo "m680x0/m68020" - echo "#endif") | - $CC $CFLAGS $CPPFLAGS -E - | - grep '^[a-z]'` - if test -z "$variant"; then - echo >&2 "Cannot determine m68k processor variant" - exit 1 - fi - base_machine=m68k machine=m68k/$variant ;; -esac diff --git a/ports/sysdeps/m68k/rawmemchr.S b/ports/sysdeps/m68k/rawmemchr.S deleted file mode 100644 index 8c1cdd3062..0000000000 --- a/ports/sysdeps/m68k/rawmemchr.S +++ /dev/null @@ -1,197 +0,0 @@ -/* rawmemchr (str, ch) -- Return pointer to first occurrence of CH in STR. - For Motorola 68000. - Copyright (C) 1999-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@gnu.org>. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <sysdep.h> -#include "asm-syntax.h" - - TEXT -ENTRY(__rawmemchr) - /* Save the callee-saved registers we use. */ - movel R(d2),MEM_PREDEC(sp) - cfi_adjust_cfa_offset (4) - movel R(d3),MEM_PREDEC(sp) - cfi_adjust_cfa_offset (4) - cfi_rel_offset (R(d2), 4) - cfi_rel_offset (R(d3), 0) - - /* Get string pointer and character. */ - movel MEM_DISP(sp,12),R(a0) - moveb MEM_DISP(sp,19),R(d0) - - /* Distribute the character to all bytes of a longword. */ - movel R(d0),R(d1) - lsll #8,R(d1) - moveb R(d0),R(d1) - movel R(d1),R(d0) - swap R(d0) - movew R(d1),R(d0) - - /* First search for the character one byte at a time until the - pointer is aligned to a longword boundary. */ - movel R(a0),R(d1) -#ifdef __mcoldfire__ - andl #3,R(d1) -#else - andw #3,R(d1) -#endif - beq L(L1) - cmpb MEM(a0),R(d0) - beq L(L9) - addql #1,R(a0) - -#ifdef __mcoldfire__ - subql #3,R(d1) -#else - subqw #3,R(d1) -#endif - beq L(L1) - cmpb MEM(a0),R(d0) - beq L(L9) - addql #1,R(a0) - -#ifdef __mcoldfire__ - addql #1,R(d1) -#else - addqw #1,R(d1) -#endif - beq L(L1) - cmpb MEM(a0),R(d0) - beq L(L9) - addql #1,R(a0) - -L(L1:) - /* Load the magic bits. Unlike the generic implementation we can - use the carry bit as the fourth hole. */ - movel #0xfefefeff,R(d3) - - /* We exit the loop if adding MAGIC_BITS to LONGWORD fails to - change any of the hole bits of LONGWORD. - - 1) Is this safe? Will it catch all the zero bytes? - Suppose there is a byte with all zeros. Any carry bits - propagating from its left will fall into the hole at its - least significant bit and stop. Since there will be no - carry from its most significant bit, the LSB of the - byte to the left will be unchanged, and the zero will be - detected. - - 2) Is this worthwhile? Will it ignore everything except - zero bytes? Suppose every byte of LONGWORD has a bit set - somewhere. There will be a carry into bit 8. If bit 8 - is set, this will carry into bit 16. If bit 8 is clear, - one of bits 9-15 must be set, so there will be a carry - into bit 16. Similarly, there will be a carry into bit - 24. If one of bits 24-31 is set, there will be a carry - into bit 32 (=carry flag), so all of the hole bits will - be changed. - - 3) But wait! Aren't we looking for C, not zero? - Good point. So what we do is XOR LONGWORD with a longword, - each of whose bytes is C. This turns each byte that is C - into a zero. */ - -L(L2:) - /* Get the longword in question. */ - movel MEM_POSTINC(a0),R(d1) - /* XOR with the byte we search for. */ - eorl R(d0),R(d1) - - /* Add the magic value. We get carry bits reported for each byte - which is not C. */ - movel R(d3),R(d2) - addl R(d1),R(d2) - - /* Check the fourth carry bit before it is clobbered by the next - XOR. If it is not set we have a hit. */ - bcc L(L8) - - /* We are only interested in carry bits that change due to the - previous add, so remove original bits. */ - eorl R(d1),R(d2) - - /* Now test for the other three overflow bits. - Set all non-carry bits. */ - orl R(d3),R(d2) - /* Add 1 to get zero if all carry bits were set. */ - addql #1,R(d2) - - /* If we don't get zero then at least one byte of the word equals - C. */ - bne L(L8) - - /* Get the longword in question. */ - movel MEM_POSTINC(a0),R(d1) - /* XOR with the byte we search for. */ - eorl R(d0),R(d1) - - /* Add the magic value. We get carry bits reported for each byte - which is not C. */ - movel R(d3),R(d2) - addl R(d1),R(d2) - - /* Check the fourth carry bit before it is clobbered by the next - XOR. If it is not set we have a hit. */ - bcc L(L8) - - /* We are only interested in carry bits that change due to the - previous add, so remove original bits */ - eorl R(d1),R(d2) - - /* Now test for the other three overflow bits. - Set all non-carry bits. */ - orl R(d3),R(d2) - /* Add 1 to get zero if all carry bits were set. */ - addql #1,R(d2) - - /* If we don't get zero then at least one byte of the word equals - C. */ - beq L(L2) - -L(L8:) - /* We have a hit. Check to see which byte it was. First - compensate for the autoincrement in the loop. */ - subql #4,R(a0) - - cmpb MEM(a0),R(d0) - beq L(L9) - addql #1,R(a0) - - cmpb MEM(a0),R(d0) - beq L(L9) - addql #1,R(a0) - - cmpb MEM(a0),R(d0) - beq L(L9) - addql #1,R(a0) - - /* Otherwise the fourth byte must equal C. */ -L(L9:) - movel R(a0),R(d0) - movel MEM_POSTINC(sp),R(d3) - cfi_adjust_cfa_offset (-4) - cfi_restore (R(d3)) - movel MEM_POSTINC(sp),R(d2) - cfi_adjust_cfa_offset (-4) - cfi_restore (R(d2)) - rts -END(__rawmemchr) - -libc_hidden_def (__rawmemchr) -weak_alias (__rawmemchr, rawmemchr) diff --git a/ports/sysdeps/m68k/setjmp.c b/ports/sysdeps/m68k/setjmp.c deleted file mode 100644 index cf742eecd0..0000000000 --- a/ports/sysdeps/m68k/setjmp.c +++ /dev/null @@ -1,70 +0,0 @@ -/* Copyright (C) 1991-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <setjmp.h> - -/* Save the current program position in ENV and return 0. */ -int -#if defined BSD_SETJMP -# undef setjmp -# define savemask 1 -setjmp (jmp_buf env) -#elif defined BSD__SETJMP -# undef _setjmp -# define savemask 0 -_setjmp (jmp_buf env) -#else -__sigsetjmp (jmp_buf env, int savemask) -#endif -{ - /* Save data registers D1 through D7. */ - asm volatile ("movem%.l %/d1-%/d7, %0" - : : "m" (env[0].__jmpbuf[0].__dregs[0])); - - /* Save return address in place of register A0. */ - env[0].__jmpbuf[0].__aregs[0] = __builtin_return_address (0); - - /* Save address registers A1 through A5. */ - asm volatile ("movem%.l %/a1-%/a5, %0" - : : "m" (env[0].__jmpbuf[0].__aregs[1])); - - /* Save caller's FP, not our own. */ - env[0].__jmpbuf[0].__fp = *(int **) __builtin_frame_address (0); - - /* Save caller's SP, not our own. */ - env[0].__jmpbuf[0].__sp = (int *) __builtin_frame_address (0) + 2; - -#if defined __HAVE_68881__ || defined __HAVE_FPU__ - /* Save floating-point (68881) registers FP0 through FP7. */ - asm volatile ("fmovem%.x %/fp0-%/fp7, %0" - : : "m" (env[0].__jmpbuf[0].__fpregs[0])); -#elif defined (__mcffpu__) - asm volatile ("fmovem %/fp0-%/fp7, %0" - : : "m" (env[0].__jmpbuf[0].__fpregs[0])); -#endif - -#if defined NOT_IN_libc && defined IS_IN_rtld - /* In ld.so we never save the signal mask. */ - return 0; -#else - /* Save the signal mask if requested. */ - return __sigjmp_save (env, savemask); -#endif -} -#if !defined BSD_SETJMP && !defined BSD__SETJMP -libc_hidden_def (__sigsetjmp) -#endif diff --git a/ports/sysdeps/m68k/shlib-versions b/ports/sysdeps/m68k/shlib-versions deleted file mode 100644 index b65b00b212..0000000000 --- a/ports/sysdeps/m68k/shlib-versions +++ /dev/null @@ -1 +0,0 @@ -m68k-.*-linux.* libgcc_s=2 diff --git a/ports/sysdeps/m68k/sotruss-lib.c b/ports/sysdeps/m68k/sotruss-lib.c deleted file mode 100644 index 7d4c72164d..0000000000 --- a/ports/sysdeps/m68k/sotruss-lib.c +++ /dev/null @@ -1,51 +0,0 @@ -/* Override generic sotruss-lib.c to define actual functions for m68k. - Copyright (C) 2012-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#define HAVE_ARCH_PLTENTER -#define HAVE_ARCH_PLTEXIT - -#include <elf/sotruss-lib.c> - -ElfW(Addr) -la_m68k_gnu_pltenter (Elf32_Sym *sym __attribute__ ((unused)), - unsigned int ndx __attribute__ ((unused)), - uintptr_t *refcook, uintptr_t *defcook, - La_m68k_regs *regs, unsigned int *flags, - const char *symname, long int *framesizep) -{ - unsigned long int *sp = (unsigned long int *) regs->lr_sp; - - print_enter (refcook, defcook, symname, sp[1], sp[2], sp[3], *flags); - - /* No need to copy anything, we will not need the parameters in any case. */ - *framesizep = 0; - - return sym->st_value; -} - -unsigned int -la_m68k_gnu_pltexit (Elf32_Sym *sym, unsigned int ndx, uintptr_t *refcook, - uintptr_t *defcook, - const struct La_m68k_regs *inregs, - struct La_m68k_retval *outregs, - const char *symname) -{ - print_exit (refcook, defcook, symname, outregs->lrv_d0); - - return 0; -} diff --git a/ports/sysdeps/m68k/stackinfo.h b/ports/sysdeps/m68k/stackinfo.h deleted file mode 100644 index 7ad911f1a7..0000000000 --- a/ports/sysdeps/m68k/stackinfo.h +++ /dev/null @@ -1,41 +0,0 @@ -/* Copyright (C) 1999-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -/* This file contains a bit of information about the stack allocation - of the processor. */ - -#ifndef _STACKINFO_H -#define _STACKINFO_H 1 - -#include <elf.h> - -/* On m68k the stack grows down. */ -#define _STACK_GROWS_DOWN 1 - -/* Default to an executable stack. PF_X can be overridden if PT_GNU_STACK - is present, but it is presumed absent. */ -#define DEFAULT_STACK_PERMS (PF_R|PF_W|PF_X) - -/* Access to the stack pointer. */ -#define stackinfo_get_sp() \ - ({ void *p__; asm volatile ("move.l %%sp, %0" : "=r" (p__)); p__; }) -#define stackinfo_sub_sp(ptr) \ - ({ ptrdiff_t d__; \ - asm volatile ("sub.l %%sp, %0" : "=r" (d__) : "0" (ptr)); \ - d__; }) - -#endif /* stackinfo.h */ diff --git a/ports/sysdeps/m68k/start.S b/ports/sysdeps/m68k/start.S deleted file mode 100644 index fd33ecdea8..0000000000 --- a/ports/sysdeps/m68k/start.S +++ /dev/null @@ -1,120 +0,0 @@ -/* Startup code compliant to the ELF m68k ABI. - Copyright (C) 1996-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - In addition to the permissions in the GNU Lesser General Public - License, the Free Software Foundation gives you unlimited - permission to link the compiled version of this file with other - programs, and to distribute those programs without any restriction - coming from the use of this file. (The GNU Lesser General Public - License restrictions do apply in other respects; for example, they - cover modification of the file, and distribution when not linked - into another program.) - - Note that people who make modified versions of this file are not - obligated to grant this special exception for their modified - versions; it is their choice whether to do so. The GNU Lesser - General Public License gives permission to release a modified - version without this exception; this exception also makes it - possible to release a modified version which carries forward this - exception. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -/* This is the canonical entry point, usually the first thing in the text - segment. The SVR4/m68k ABI says that when the entry point runs, - most registers' values are unspecified, except for: - - %a1 Contains a function pointer to be registered with `atexit'. - This is how the dynamic linker arranges to have DT_FINI - functions called for shared libraries that have been loaded - before this code runs. - - %sp The stack contains the arguments and environment: - 0(%sp) argc - 4(%sp) argv[0] - ... - (4*argc)(%sp) NULL - (4*(argc+1))(%sp) envp[0] - ... - NULL -*/ - -#include <sysdep.h> - - .text - .globl _start - .type _start,@function -_start: - /* Clear the frame pointer. The ABI suggests this be done, to mark - the outermost frame obviously. */ - sub.l %fp, %fp - - /* Extract the arguments as encoded on the stack and set up the - arguments for `main': argc, argv. envp will be determined - later in __libc_start_main. */ - move.l (%sp)+, %d0 /* Pop the argument count. */ - move.l %sp, %a0 /* The argument vector starts just at the - current stack top. */ - - /* Provide the highest stack address to the user code (for stacks - which grow downward). */ - pea (%sp) - - pea (%a1) /* Push address of the shared library - termination function. */ - -#ifdef SHARED - /* Load PIC register. */ - LOAD_GOT (%a5) - - /* Push the address of our own entry points to `.fini' and - `.init'. */ - move.l __libc_csu_fini@GOT(%a5), -(%sp) - move.l __libc_csu_init@GOT(%a5), -(%sp) - - pea (%a0) /* Push second argument: argv. */ - move.l %d0, -(%sp) /* Push first argument: argc. */ - - move.l main@GOT(%a5), -(%sp) - - /* Call the user's main function, and exit with its value. But - let the libc call main. */ - jbsr __libc_start_main@PLTPC -#else - /* Push the address of our own entry points to `.fini' and - `.init'. */ - pea __libc_csu_fini - pea __libc_csu_init - - pea (%a0) /* Push second argument: argv. */ - move.l %d0, -(%sp) /* Push first argument: argc. */ - - pea main - - /* Call the user's main function, and exit with its value. But - let the libc call main. */ - jbsr __libc_start_main -#endif - - illegal /* Crash if somehow `exit' does return. */ - -/* Define a symbol for the first piece of initialized data. */ - .data - .globl __data_start -__data_start: - .long 0 - .weak data_start - data_start = __data_start diff --git a/ports/sysdeps/m68k/strchr.S b/ports/sysdeps/m68k/strchr.S deleted file mode 100644 index a109b31541..0000000000 --- a/ports/sysdeps/m68k/strchr.S +++ /dev/null @@ -1,281 +0,0 @@ -/* strchr (str, ch) -- Return pointer to first occurrence of CH in STR. - For Motorola 68000. - Copyright (C) 1999-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@gnu.org>. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <sysdep.h> -#include "asm-syntax.h" - - TEXT -ENTRY(strchr) - /* Save the callee-saved registers we use. */ - movel R(d2),MEM_PREDEC(sp) - cfi_adjust_cfa_offset (4) - movel R(d3),MEM_PREDEC(sp) - cfi_adjust_cfa_offset (4) - cfi_rel_offset (R(d2),4) - cfi_rel_offset (R(d3),0) - - /* Get string pointer and character. */ - movel MEM_DISP(sp,12),R(a0) - moveb MEM_DISP(sp,19),R(d0) - - /* Distribute the character to all bytes of a longword. */ - movel R(d0),R(d1) - lsll #8,R(d1) - moveb R(d0),R(d1) - movel R(d1),R(d0) - swap R(d0) - movew R(d1),R(d0) - - /* First search for the character one byte at a time until the - pointer is aligned to a longword boundary. */ - movel R(a0),R(d1) -#ifdef __mcoldfire__ - andl #3,R(d1) -#else - andw #3,R(d1) -#endif - beq L(L1) - moveb MEM(a0),R(d2) - cmpb R(d0),R(d2) - beq L(L9) - tstb R(d2) - beq L(L3) - addql #1,R(a0) - -#ifdef __mcoldfire__ - subql #3,R(d1) -#else - subqw #3,R(d1) -#endif - beq L(L1) - moveb MEM(a0),R(d2) - cmpb R(d0),R(d2) - beq L(L9) - tstb R(d2) - beq L(L3) - addql #1,R(a0) - -#ifdef __mcoldfire__ - addql #1,R(d1) -#else - addqw #1,R(d1) -#endif - beq L(L1) - moveb MEM(a0),R(d2) - cmpb R(d0),R(d2) - beq L(L9) - tstb R(d2) - beq L(L3) - addql #1,R(a0) - -L(L1:) - /* Load the magic bits. Unlike the generic implementation we can - use the carry bit as the fourth hole. */ - movel #0xfefefeff,R(d3) - - /* We exit the loop if adding MAGIC_BITS to LONGWORD fails to - change any of the hole bits of LONGWORD. - - 1) Is this safe? Will it catch all the zero bytes? - Suppose there is a byte with all zeros. Any carry bits - propagating from its left will fall into the hole at its - least significant bit and stop. Since there will be no - carry from its most significant bit, the LSB of the - byte to the left will be unchanged, and the zero will be - detected. - - 2) Is this worthwhile? Will it ignore everything except - zero bytes? Suppose every byte of LONGWORD has a bit set - somewhere. There will be a carry into bit 8. If bit 8 - is set, this will carry into bit 16. If bit 8 is clear, - one of bits 9-15 must be set, so there will be a carry - into bit 16. Similarly, there will be a carry into bit - 24. If one of bits 24-31 is set, there will be a carry - into bit 32 (=carry flag), so all of the hole bits will - be changed. - - 3) But wait! Aren't we looking for C, not zero? - Good point. So what we do is XOR LONGWORD with a longword, - each of whose bytes is C. This turns each byte that is C - into a zero. */ - -L(L2:) - /* Get the longword in question. */ - movel MEM_POSTINC(a0),R(d1) - /* XOR with the byte we search for. */ - eorl R(d0),R(d1) - - /* Add the magic value. We get carry bits reported for each byte - which is not C. */ - movel R(d3),R(d2) - addl R(d1),R(d2) - - /* Check the fourth carry bit before it is clobbered by the next - XOR. If it is not set we have a hit. */ - bcc L(L8) - - /* We are only interested in carry bits that change due to the - previous add, so remove original bits. */ - eorl R(d1),R(d2) - - /* Now test for the other three overflow bits. - Set all non-carry bits. */ - orl R(d3),R(d2) - /* Add 1 to get zero if all carry bits were set. */ - addql #1,R(d2) - - /* If we don't get zero then at least one byte of the word equals - C. */ - bne L(L8) - - /* Next look for a NUL byte. - Restore original longword without reload. */ - eorl R(d0),R(d1) - /* Add the magic value. We get carry bits reported for each byte - which is not NUL. */ - movel R(d3),R(d2) - addl R(d1),R(d2) - - /* Check the fourth carry bit before it is clobbered by the next - XOR. If it is not set we have a hit, and return NULL. */ - bcc L(L3) - - /* We are only interested in carry bits that change due to the - previous add, so remove original bits. */ - eorl R(d1),R(d2) - - /* Now test for the other three overflow bits. - Set all non-carry bits. */ - orl R(d3),R(d2) - /* Add 1 to get zero if all carry bits were set. */ - addql #1,R(d2) - - /* If we don't get zero then at least one byte of the word was NUL - and we return NULL. Otherwise continue with the next longword. */ - bne L(L3) - - /* Get the longword in question. */ - movel MEM_POSTINC(a0),R(d1) - /* XOR with the byte we search for. */ - eorl R(d0),R(d1) - - /* Add the magic value. We get carry bits reported for each byte - which is not C. */ - movel R(d3),R(d2) - addl R(d1),R(d2) - - /* Check the fourth carry bit before it is clobbered by the next - XOR. If it is not set we have a hit. */ - bcc L(L8) - - /* We are only interested in carry bits that change due to the - previous add, so remove original bits */ - eorl R(d1),R(d2) - - /* Now test for the other three overflow bits. - Set all non-carry bits. */ - orl R(d3),R(d2) - /* Add 1 to get zero if all carry bits were set. */ - addql #1,R(d2) - - /* If we don't get zero then at least one byte of the word equals - C. */ - bne L(L8) - - /* Next look for a NUL byte. - Restore original longword without reload. */ - eorl R(d0),R(d1) - /* Add the magic value. We get carry bits reported for each byte - which is not NUL. */ - movel R(d3),R(d2) - addl R(d1),R(d2) - - /* Check the fourth carry bit before it is clobbered by the next - XOR. If it is not set we have a hit, and return NULL. */ - bcc L(L3) - - /* We are only interested in carry bits that change due to the - previous add, so remove original bits */ - eorl R(d1),R(d2) - - /* Now test for the other three overflow bits. - Set all non-carry bits. */ - orl R(d3),R(d2) - /* Add 1 to get zero if all carry bits were set. */ - addql #1,R(d2) - - /* If we don't get zero then at least one byte of the word was NUL - and we return NULL. Otherwise continue with the next longword. */ - beq L(L2) - -L(L3:) - /* Return NULL. */ - clrl R(d0) - movel R(d0),R(a0) - movel MEM_POSTINC(sp),R(d3) - cfi_remember_state - cfi_adjust_cfa_offset (-4) - cfi_restore (R(d3)) - movel MEM_POSTINC(sp),R(d2) - cfi_adjust_cfa_offset (-4) - cfi_restore (R(d2)) - rts - - cfi_restore_state -L(L8:) - /* We have a hit. Check to see which byte it was. First - compensate for the autoincrement in the loop. */ - subql #4,R(a0) - - moveb MEM(a0),R(d1) - cmpb R(d0),R(d1) - beq L(L9) - tstb R(d1) - beq L(L3) - addql #1,R(a0) - - moveb MEM(a0),R(d1) - cmpb R(d0),R(d1) - beq L(L9) - tstb R(d1) - beq L(L3) - addql #1,R(a0) - - moveb MEM(a0),R(d1) - cmpb R(d0),R(d1) - beq L(L9) - tstb R(d1) - beq L(L3) - addql #1,R(a0) - - /* Otherwise the fourth byte must equal C. */ -L(L9:) - movel R(a0),R(d0) - movel MEM_POSTINC(sp),R(d3) - cfi_adjust_cfa_offset (-4) - cfi_restore (R(d3)) - movel MEM_POSTINC(sp),R(d2) - cfi_adjust_cfa_offset (-4) - cfi_restore (R(d2)) - rts -END(strchr) - -weak_alias (strchr, index) -libc_hidden_builtin_def (strchr) diff --git a/ports/sysdeps/m68k/strchrnul.S b/ports/sysdeps/m68k/strchrnul.S deleted file mode 100644 index f90d7f093e..0000000000 --- a/ports/sysdeps/m68k/strchrnul.S +++ /dev/null @@ -1,267 +0,0 @@ -/* strchrnul (str, ch) -- Return pointer to first occurrence of CH in STR - or the final NUL byte. - For Motorola 68000. - Copyright (C) 1999-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@gnu.org>. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <sysdep.h> -#include "asm-syntax.h" - - TEXT -ENTRY(__strchrnul) - /* Save the callee-saved registers we use. */ - movel R(d2),MEM_PREDEC(sp) - cfi_adjust_cfa_offset (4) - movel R(d3),MEM_PREDEC(sp) - cfi_adjust_cfa_offset (4) - cfi_rel_offset (R(d2), 4) - cfi_rel_offset (R(d3), 0) - - /* Get string pointer and character. */ - movel MEM_DISP(sp,12),R(a0) - moveb MEM_DISP(sp,19),R(d0) - - /* Distribute the character to all bytes of a longword. */ - movel R(d0),R(d1) - lsll #8,R(d1) - moveb R(d0),R(d1) - movel R(d1),R(d0) - swap R(d0) - movew R(d1),R(d0) - - /* First search for the character one byte at a time until the - pointer is aligned to a longword boundary. */ - movel R(a0),R(d1) -#ifdef __mcoldfire__ - andl #3,R(d1) -#else - andw #3,R(d1) -#endif - beq L(L1) - moveb MEM(a0),R(d2) - cmpb R(d0),R(d2) - beq L(L9) - tstb R(d2) - beq L(L9) - addql #1,R(a0) - -#ifdef __mcoldfire__ - subql #3,R(d1) -#else - subqw #3,R(d1) -#endif - beq L(L1) - moveb MEM(a0),R(d2) - cmpb R(d0),R(d2) - beq L(L9) - tstb R(d2) - beq L(L9) - addql #1,R(a0) - -#ifdef __mcoldfire__ - addql #1,R(d1) -#else - addqw #1,R(d1) -#endif - beq L(L1) - moveb MEM(a0),R(d2) - cmpb R(d0),R(d2) - beq L(L9) - tstb R(d2) - beq L(L9) - addql #1,R(a0) - -L(L1:) - /* Load the magic bits. Unlike the generic implementation we can - use the carry bit as the fourth hole. */ - movel #0xfefefeff,R(d3) - - /* We exit the loop if adding MAGIC_BITS to LONGWORD fails to - change any of the hole bits of LONGWORD. - - 1) Is this safe? Will it catch all the zero bytes? - Suppose there is a byte with all zeros. Any carry bits - propagating from its left will fall into the hole at its - least significant bit and stop. Since there will be no - carry from its most significant bit, the LSB of the - byte to the left will be unchanged, and the zero will be - detected. - - 2) Is this worthwhile? Will it ignore everything except - zero bytes? Suppose every byte of LONGWORD has a bit set - somewhere. There will be a carry into bit 8. If bit 8 - is set, this will carry into bit 16. If bit 8 is clear, - one of bits 9-15 must be set, so there will be a carry - into bit 16. Similarly, there will be a carry into bit - 24. If one of bits 24-31 is set, there will be a carry - into bit 32 (=carry flag), so all of the hole bits will - be changed. - - 3) But wait! Aren't we looking for C, not zero? - Good point. So what we do is XOR LONGWORD with a longword, - each of whose bytes is C. This turns each byte that is C - into a zero. */ - -L(L2:) - /* Get the longword in question. */ - movel MEM_POSTINC(a0),R(d1) - /* XOR with the byte we search for. */ - eorl R(d0),R(d1) - - /* Add the magic value. We get carry bits reported for each byte - which is not C. */ - movel R(d3),R(d2) - addl R(d1),R(d2) - - /* Check the fourth carry bit before it is clobbered by the next - XOR. If it is not set we have a hit. */ - bcc L(L8) - - /* We are only interested in carry bits that change due to the - previous add, so remove original bits. */ - eorl R(d1),R(d2) - - /* Now test for the other three overflow bits. - Set all non-carry bits. */ - orl R(d3),R(d2) - /* Add 1 to get zero if all carry bits were set. */ - addql #1,R(d2) - - /* If we don't get zero then at least one byte of the word equals - C. */ - bne L(L8) - - /* Next look for a NUL byte. - Restore original longword without reload. */ - eorl R(d0),R(d1) - /* Add the magic value. We get carry bits reported for each byte - which is not NUL. */ - movel R(d3),R(d2) - addl R(d1),R(d2) - - /* Check the fourth carry bit before it is clobbered by the next - XOR. If it is not set we have a hit. */ - bcc L(L8) - - /* We are only interested in carry bits that change due to the - previous add, so remove original bits. */ - eorl R(d1),R(d2) - - /* Now test for the other three overflow bits. - Set all non-carry bits. */ - orl R(d3),R(d2) - /* Add 1 to get zero if all carry bits were set. */ - addql #1,R(d2) - - /* If we don't get zero then at least one byte of the word was - NUL. Otherwise continue with the next longword. */ - bne L(L8) - - /* Get the longword in question. */ - movel MEM_POSTINC(a0),R(d1) - /* XOR with the byte we search for. */ - eorl R(d0),R(d1) - - /* Add the magic value. We get carry bits reported for each byte - which is not C. */ - movel R(d3),R(d2) - addl R(d1),R(d2) - - /* Check the fourth carry bit before it is clobbered by the next - XOR. If it is not set we have a hit. */ - bcc L(L8) - - /* We are only interested in carry bits that change due to the - previous add, so remove original bits */ - eorl R(d1),R(d2) - - /* Now test for the other three overflow bits. - Set all non-carry bits. */ - orl R(d3),R(d2) - /* Add 1 to get zero if all carry bits were set. */ - addql #1,R(d2) - - /* If we don't get zero then at least one byte of the word equals - C. */ - bne L(L8) - - /* Next look for a NUL byte. - Restore original longword without reload. */ - eorl R(d0),R(d1) - /* Add the magic value. We get carry bits reported for each byte - which is not NUL. */ - movel R(d3),R(d2) - addl R(d1),R(d2) - - /* Check the fourth carry bit before it is clobbered by the next - XOR. If it is not set we have a hit. */ - bcc L(L8) - - /* We are only interested in carry bits that change due to the - previous add, so remove original bits */ - eorl R(d1),R(d2) - - /* Now test for the other three overflow bits. - Set all non-carry bits. */ - orl R(d3),R(d2) - /* Add 1 to get zero if all carry bits were set. */ - addql #1,R(d2) - - /* If we don't get zero then at least one byte of the word was - NUL. Otherwise continue with the next longword. */ - beq L(L2) - -L(L8:) - /* We have a hit. Check to see which byte it was. First - compensate for the autoincrement in the loop. */ - subql #4,R(a0) - - moveb MEM(a0),R(d1) - cmpb R(d0),R(d1) - beq L(L9) - tstb R(d1) - beq L(L9) - addql #1,R(a0) - - moveb MEM(a0),R(d1) - cmpb R(d0),R(d1) - beq L(L9) - tstb R(d1) - beq L(L9) - addql #1,R(a0) - - moveb MEM(a0),R(d1) - cmpb R(d0),R(d1) - beq L(L9) - tstb R(d1) - beq L(L9) - addql #1,R(a0) - - /* Otherwise the fourth byte must equal C or be NUL. */ -L(L9:) - movel R(a0),R(d0) - movel MEM_POSTINC(sp),R(d3) - cfi_adjust_cfa_offset (-4) - cfi_restore (R(d3)) - movel MEM_POSTINC(sp),R(d2) - cfi_adjust_cfa_offset (-4) - cfi_restore (R(d2)) - rts -END(__strchrnul) - -weak_alias (__strchrnul, strchrnul) diff --git a/ports/sysdeps/m68k/sys/ucontext.h b/ports/sysdeps/m68k/sys/ucontext.h deleted file mode 100644 index 6585fe9d40..0000000000 --- a/ports/sysdeps/m68k/sys/ucontext.h +++ /dev/null @@ -1,107 +0,0 @@ -/* Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -/* System V/m68k ABI compliant context switching support. */ - -#ifndef _SYS_UCONTEXT_H -#define _SYS_UCONTEXT_H 1 - -#include <features.h> -#include <signal.h> - -/* Type for general register. */ -typedef int greg_t; - -/* Number of general registers. */ -#define NGREG 18 - -/* Container for all general registers. */ -typedef greg_t gregset_t[NGREG]; - -/* Number of each register is the `gregset_t' array. */ -enum -{ - R_D0 = 0, -#define R_D0 R_D0 - R_D1 = 1, -#define R_D1 R_D1 - R_D2 = 2, -#define R_D2 R_D2 - R_D3 = 3, -#define R_D3 R_D3 - R_D4 = 4, -#define R_D4 R_D4 - R_D5 = 5, -#define R_D5 R_D5 - R_D6 = 6, -#define R_D6 R_D6 - R_D7 = 7, -#define R_D7 R_D7 - R_A0 = 8, -#define R_A0 R_A0 - R_A1 = 9, -#define R_A1 R_A1 - R_A2 = 10, -#define R_A2 R_A2 - R_A3 = 11, -#define R_A3 R_A3 - R_A4 = 12, -#define R_A4 R_A4 - R_A5 = 13, -#define R_A5 R_A5 - R_A6 = 14, -#define R_A6 R_A6 - R_A7 = 15, -#define R_A7 R_A7 - R_SP = 15, -#define R_SP R_SP - R_PC = 16, -#define R_PC R_PC - R_PS = 17 -#define R_PS R_PS -}; - -/* Structure to describe FPU registers. */ -typedef struct fpregset -{ - int f_pcr; - int f_psr; - int f_fpiaddr; - int f_fpregs[8][3]; -} fpregset_t; - -/* Context to describe whole processor state. */ -typedef struct -{ - int version; - gregset_t gregs; -} mcontext_t; - -#define MCONTEXT_VERSION 1 - -/* Userlevel context. */ -typedef struct ucontext -{ - unsigned long int uc_flags; - struct ucontext *uc_link; - __sigset_t uc_sigmask; - stack_t uc_stack; - mcontext_t uc_mcontext; - long int uc_filler[201]; -} ucontext_t; - -#endif /* sys/ucontext.h */ diff --git a/ports/sysdeps/m68k/sysdep.h b/ports/sysdeps/m68k/sysdep.h deleted file mode 100644 index 31558decde..0000000000 --- a/ports/sysdeps/m68k/sysdep.h +++ /dev/null @@ -1,74 +0,0 @@ -/* Assembler macros for m68k. - Copyright (C) 1998-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <sysdeps/generic/sysdep.h> - -#ifdef __ASSEMBLER__ - -/* Define an entry point visible from C. - - There is currently a bug in gdb which prevents us from specifying - incomplete stabs information. Fake some entries here which specify - the current source file. */ -# define ENTRY(name) \ - .globl C_SYMBOL_NAME(name); \ - .type C_SYMBOL_NAME(name),@function; \ - .p2align 2; \ - C_LABEL(name) \ - cfi_startproc; \ - CALL_MCOUNT - -# undef END -# define END(name) \ - cfi_endproc; \ - .size name,.-name - - -/* If compiled for profiling, call `_mcount' at the start of each function. */ -# ifdef PROF -/* The mcount code relies on a normal frame pointer being on the stack - to locate our caller, so push one just for its benefit. */ -# define CALL_MCOUNT \ - move.l %fp, -(%sp); \ - cfi_adjust_cfa_offset (4); cfi_rel_offset (%a6, 0); \ - move.l %sp, %fp; \ - jbsr JUMPTARGET (_mcount); \ - move.l (%sp)+, %fp; \ - cfi_adjust_cfa_offset (-4); cfi_restore (%a6); -# else -# define CALL_MCOUNT /* Do nothing. */ -# endif - -# define PSEUDO(name, syscall_name, args) \ - .globl __syscall_error; \ - ENTRY (name) \ - DO_CALL (syscall_name, args); \ - jcc JUMPTARGET(__syscall_error) - -# undef PSEUDO_END -# define PSEUDO_END(name) \ - END (name) - -# undef JUMPTARGET -# ifdef PIC -# define JUMPTARGET(name) name##@PLTPC -# else -# define JUMPTARGET(name) name -# endif - -#endif /* __ASSEMBLER__ */ diff --git a/ports/sysdeps/m68k/tls-macros.h b/ports/sysdeps/m68k/tls-macros.h deleted file mode 100644 index 84401d234a..0000000000 --- a/ports/sysdeps/m68k/tls-macros.h +++ /dev/null @@ -1,69 +0,0 @@ -/* Macros for accessing thread-local storage. m68k version. - Copyright (C) 2010-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Maxim Kuvyrkov <maxim@codesourcery.com>, 2010. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#define TLS_GD(x) \ - ({ \ - void *__result; \ - extern void *__tls_get_addr (void *); \ - \ - asm ("movel #_GLOBAL_OFFSET_TABLE_@GOTPC, %0\n\t" \ - "lea (-6, %%pc, %0), %0\n\t" \ - "lea " #x "@TLSGD(%0), %0" \ - : "=&a" (__result)); \ - (int *) __tls_get_addr (__result); }) - -#define TLS_LD(x) \ - ({ \ - char *__tp; \ - int __offset; \ - extern void *__tls_get_addr (void *); \ - \ - asm ("movel #_GLOBAL_OFFSET_TABLE_@GOTPC, %0\n\t" \ - "lea (-6, %%pc, %0), %0\n\t" \ - "lea " #x "@TLSLDM(%0), %0" \ - : "=&a" (__tp)); \ - __tp = (char *) __tls_get_addr (__tp); \ - asm ("movel #" #x "@TLSLDO, %0" \ - : "=a" (__offset)); \ - (int *) (__tp + __offset); }) - -#define TLS_IE(x) \ - ({ \ - char *__tp; \ - int __offset; \ - extern void * __m68k_read_tp (void); \ - \ - __tp = (char *) __m68k_read_tp (); \ - asm ("movel #_GLOBAL_OFFSET_TABLE_@GOTPC, %0\n\t" \ - "lea (-6, %%pc, %0), %0\n\t" \ - "movel " #x "@TLSIE(%0), %0" \ - : "=&a" (__offset)); \ - (int *) (__tp + __offset); }) - -#define TLS_LE(x) \ - ({ \ - char *__tp; \ - int __offset; \ - extern void * __m68k_read_tp (void); \ - \ - __tp = (char *) __m68k_read_tp (); \ - asm ("movel #" #x "@TLSLE, %0" \ - : "=a" (__offset)); \ - (int *) (__tp + __offset); }) - diff --git a/ports/sysdeps/m68k/tst-audit.h b/ports/sysdeps/m68k/tst-audit.h deleted file mode 100644 index 2ef31dcb40..0000000000 --- a/ports/sysdeps/m68k/tst-audit.h +++ /dev/null @@ -1,24 +0,0 @@ -/* Definitions for testing PLT entry/exit auditing. m68k version. - Copyright (C) 2006-2014 Free Software Foundation, Inc. - - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#define pltenter la_m68k_gnu_pltenter -#define pltexit la_m68k_gnu_pltexit -#define La_regs La_m68k_regs -#define La_retval La_m68k_retval -#define int_retval lrv_d0 diff --git a/ports/sysdeps/m68k/wcpcpy.c b/ports/sysdeps/m68k/wcpcpy.c deleted file mode 100644 index 55e7c53aac..0000000000 --- a/ports/sysdeps/m68k/wcpcpy.c +++ /dev/null @@ -1,36 +0,0 @@ -/* Copyright (C) 1996-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1996. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -/* The generic version of this file assumes that __alignof__(wchar_t) == - sizeof (wchar_t). We therefore use this port-specific implementation - instead. */ -#include <wchar.h> - -/* Copy SRC to DEST, returning the address of the terminating L'\0' in - DEST. */ -wchar_t * -__wcpcpy (wchar_t *dest, const wchar_t *src) -{ - do - ; - while ((*dest++ = *src++)); - - return dest - 1; -} - -weak_alias (__wcpcpy, wcpcpy) diff --git a/ports/sysdeps/m68k/wcpcpy_chk.c b/ports/sysdeps/m68k/wcpcpy_chk.c deleted file mode 100644 index 5d2739604b..0000000000 --- a/ports/sysdeps/m68k/wcpcpy_chk.c +++ /dev/null @@ -1,35 +0,0 @@ -/* Copyright (C) 1996-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1996. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -/* The generic version of this file assumes that __alignof__(wchar_t) == - sizeof (wchar_t). We therefore use this port-specific implementation - instead. */ -#include <wchar.h> - -/* Copy SRC to DEST, returning the address of the terminating L'\0' in - DEST. Check for overflows. */ -wchar_t * -__wcpcpy_chk (wchar_t *dest, const wchar_t *src, size_t destlen) -{ - do - if (destlen-- == 0) - __chk_fail (); - while ((*dest++ = *src++)); - - return dest - 1; -} diff --git a/ports/sysdeps/unix/sysv/linux/m68k/Makefile b/ports/sysdeps/unix/sysv/linux/m68k/Makefile deleted file mode 100644 index de27824a57..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/Makefile +++ /dev/null @@ -1,24 +0,0 @@ -# Linux/m68k uses Motorola asm syntax and the ELF format. - -m68k-syntax-flag = -DMOTOROLA_SYNTAX - -ifeq ($(subdir),csu) -sysdep_routines += m68k-helpers -endif - -ifeq ($(subdir),misc) -sysdep_routines += mremap -sysdep_headers += sys/reg.h -endif - -ifeq ($(subdir),elf) -sysdep-dl-routines += dl-static -sysdep_routines += dl-vdso libc-m68k-vdso dl-static -sysdep-rtld-routines += m68k-vdso dl-static -sysdep-others += lddlibc4 -install-bin += lddlibc4 -endif - -ifeq ($(subdir),resource) -sysdep_routines += oldgetrlimit64 -endif diff --git a/ports/sysdeps/unix/sysv/linux/m68k/Versions b/ports/sysdeps/unix/sysv/linux/m68k/Versions deleted file mode 100644 index 7ecc96ea97..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/Versions +++ /dev/null @@ -1,54 +0,0 @@ -ld { - GLIBC_PRIVATE { - _dl_var_init; - } -} -libc { - GLIBC_2.0 { - # Exception handling support functions from libgcc - __register_frame; __register_frame_table; __deregister_frame; - __frame_state_for; __register_frame_info_table; - - # c* - cacheflush; - } - GLIBC_2.2 { - # functions used in other libraries - __xstat64; __fxstat64; __lxstat64; - - # a* - alphasort64; - - # g* - glob64; - - # New rlimit interface - getrlimit; setrlimit; getrlimit64; - - # r* - readdir64; readdir64_r; - - # s* - scandir64; - - # v* - versionsort64; - } - GLIBC_2.11 { - fallocate64; - } - GLIBC_2.12 { - __m68k_read_tp; - } - GLIBC_PRIVATE { - __vdso_atomic_cmpxchg_32; __vdso_atomic_barrier; - } -} - -ld { - GLIBC_PRIVATE { - __rtld___vdso_read_tp; - __rtld___vdso_atomic_cmpxchg_32; - __rtld___vdso_atomic_barrier; - } -} diff --git a/ports/sysdeps/unix/sysv/linux/m68k/____longjmp_chk.c b/ports/sysdeps/unix/sysv/linux/m68k/____longjmp_chk.c deleted file mode 100644 index 8c31c1957d..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/____longjmp_chk.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright (C) 2009-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <stdio.h> -#include <signal.h> -#include <sysdep.h> -#define __longjmp ____longjmp_chk -#define CHECK_SP(sp) \ - do { \ - register unsigned long this_sp asm ("sp"); \ - if ((unsigned long) (sp) < this_sp) \ - { \ - struct sigaltstack oss; \ - INTERNAL_SYSCALL_DECL (err); \ - int result = INTERNAL_SYSCALL (sigaltstack, err, 2, NULL, &oss); \ - if (!INTERNAL_SYSCALL_ERROR_P (result, err) \ - && ((oss.ss_flags & SS_ONSTACK) == 0 \ - || ((unsigned long) oss.ss_sp + oss.ss_size \ - - (unsigned long) (sp)) < oss.ss_size)) \ - __fortify_fail ("longjmp causes uninitialized stack frame"); \ - } \ - } while (0) - -#include <__longjmp.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/alphasort64.c b/ports/sysdeps/unix/sysv/linux/m68k/alphasort64.c deleted file mode 100644 index 0b5ae47d2f..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/alphasort64.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/alphasort64.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/bits/a.out.h b/ports/sysdeps/unix/sysv/linux/m68k/bits/a.out.h deleted file mode 100644 index 0fb52c3815..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/bits/a.out.h +++ /dev/null @@ -1,3 +0,0 @@ -#ifndef __A_OUT_GNU_H__ -# error "Never use <bits/a.out.h> directly; include <a.out.h> instead." -#endif diff --git a/ports/sysdeps/unix/sysv/linux/m68k/bits/fcntl.h b/ports/sysdeps/unix/sysv/linux/m68k/bits/fcntl.h deleted file mode 100644 index 1238865603..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/bits/fcntl.h +++ /dev/null @@ -1,54 +0,0 @@ -/* O_*, F_*, FD_* bit values for Linux. - Copyright (C) 2000-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef _FCNTL_H -# error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." -#endif - -#define __O_DIRECTORY 040000 /* Must be a directory. */ -#define __O_NOFOLLOW 0100000 /* Do not follow links. */ -#define __O_DIRECT 0200000 /* Direct disk access. */ -#define __O_LARGEFILE 0400000 - -struct flock - { - short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */ - short int l_whence; /* Where `l_start' is relative to (like `lseek'). */ -#ifndef __USE_FILE_OFFSET64 - __off_t l_start; /* Offset where the lock begins. */ - __off_t l_len; /* Size of the locked area; zero means until EOF. */ -#else - __off64_t l_start; /* Offset where the lock begins. */ - __off64_t l_len; /* Size of the locked area; zero means until EOF. */ -#endif - __pid_t l_pid; /* Process holding the lock. */ - }; - -#ifdef __USE_LARGEFILE64 -struct flock64 - { - short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */ - short int l_whence; /* Where `l_start' is relative to (like `lseek'). */ - __off64_t l_start; /* Offset where the lock begins. */ - __off64_t l_len; /* Size of the locked area; zero means until EOF. */ - __pid_t l_pid; /* Process holding the lock. */ - }; -#endif - -/* Include generic Linux declarations. */ -#include <bits/fcntl-linux.h> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/bits/m68k-vdso.h b/ports/sysdeps/unix/sysv/linux/m68k/bits/m68k-vdso.h deleted file mode 100644 index f967524e2e..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/bits/m68k-vdso.h +++ /dev/null @@ -1,60 +0,0 @@ -/* Resolve function pointers to VDSO functions. - Copyright (C) 2010-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Maxim Kuvyrkov <maxim@codesourcery.com>, 2010. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - - -#ifndef _M68K_VDSO_H -#define _M68K_VDSO_H - -#ifdef SHARED - -# ifdef IS_IN_rtld -# define M68K_VDSO_SYMBOL(name) __rtld_##name -# define STR_M68K_VDSO_SYMBOL(name) "__rtld_" #name -# else -# define M68K_VDSO_SYMBOL(name) name -# define STR_M68K_VDSO_SYMBOL(name) #name -# endif - -# ifndef __ASSEMBLER__ - -/* We define __rtld_* copies for rtld. - We need them visible in libc to initialize. */ -# if defined IS_IN_rtld || !defined NOT_IN_libc -extern void *__rtld___vdso_read_tp; -extern void *__rtld___vdso_atomic_cmpxchg_32; -extern void *__rtld___vdso_atomic_barrier; - -/* These stubs are meant to be invoked only from the assembly. */ -extern void __vdso_read_tp_stub (void); -extern void __vdso_atomic_cmpxchg_32_stub (void); -extern void __vdso_atomic_barrier_stub (void); -# endif /* IS_IN_rtld || !NOT_IN_libc */ - -/* RTLD should only use its own copies. */ -# ifndef IS_IN_rtld -extern void *__vdso_read_tp; -extern void *__vdso_atomic_cmpxchg_32; -extern void *__vdso_atomic_barrier; -# endif /* !IS_IN_rtld */ - -# endif /* !__ASSEMBLER__ */ - -#endif /* SHARED */ - -#endif /* _M68K_VDSO_H */ diff --git a/ports/sysdeps/unix/sysv/linux/m68k/bits/mman.h b/ports/sysdeps/unix/sysv/linux/m68k/bits/mman.h deleted file mode 100644 index dfdbcbb7c3..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/bits/mman.h +++ /dev/null @@ -1,40 +0,0 @@ -/* Definitions for POSIX memory map interface. Linux/m68k version. - Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef _SYS_MMAN_H -# error "Never use <bits/mman.h> directly; include <sys/mman.h> instead." -#endif - -/* The following definitions basically come from the kernel headers. - But the kernel header is not namespace clean. */ - -/* These are Linux-specific. */ -#ifdef __USE_MISC -# define MAP_GROWSDOWN 0x00100 /* Stack-like segment. */ -# define MAP_DENYWRITE 0x00800 /* ETXTBSY */ -# define MAP_EXECUTABLE 0x01000 /* Mark it as an executable. */ -# define MAP_LOCKED 0x02000 /* Lock the mapping. */ -# define MAP_NORESERVE 0x04000 /* Don't check for reservations. */ -# define MAP_POPULATE 0x08000 /* Populate (prefault) pagetables. */ -# define MAP_NONBLOCK 0x10000 /* Do not block on IO. */ -# define MAP_STACK 0x20000 /* Allocation is for a stack. */ -# define MAP_HUGETLB 0x40000 /* Create huge page mapping. */ -#endif - -/* Include generic Linux declarations. */ -#include <bits/mman-linux.h> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/bits/poll.h b/ports/sysdeps/unix/sysv/linux/m68k/bits/poll.h deleted file mode 100644 index 7936db3a88..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/bits/poll.h +++ /dev/null @@ -1,49 +0,0 @@ -/* Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef _SYS_POLL_H -# error "Never use <bits/poll.h> directly; include <sys/poll.h> instead." -#endif - -/* Event types that can be polled for. These bits may be set in `events' - to indicate the interesting event types; they will appear in `revents' - to indicate the status of the file descriptor. */ -#define POLLIN 0x001 /* There is data to read. */ -#define POLLPRI 0x002 /* There is urgent data to read. */ -#define POLLOUT 0x004 /* Writing now will not block. */ - -#if defined __USE_XOPEN || defined __USE_XOPEN2K8 -/* These values are defined in XPG4.2. */ -# define POLLRDNORM 0x040 /* Normal data may be read. */ -# define POLLRDBAND 0x080 /* Priority data may be read. */ -# define POLLWRNORM POLLOUT /* Writing now will not block. */ -# define POLLWRBAND 0x100 /* Priority data may be written. */ -#endif - -#ifdef __USE_GNU -/* These are extensions for Linux. */ -# define POLLMSG 0x400 -# define POLLREMOVE 0x1000 -# define POLLRDHUP 0x2000 -#endif - -/* Event types always implicitly polled for. These bits need not be set in - `events', but they will appear in `revents' to indicate the status of - the file descriptor. */ -#define POLLERR 0x008 /* Error condition. */ -#define POLLHUP 0x010 /* Hung up. */ -#define POLLNVAL 0x020 /* Invalid polling request. */ diff --git a/ports/sysdeps/unix/sysv/linux/m68k/bits/stat.h b/ports/sysdeps/unix/sysv/linux/m68k/bits/stat.h deleted file mode 100644 index c0bed57ded..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/bits/stat.h +++ /dev/null @@ -1,172 +0,0 @@ -/* Copyright (C) 1992-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#if !defined _SYS_STAT_H && !defined _FCNTL_H -# error "Never include <bits/stat.h> directly; use <sys/stat.h> instead." -#endif - -#ifndef _BITS_STAT_H -#define _BITS_STAT_H 1 - -/* Versions of the `struct stat' data structure. */ -#define _STAT_VER_LINUX_OLD 1 -#define _STAT_VER_KERNEL 1 -#define _STAT_VER_SVR4 2 -#define _STAT_VER_LINUX 3 -#define _STAT_VER _STAT_VER_LINUX /* The one defined below. */ - -/* Versions of the `xmknod' interface. */ -#define _MKNOD_VER_LINUX 1 -#define _MKNOD_VER_SVR4 2 -#define _MKNOD_VER _MKNOD_VER_LINUX /* The bits defined below. */ - - -struct stat - { - __dev_t st_dev; /* Device. */ - unsigned short int __pad1; -#ifndef __USE_FILE_OFFSET64 - __ino_t st_ino; /* File serial number. */ -#else - __ino_t __st_ino; /* 32bit file serial number. */ -#endif - __mode_t st_mode; /* File mode. */ - __nlink_t st_nlink; /* Link count. */ - __uid_t st_uid; /* User ID of the file's owner. */ - __gid_t st_gid; /* Group ID of the file's group.*/ - __dev_t st_rdev; /* Device number, if device. */ - unsigned short int __pad2; -#ifndef __USE_FILE_OFFSET64 - __off_t st_size; /* Size of file, in bytes. */ -#else - __off64_t st_size; /* Size of file, in bytes. */ -#endif - __blksize_t st_blksize; /* Optimal block size for I/O. */ - -#ifndef __USE_FILE_OFFSET64 - __blkcnt_t st_blocks; /* Number 512-byte blocks allocated. */ -#else - __blkcnt64_t st_blocks; /* Number 512-byte blocks allocated. */ -#endif -#if defined __USE_MISC || defined __USE_XOPEN2K8 - /* Nanosecond resolution timestamps are stored in a format - equivalent to 'struct timespec'. This is the type used - whenever possible but the Unix namespace rules do not allow the - identifier 'timespec' to appear in the <sys/stat.h> header. - Therefore we have to handle the use of this header in strictly - standard-compliant sources special. */ - struct timespec st_atim; /* Time of last access. */ - struct timespec st_mtim; /* Time of last modification. */ - struct timespec st_ctim; /* Time of last status change. */ -# define st_atime st_atim.tv_sec /* Backward compatibility. */ -# define st_mtime st_mtim.tv_sec -# define st_ctime st_ctim.tv_sec -#else - __time_t st_atime; /* Time of last access. */ - unsigned long int st_atimensec; /* Nscecs of last access. */ - __time_t st_mtime; /* Time of last modification. */ - unsigned long int st_mtimensec; /* Nsecs of last modification. */ - __time_t st_ctime; /* Time of last status change. */ - unsigned long int st_ctimensec; /* Nsecs of last status change. */ -#endif -#ifndef __USE_FILE_OFFSET64 - unsigned long int __glibc_reserved4; - unsigned long int __glibc_reserved5; -#else - __ino64_t st_ino; /* File serial number. */ -#endif - }; - -#ifdef __USE_LARGEFILE64 -struct stat64 - { - __dev_t st_dev; /* Device. */ - unsigned short int __pad1; - - __ino_t __st_ino; /* 32bit file serial number. */ - __mode_t st_mode; /* File mode. */ - __nlink_t st_nlink; /* Link count. */ - __uid_t st_uid; /* User ID of the file's owner. */ - __gid_t st_gid; /* Group ID of the file's group.*/ - __dev_t st_rdev; /* Device number, if device. */ - unsigned short int __pad2; - __off64_t st_size; /* Size of file, in bytes. */ - __blksize_t st_blksize; /* Optimal block size for I/O. */ - - __blkcnt64_t st_blocks; /* Number 512-byte blocks allocated. */ -# if defined __USE_MISC || defined __USE_XOPEN2K8 - /* Nanosecond resolution timestamps are stored in a format - equivalent to 'struct timespec'. This is the type used - whenever possible but the Unix namespace rules do not allow the - identifier 'timespec' to appear in the <sys/stat.h> header. - Therefore we have to handle the use of this header in strictly - standard-compliant sources special. */ - struct timespec st_atim; /* Time of last access. */ - struct timespec st_mtim; /* Time of last modification. */ - struct timespec st_ctim; /* Time of last status change. */ -# else - __time_t st_atime; /* Time of last access. */ - unsigned long int st_atimensec; /* Nscecs of last access. */ - __time_t st_mtime; /* Time of last modification. */ - unsigned long int st_mtimensec; /* Nsecs of last modification. */ - __time_t st_ctime; /* Time of last status change. */ - unsigned long int st_ctimensec; /* Nsecs of last status change. */ -# endif - __ino64_t st_ino; /* File serial number. */ - }; -#endif - -/* Tell code we have these members. */ -#define _STATBUF_ST_BLKSIZE -#define _STATBUF_ST_RDEV -/* Nanosecond resolution time values are supported. */ -#define _STATBUF_ST_NSEC - -/* Encoding of the file mode. */ - -#define __S_IFMT 0170000 /* These bits determine file type. */ - -/* File types. */ -#define __S_IFDIR 0040000 /* Directory. */ -#define __S_IFCHR 0020000 /* Character device. */ -#define __S_IFBLK 0060000 /* Block device. */ -#define __S_IFREG 0100000 /* Regular file. */ -#define __S_IFIFO 0010000 /* FIFO. */ -#define __S_IFLNK 0120000 /* Symbolic link. */ -#define __S_IFSOCK 0140000 /* Socket. */ - -/* POSIX.1b objects. Note that these macros always evaluate to zero. But - they do it by enforcing the correct use of the macros. */ -#define __S_TYPEISMQ(buf) ((buf)->st_mode - (buf)->st_mode) -#define __S_TYPEISSEM(buf) ((buf)->st_mode - (buf)->st_mode) -#define __S_TYPEISSHM(buf) ((buf)->st_mode - (buf)->st_mode) - -/* Protection bits. */ - -#define __S_ISUID 04000 /* Set user ID on execution. */ -#define __S_ISGID 02000 /* Set group ID on execution. */ -#define __S_ISVTX 01000 /* Save swapped text after use (sticky). */ -#define __S_IREAD 0400 /* Read by owner. */ -#define __S_IWRITE 0200 /* Write by owner. */ -#define __S_IEXEC 0100 /* Execute by owner. */ - -#ifdef __USE_ATFILE -# define UTIME_NOW ((1l << 30) - 1l) -# define UTIME_OMIT ((1l << 30) - 2l) -#endif - -#endif /* bits/stat.h */ diff --git a/ports/sysdeps/unix/sysv/linux/m68k/brk.c b/ports/sysdeps/unix/sysv/linux/m68k/brk.c deleted file mode 100644 index a5b7ca028c..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/brk.c +++ /dev/null @@ -1,47 +0,0 @@ -/* brk system call for Linux/m68k. - Copyright (C) 1996-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <errno.h> -#include <unistd.h> -#include <sysdep.h> - -void *__curbrk = 0; - -/* Old braindamage in GCC's crtstuff.c requires this symbol in an attempt - to work around different old braindamage in the old Linux/x86 ELF - dynamic linker. Sigh. */ -weak_alias (__curbrk, ___brk_addr) - -int -__brk (void *addr) -{ - void *newbrk; - - INTERNAL_SYSCALL_DECL (err); - newbrk = (void *) INTERNAL_SYSCALL (brk, err, 1, addr); - __curbrk = newbrk; - - if (newbrk < addr) - { - __set_errno (ENOMEM); - return -1; - } - - return 0; -} -weak_alias (__brk, brk) diff --git a/ports/sysdeps/unix/sysv/linux/m68k/clone.S b/ports/sysdeps/unix/sysv/linux/m68k/clone.S deleted file mode 100644 index 764f572e89..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/clone.S +++ /dev/null @@ -1,134 +0,0 @@ -/* Copyright (C) 1996-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab (schwab@issan.informatik.uni-dortmund.de) - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -/* clone() is even more special than fork() as it mucks with stacks - and invokes a function in the right context after its all over. */ - -#include <sysdep.h> -#define _ERRNO_H 1 -#include <bits/errno.h> -#ifdef RESET_PID -#include <tls.h> -#endif - -#define CLONE_VM 0x00000100 -#define CLONE_THREAD 0x00010000 - -/* int clone(int (*fn)(void *arg), void *child_stack, int flags, void *arg, - void *parent_tidptr, void *tls, void *child_tidptr) */ - - .text -ENTRY (__clone) - - /* Sanity check arguments. */ - movel #-EINVAL, %d0 - movel 4(%sp), %a0 /* no NULL function pointers */ - tstl %a0 - jeq SYSCALL_ERROR_LABEL - movel 8(%sp), %a1 /* no NULL stack pointers */ - tstl %a1 - jeq SYSCALL_ERROR_LABEL - - /* Allocate space and copy the argument onto the new stack. */ - movel 16(%sp), -(%a1) - - /* Do the system call */ - movel 12+0(%sp), %d1 /* get flags */ - movel %d3, -(%a1) /* save %d3 and get parent_tidptr */ - movel %d3, -(%sp) - cfi_adjust_cfa_offset (4) - cfi_rel_offset (%d3, 0) - movel 20+4(%sp), %d3 - movel %d4, -(%a1) /* save %d4 and get child_tidptr */ - movel %d4, -(%sp) - cfi_adjust_cfa_offset (4) - cfi_rel_offset (%d4, 0) - movel 28+8(%sp), %d4 - movel %d5, -(%a1) /* save %d5 and get tls */ - movel %d5, -(%sp) - cfi_adjust_cfa_offset (4) - cfi_rel_offset (%d5, 0) - movel 24+12(%sp), %d5 - /* save %d2 and get stack pointer */ -#ifdef __mcoldfire__ - movel %d2, -(%a1) - movel %d2, -(%sp) - cfi_adjust_cfa_offset (4) - cfi_rel_offset (%d2, 0) - movel %a1, %d2 -#else - exg %d2, %a1 /* save %d2 and get stack pointer */ - cfi_register (%d2, %a1) -#endif - movel #SYS_ify (clone), %d0 - - /* End FDE now, because in the child the unwind info will be - wrong. */ - cfi_endproc - - trap #0 -#ifdef __mcoldfire__ - movel (%sp)+, %d2 -#else - exg %d2, %a1 /* restore %d2 */ -#endif - movel (%sp)+, %d5 /* restore %d5, %d4 and %d3 */ - movel (%sp)+, %d4 - movel (%sp)+, %d3 - - tstl %d0 - jmi SYSCALL_ERROR_LABEL - jeq thread_start - - rts - -thread_start: - cfi_startproc - cfi_undefined (pc) /* Mark end of stack */ - subl %fp, %fp /* terminate the stack frame */ -#ifdef RESET_PID - /* Check and see if we need to reset the PID. */ - movel %d1, %a1 - andl #CLONE_THREAD, %d1 - jne donepid - movel %a1, %d1 - movel #-1, %d0 - andl #CLONE_VM, %d1 - jne gotpid - movel #SYS_ify (getpid), %d0 - trap #0 -gotpid: - movel %a0, -(%sp) - movel %d0, -(%sp) - bsrl __m68k_read_tp@PLTPC - movel (%sp)+, %d0 - movel %d0, PID_OFFSET(%a0) - movel %d0, TID_OFFSET(%a0) - movel (%sp)+, %a0 -donepid: -#endif - jsr (%a0) - movel %d0, %d1 - movel #SYS_ify (exit), %d0 - trap #0 - cfi_endproc - - cfi_startproc -PSEUDO_END (__clone) - -weak_alias (__clone, clone) diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/bits/atomic.h b/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/bits/atomic.h deleted file mode 100644 index cd9bae324e..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/bits/atomic.h +++ /dev/null @@ -1,104 +0,0 @@ -/* Copyright (C) 2010-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Maxim Kuvyrkov <maxim@codesourcery.com>, 2010. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef _BITS_ATOMIC_H -#define _BITS_ATOMIC_H 1 - -#include <stdint.h> -#include <sysdep.h> -#include <bits/m68k-vdso.h> - -/* Coldfire has no atomic compare-and-exchange operation, but the - kernel provides userspace atomicity operations. Use them. */ - -typedef int32_t atomic32_t; -typedef uint32_t uatomic32_t; -typedef int_fast32_t atomic_fast32_t; -typedef uint_fast32_t uatomic_fast32_t; - -typedef intptr_t atomicptr_t; -typedef uintptr_t uatomicptr_t; -typedef intmax_t atomic_max_t; -typedef uintmax_t uatomic_max_t; - -/* The only basic operation needed is compare and exchange. */ -/* For ColdFire we'll have to trap into the kernel mode anyway, - so trap from the library rather then from the kernel wrapper. */ -#ifdef SHARED -# define atomic_compare_and_exchange_val_acq(mem, newval, oldval) \ - ({ \ - /* Use temporary variables to workaround call-clobberness of \ - the registers. */ \ - __typeof (mem) _mem = mem; \ - __typeof (oldval) _oldval = oldval; \ - __typeof (newval) _newval = newval; \ - register __typeof (mem) _a0 asm ("a0") = _mem; \ - register __typeof (oldval) _d0 asm ("d0") = _oldval; \ - register __typeof (newval) _d1 asm ("d1") = _newval; \ - void *tmp; \ - \ - asm ("movel #_GLOBAL_OFFSET_TABLE_@GOTPC, %2\n\t" \ - "lea (-6, %%pc, %2), %2\n\t" \ - "movel " STR_M68K_VDSO_SYMBOL (__vdso_atomic_cmpxchg_32) \ - "@GOT(%2), %2\n\t" \ - "movel (%2), %2\n\t" \ - "jsr (%2)\n\t" \ - : "+d" (_d0), "+m" (*_a0), "=&a" (tmp) \ - : "a" (_a0), "d" (_d1)); \ - _d0; \ - }) -#else -# define atomic_compare_and_exchange_val_acq(mem, newval, oldval) \ - ({ \ - /* Use temporary variables to workaround call-clobberness of \ - the registers. */ \ - __typeof (mem) _mem = mem; \ - __typeof (oldval) _oldval = oldval; \ - __typeof (newval) _newval = newval; \ - register __typeof (oldval) _d0 asm ("d0") \ - = (__typeof (oldval)) SYS_ify (atomic_cmpxchg_32); \ - register __typeof (mem) _a0 asm ("a0") = _mem; \ - register __typeof (oldval) _d2 asm ("d2") = _oldval; \ - register __typeof (newval) _d1 asm ("d1") = _newval; \ - \ - asm ("trap #0" \ - : "+d" (_d0), "+m" (*_a0) \ - : "a" (_a0), "d" (_d2), "d" (_d1)); \ - _d0; \ - }) -#endif - -#ifdef SHARED -# define atomic_full_barrier() \ - ({ \ - void *tmp; \ - \ - asm ("movel #_GLOBAL_OFFSET_TABLE_@GOTPC, %0\n\t" \ - "lea (-6, %pc, %0), %0\n\t" \ - "movel " STR_M68K_VDSO_SYMBOL (__vdso_atomic_barrier) \ - "@GOT(%0), %0\n\t" \ - "movel (%0), %0\n\t" \ - "jsr (%0)\n\t" \ - : "=&a" (tmp)); \ - }) -#else -# define atomic_full_barrier() \ - (INTERNAL_SYSCALL (atomic_barrier, , 0), (void) 0) -#endif - -#endif diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/ld.abilist b/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/ld.abilist deleted file mode 100644 index 8eac745dd1..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/ld.abilist +++ /dev/null @@ -1,12 +0,0 @@ -GLIBC_2.4 - GLIBC_2.4 A - __libc_memalign F - __libc_stack_end D 0x4 - __stack_chk_guard D 0x4 - __tls_get_addr F - _dl_mcount F - _r_debug D 0x14 - calloc F - free F - malloc F - realloc F diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libBrokenLocale.abilist b/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libBrokenLocale.abilist deleted file mode 100644 index 9c795c6e96..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libBrokenLocale.abilist +++ /dev/null @@ -1,3 +0,0 @@ -GLIBC_2.4 - GLIBC_2.4 A - __ctype_get_mb_cur_max F diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libanl.abilist b/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libanl.abilist deleted file mode 100644 index e10833ed25..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libanl.abilist +++ /dev/null @@ -1,6 +0,0 @@ -GLIBC_2.4 - GLIBC_2.4 A - gai_cancel F - gai_error F - gai_suspend F - getaddrinfo_a F diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libc.abilist b/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libc.abilist deleted file mode 100644 index f06cc8ef8b..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libc.abilist +++ /dev/null @@ -1,2124 +0,0 @@ -GLIBC_2.10 - GLIBC_2.10 A - __cxa_at_quick_exit F - __posix_getopt F - accept4 F - endsgent F - fallocate F - fgetsgent F - fgetsgent_r F - getsgent F - getsgent_r F - getsgnam F - getsgnam_r F - malloc_info F - preadv F - preadv64 F - psiginfo F - putsgent F - pwritev F - pwritev64 F - quick_exit F - register_printf_modifier F - register_printf_specifier F - register_printf_type F - setsgent F - sgetsgent F - sgetsgent_r F -GLIBC_2.11 - GLIBC_2.11 A - __longjmp_chk F - execvpe F - fallocate64 F - mkostemps F - mkostemps64 F - mkstemps F - mkstemps64 F -GLIBC_2.12 - GLIBC_2.12 A - __m68k_read_tp F - _sys_errlist D 0x21c - _sys_nerr D 0x4 - ntp_gettimex F - recvmmsg F - sys_errlist D 0x21c - sys_nerr D 0x4 -GLIBC_2.13 - GLIBC_2.13 A - fanotify_init F - fanotify_mark F - prlimit F - prlimit64 F -GLIBC_2.14 - GLIBC_2.14 A - clock_adjtime F - name_to_handle_at F - open_by_handle_at F - sendmmsg F - setns F - syncfs F -GLIBC_2.15 - GLIBC_2.15 A - __fdelt_chk F - __fdelt_warn F - posix_spawn F - posix_spawnp F - process_vm_readv F - process_vm_writev F - scandirat F - scandirat64 F -GLIBC_2.16 - GLIBC_2.16 A - __getauxval F - __poll_chk F - __ppoll_chk F - aligned_alloc F - c16rtomb F - c32rtomb F - getauxval F - mbrtoc16 F - mbrtoc32 F - timespec_get F -GLIBC_2.17 - GLIBC_2.17 A - clock_getcpuclockid F - clock_getres F - clock_gettime F - clock_nanosleep F - clock_settime F - secure_getenv F -GLIBC_2.18 - GLIBC_2.18 A - __cxa_thread_atexit_impl F -GLIBC_2.4 - GLIBC_2.4 A - _Exit F - _IO_2_1_stderr_ D 0x98 - _IO_2_1_stdin_ D 0x98 - _IO_2_1_stdout_ D 0x98 - _IO_adjust_column F - _IO_adjust_wcolumn F - _IO_default_doallocate F - _IO_default_finish F - _IO_default_pbackfail F - _IO_default_uflow F - _IO_default_xsgetn F - _IO_default_xsputn F - _IO_do_write F - _IO_doallocbuf F - _IO_fclose F - _IO_fdopen F - _IO_feof F - _IO_ferror F - _IO_fflush F - _IO_fgetpos F - _IO_fgetpos64 F - _IO_fgets F - _IO_file_attach F - _IO_file_close F - _IO_file_close_it F - _IO_file_doallocate F - _IO_file_finish F - _IO_file_fopen F - _IO_file_init F - _IO_file_jumps D 0x54 - _IO_file_open F - _IO_file_overflow F - _IO_file_read F - _IO_file_seek F - _IO_file_seekoff F - _IO_file_setbuf F - _IO_file_stat F - _IO_file_sync F - _IO_file_underflow F - _IO_file_write F - _IO_file_xsputn F - _IO_flockfile F - _IO_flush_all F - _IO_flush_all_linebuffered F - _IO_fopen F - _IO_fprintf F - _IO_fputs F - _IO_fread F - _IO_free_backup_area F - _IO_free_wbackup_area F - _IO_fsetpos F - _IO_fsetpos64 F - _IO_ftell F - _IO_ftrylockfile F - _IO_funlockfile F - _IO_fwrite F - _IO_getc F - _IO_getline F - _IO_getline_info F - _IO_gets F - _IO_init F - _IO_init_marker F - _IO_init_wmarker F - _IO_iter_begin F - _IO_iter_end F - _IO_iter_file F - _IO_iter_next F - _IO_least_wmarker F - _IO_link_in F - _IO_list_all D 0x4 - _IO_list_lock F - _IO_list_resetlock F - _IO_list_unlock F - _IO_marker_delta F - _IO_marker_difference F - _IO_padn F - _IO_peekc_locked F - _IO_popen F - _IO_printf F - _IO_proc_close F - _IO_proc_open F - _IO_putc F - _IO_puts F - _IO_remove_marker F - _IO_seekmark F - _IO_seekoff F - _IO_seekpos F - _IO_seekwmark F - _IO_setb F - _IO_setbuffer F - _IO_setvbuf F - _IO_sgetn F - _IO_sprintf F - _IO_sputbackc F - _IO_sputbackwc F - _IO_sscanf F - _IO_str_init_readonly F - _IO_str_init_static F - _IO_str_overflow F - _IO_str_pbackfail F - _IO_str_seekoff F - _IO_str_underflow F - _IO_sungetc F - _IO_sungetwc F - _IO_switch_to_get_mode F - _IO_switch_to_main_wget_area F - _IO_switch_to_wbackup_area F - _IO_switch_to_wget_mode F - _IO_un_link F - _IO_ungetc F - _IO_unsave_markers F - _IO_unsave_wmarkers F - _IO_vfprintf F - _IO_vfscanf F - _IO_vsprintf F - _IO_wdefault_doallocate F - _IO_wdefault_finish F - _IO_wdefault_pbackfail F - _IO_wdefault_uflow F - _IO_wdefault_xsgetn F - _IO_wdefault_xsputn F - _IO_wdo_write F - _IO_wdoallocbuf F - _IO_wfile_jumps D 0x54 - _IO_wfile_overflow F - _IO_wfile_seekoff F - _IO_wfile_sync F - _IO_wfile_underflow F - _IO_wfile_xsputn F - _IO_wmarker_delta F - _IO_wsetb F - ___brk_addr D 0x4 - __adjtimex F - __after_morecore_hook D 0x4 - __argz_count F - __argz_next F - __argz_stringify F - __asprintf F - __assert F - __assert_fail F - __assert_perror_fail F - __backtrace F - __backtrace_symbols F - __backtrace_symbols_fd F - __bsd_getpgrp F - __bzero F - __check_rhosts_file D 0x4 - __chk_fail F - __clone F - __close F - __cmsg_nxthdr F - __confstr_chk F - __connect F - __ctype_b_loc F - __ctype_get_mb_cur_max F - __ctype_tolower_loc F - __ctype_toupper_loc F - __curbrk D 0x4 - __cxa_atexit F - __cxa_finalize F - __cyg_profile_func_enter F - __cyg_profile_func_exit F - __daylight D 0x4 - __dcgettext F - __default_morecore F - __dgettext F - __divdi3 F - __dup2 F - __duplocale F - __endmntent F - __environ D 0x4 - __errno_location F - __fbufsize F - __fcntl F - __ffs F - __fgets_chk F - __fgets_unlocked_chk F - __fgetws_chk F - __fgetws_unlocked_chk F - __finite F - __finitef F - __finitel F - __flbf F - __fork F - __fpending F - __fprintf_chk F - __fpu_control D 0x4 - __fpurge F - __freadable F - __freading F - __free_hook D 0x4 - __freelocale F - __fsetlocking F - __fwprintf_chk F - __fwritable F - __fwriting F - __fxstat F - __fxstat64 F - __fxstatat F - __fxstatat64 F - __getcwd_chk F - __getdelim F - __getdomainname_chk F - __getgroups_chk F - __gethostname_chk F - __getlogin_r_chk F - __getmntent_r F - __getpagesize F - __getpgid F - __getpid F - __gets_chk F - __gettimeofday F - __getwd_chk F - __gmtime_r F - __h_errno_location F - __isalnum_l F - __isalpha_l F - __isascii_l F - __isblank_l F - __iscntrl_l F - __isctype F - __isdigit_l F - __isgraph_l F - __isinf F - __isinff F - __isinfl F - __islower_l F - __isnan F - __isnanf F - __isnanl F - __isprint_l F - __ispunct_l F - __isspace_l F - __isupper_l F - __iswalnum_l F - __iswalpha_l F - __iswblank_l F - __iswcntrl_l F - __iswctype F - __iswctype_l F - __iswdigit_l F - __iswgraph_l F - __iswlower_l F - __iswprint_l F - __iswpunct_l F - __iswspace_l F - __iswupper_l F - __iswxdigit_l F - __isxdigit_l F - __ivaliduser F - __key_decryptsession_pk_LOCAL D 0x4 - __key_encryptsession_pk_LOCAL D 0x4 - __key_gendes_LOCAL D 0x4 - __libc_allocate_rtsig F - __libc_calloc F - __libc_current_sigrtmax F - __libc_current_sigrtmin F - __libc_free F - __libc_freeres F - __libc_init_first F - __libc_mallinfo F - __libc_malloc F - __libc_mallopt F - __libc_memalign F - __libc_pvalloc F - __libc_realloc F - __libc_sa_len F - __libc_start_main F - __libc_valloc F - __lseek F - __lxstat F - __lxstat64 F - __malloc_hook D 0x4 - __malloc_initialize_hook D 0x4 - __mbrlen F - __mbrtowc F - __mbsnrtowcs_chk F - __mbsrtowcs_chk F - __mbstowcs_chk F - __memalign_hook D 0x4 - __memcpy_chk F - __memmove_chk F - __mempcpy F - __mempcpy_chk F - __mempcpy_small F - __memset_chk F - __moddi3 F - __monstartup F - __morecore D 0x4 - __nanosleep F - __newlocale F - __nl_langinfo_l F - __nss_configure_lookup F - __nss_database_lookup F - __nss_group_lookup F - __nss_hostname_digits_dots F - __nss_hosts_lookup F - __nss_next F - __nss_passwd_lookup F - __open F - __open64 F - __overflow F - __pipe F - __poll F - __pread64 F - __pread64_chk F - __pread_chk F - __printf_chk F - __printf_fp F - __profile_frequency F - __progname D 0x4 - __progname_full D 0x4 - __ptsname_r_chk F - __pwrite64 F - __rawmemchr F - __rcmd_errstr D 0x4 - __read F - __read_chk F - __readlink_chk F - __realloc_hook D 0x4 - __realpath_chk F - __recv_chk F - __recvfrom_chk F - __register_atfork F - __res_init F - __res_nclose F - __res_ninit F - __res_randomid F - __res_state F - __rpc_thread_createerr F - __rpc_thread_svc_fdset F - __rpc_thread_svc_max_pollfd F - __rpc_thread_svc_pollfd F - __sbrk F - __sched_get_priority_max F - __sched_get_priority_min F - __sched_getparam F - __sched_getscheduler F - __sched_setscheduler F - __sched_yield F - __secure_getenv F - __select F - __send F - __setmntent F - __setpgid F - __sigaction F - __sigaddset F - __sigdelset F - __sigismember F - __signbit F - __signbitf F - __sigpause F - __sigsetjmp F - __sigsuspend F - __snprintf_chk F - __sprintf_chk F - __stack_chk_fail F - __statfs F - __stpcpy F - __stpcpy_chk F - __stpcpy_small F - __stpncpy F - __stpncpy_chk F - __strcasecmp F - __strcasecmp_l F - __strcasestr F - __strcat_chk F - __strcoll_l F - __strcpy_chk F - __strcpy_small F - __strcspn_c1 F - __strcspn_c2 F - __strcspn_c3 F - __strdup F - __strerror_r F - __strfmon_l F - __strftime_l F - __strncasecmp_l F - __strncat_chk F - __strncpy_chk F - __strndup F - __strpbrk_c2 F - __strpbrk_c3 F - __strsep_1c F - __strsep_2c F - __strsep_3c F - __strsep_g F - __strspn_c1 F - __strspn_c2 F - __strspn_c3 F - __strtod_internal F - __strtod_l F - __strtof_internal F - __strtof_l F - __strtok_r F - __strtok_r_1c F - __strtol_internal F - __strtol_l F - __strtold_internal F - __strtold_l F - __strtoll_internal F - __strtoll_l F - __strtoul_internal F - __strtoul_l F - __strtoull_internal F - __strtoull_l F - __strverscmp F - __strxfrm_l F - __swprintf_chk F - __sysconf F - __sysctl F - __syslog_chk F - __sysv_signal F - __timezone D 0x4 - __toascii_l F - __tolower_l F - __toupper_l F - __towctrans F - __towctrans_l F - __towlower_l F - __towupper_l F - __ttyname_r_chk F - __tzname D 0x8 - __udivdi3 F - __uflow F - __umoddi3 F - __underflow F - __uselocale F - __vfork F - __vfprintf_chk F - __vfscanf F - __vfwprintf_chk F - __vprintf_chk F - __vsnprintf F - __vsnprintf_chk F - __vsprintf_chk F - __vsscanf F - __vswprintf_chk F - __vsyslog_chk F - __vwprintf_chk F - __wait F - __waitpid F - __wcpcpy_chk F - __wcpncpy_chk F - __wcrtomb_chk F - __wcscasecmp_l F - __wcscat_chk F - __wcscoll_l F - __wcscpy_chk F - __wcsftime_l F - __wcsncasecmp_l F - __wcsncat_chk F - __wcsncpy_chk F - __wcsnrtombs_chk F - __wcsrtombs_chk F - __wcstod_internal F - __wcstod_l F - __wcstof_internal F - __wcstof_l F - __wcstol_internal F - __wcstol_l F - __wcstold_internal F - __wcstold_l F - __wcstoll_internal F - __wcstoll_l F - __wcstombs_chk F - __wcstoul_internal F - __wcstoul_l F - __wcstoull_internal F - __wcstoull_l F - __wcsxfrm_l F - __wctomb_chk F - __wctrans_l F - __wctype_l F - __wmemcpy_chk F - __wmemmove_chk F - __wmempcpy_chk F - __wmemset_chk F - __woverflow F - __wprintf_chk F - __write F - __wuflow F - __wunderflow F - __xmknod F - __xmknodat F - __xpg_basename F - __xpg_sigpause F - __xpg_strerror_r F - __xstat F - __xstat64 F - _authenticate F - _dl_mcount_wrapper F - _dl_mcount_wrapper_check F - _environ D 0x4 - _exit F - _flushlbf F - _libc_intl_domainname D 0x5 - _longjmp F - _mcleanup F - _mcount F - _nl_default_dirname D 0x12 - _nl_domain_bindings D 0x4 - _nl_msg_cat_cntr D 0x4 - _null_auth D 0xc - _obstack_allocated_p F - _obstack_begin F - _obstack_begin_1 F - _obstack_free F - _obstack_memory_used F - _obstack_newchunk F - _res D 0x1fe - _res_hconf D 0x30 - _rpc_dtablesize F - _seterr_reply F - _setjmp F - _sys_errlist D 0x210 - _sys_nerr D 0x4 - _sys_siglist D 0x104 - _tolower F - _toupper F - a64l F - abort F - abs F - accept F - access F - acct F - addmntent F - addseverity F - adjtime F - adjtimex F - advance F - alarm F - alphasort F - alphasort64 F - argp_err_exit_status D 0x4 - argp_error F - argp_failure F - argp_help F - argp_parse F - argp_program_bug_address D 0x4 - argp_program_version D 0x4 - argp_program_version_hook D 0x4 - argp_state_help F - argp_usage F - argz_add F - argz_add_sep F - argz_append F - argz_count F - argz_create F - argz_create_sep F - argz_delete F - argz_extract F - argz_insert F - argz_next F - argz_replace F - argz_stringify F - asctime F - asctime_r F - asprintf F - atof F - atoi F - atol F - atoll F - authdes_create F - authdes_getucred F - authdes_pk_create F - authnone_create F - authunix_create F - authunix_create_default F - backtrace F - backtrace_symbols F - backtrace_symbols_fd F - basename F - bcmp F - bcopy F - bdflush F - bind F - bind_textdomain_codeset F - bindresvport F - bindtextdomain F - brk F - bsd_signal F - bsearch F - btowc F - bzero F - cacheflush F - calloc F - callrpc F - canonicalize_file_name F - capget F - capset F - catclose F - catgets F - catopen F - cbc_crypt F - cfgetispeed F - cfgetospeed F - cfmakeraw F - cfree F - cfsetispeed F - cfsetospeed F - cfsetspeed F - chdir F - chflags F - chmod F - chown F - chroot F - clearenv F - clearerr F - clearerr_unlocked F - clnt_broadcast F - clnt_create F - clnt_pcreateerror F - clnt_perrno F - clnt_perror F - clnt_spcreateerror F - clnt_sperrno F - clnt_sperror F - clntraw_create F - clnttcp_create F - clntudp_bufcreate F - clntudp_create F - clntunix_create F - clock F - clone F - close F - closedir F - closelog F - confstr F - connect F - copysign F - copysignf F - copysignl F - creat F - creat64 F - create_module F - ctermid F - ctime F - ctime_r F - cuserid F - daemon F - daylight D 0x4 - dcgettext F - dcngettext F - delete_module F - des_setparity F - dgettext F - difftime F - dirfd F - dirname F - div F - dl_iterate_phdr F - dngettext F - dprintf F - drand48 F - drand48_r F - dup F - dup2 F - duplocale F - dysize F - eaccess F - ecb_crypt F - ecvt F - ecvt_r F - endaliasent F - endfsent F - endgrent F - endhostent F - endmntent F - endnetent F - endnetgrent F - endprotoent F - endpwent F - endrpcent F - endservent F - endspent F - endttyent F - endusershell F - endutent F - endutxent F - environ D 0x4 - envz_add F - envz_entry F - envz_get F - envz_merge F - envz_remove F - envz_strip F - epoll_create F - epoll_ctl F - epoll_wait F - erand48 F - erand48_r F - err F - error F - error_at_line F - error_message_count D 0x4 - error_one_per_line D 0x4 - error_print_progname D 0x4 - errx F - ether_aton F - ether_aton_r F - ether_hostton F - ether_line F - ether_ntoa F - ether_ntoa_r F - ether_ntohost F - euidaccess F - execl F - execle F - execlp F - execv F - execve F - execvp F - exit F - faccessat F - fattach F - fchdir F - fchflags F - fchmod F - fchmodat F - fchown F - fchownat F - fclose F - fcloseall F - fcntl F - fcvt F - fcvt_r F - fdatasync F - fdetach F - fdopen F - fdopendir F - feof F - feof_unlocked F - ferror F - ferror_unlocked F - fexecve F - fflush F - fflush_unlocked F - ffs F - ffsl F - ffsll F - fgetc F - fgetc_unlocked F - fgetgrent F - fgetgrent_r F - fgetpos F - fgetpos64 F - fgetpwent F - fgetpwent_r F - fgets F - fgets_unlocked F - fgetspent F - fgetspent_r F - fgetwc F - fgetwc_unlocked F - fgetws F - fgetws_unlocked F - fgetxattr F - fileno F - fileno_unlocked F - finite F - finitef F - finitel F - flistxattr F - flock F - flockfile F - fmemopen F - fmtmsg F - fnmatch F - fopen F - fopen64 F - fopencookie F - fork F - fpathconf F - fprintf F - fputc F - fputc_unlocked F - fputs F - fputs_unlocked F - fputwc F - fputwc_unlocked F - fputws F - fputws_unlocked F - fread F - fread_unlocked F - free F - freeaddrinfo F - freeifaddrs F - freelocale F - fremovexattr F - freopen F - freopen64 F - frexp F - frexpf F - frexpl F - fscanf F - fseek F - fseeko F - fseeko64 F - fsetpos F - fsetpos64 F - fsetxattr F - fstatfs F - fstatfs64 F - fstatvfs F - fstatvfs64 F - fsync F - ftell F - ftello F - ftello64 F - ftime F - ftok F - ftruncate F - ftruncate64 F - ftrylockfile F - fts_children F - fts_close F - fts_open F - fts_read F - fts_set F - ftw F - ftw64 F - funlockfile F - futimes F - futimesat F - fwide F - fwprintf F - fwrite F - fwrite_unlocked F - fwscanf F - gai_strerror F - gcvt F - get_avphys_pages F - get_current_dir_name F - get_kernel_syms F - get_myaddress F - get_nprocs F - get_nprocs_conf F - get_phys_pages F - getaddrinfo F - getaliasbyname F - getaliasbyname_r F - getaliasent F - getaliasent_r F - getc F - getc_unlocked F - getchar F - getchar_unlocked F - getcontext F - getcwd F - getdate F - getdate_err D 0x4 - getdate_r F - getdelim F - getdirentries F - getdirentries64 F - getdomainname F - getdtablesize F - getegid F - getenv F - geteuid F - getfsent F - getfsfile F - getfsspec F - getgid F - getgrent F - getgrent_r F - getgrgid F - getgrgid_r F - getgrnam F - getgrnam_r F - getgrouplist F - getgroups F - gethostbyaddr F - gethostbyaddr_r F - gethostbyname F - gethostbyname2 F - gethostbyname2_r F - gethostbyname_r F - gethostent F - gethostent_r F - gethostid F - gethostname F - getifaddrs F - getipv4sourcefilter F - getitimer F - getline F - getloadavg F - getlogin F - getlogin_r F - getmntent F - getmntent_r F - getmsg F - getnameinfo F - getnetbyaddr F - getnetbyaddr_r F - getnetbyname F - getnetbyname_r F - getnetent F - getnetent_r F - getnetgrent F - getnetgrent_r F - getnetname F - getopt F - getopt_long F - getopt_long_only F - getpagesize F - getpass F - getpeername F - getpgid F - getpgrp F - getpid F - getpmsg F - getppid F - getpriority F - getprotobyname F - getprotobyname_r F - getprotobynumber F - getprotobynumber_r F - getprotoent F - getprotoent_r F - getpt F - getpublickey F - getpw F - getpwent F - getpwent_r F - getpwnam F - getpwnam_r F - getpwuid F - getpwuid_r F - getresgid F - getresuid F - getrlimit F - getrlimit64 F - getrpcbyname F - getrpcbyname_r F - getrpcbynumber F - getrpcbynumber_r F - getrpcent F - getrpcent_r F - getrpcport F - getrusage F - gets F - getsecretkey F - getservbyname F - getservbyname_r F - getservbyport F - getservbyport_r F - getservent F - getservent_r F - getsid F - getsockname F - getsockopt F - getsourcefilter F - getspent F - getspent_r F - getspnam F - getspnam_r F - getsubopt F - gettext F - gettimeofday F - getttyent F - getttynam F - getuid F - getusershell F - getutent F - getutent_r F - getutid F - getutid_r F - getutline F - getutline_r F - getutmp F - getutmpx F - getutxent F - getutxid F - getutxline F - getw F - getwc F - getwc_unlocked F - getwchar F - getwchar_unlocked F - getwd F - getxattr F - glob F - glob64 F - glob_pattern_p F - globfree F - globfree64 F - gmtime F - gmtime_r F - gnu_dev_major F - gnu_dev_makedev F - gnu_dev_minor F - gnu_get_libc_release F - gnu_get_libc_version F - grantpt F - group_member F - gsignal F - gtty F - h_errlist D 0x14 - h_nerr D 0x4 - hasmntopt F - hcreate F - hcreate_r F - hdestroy F - hdestroy_r F - herror F - host2netname F - hsearch F - hsearch_r F - hstrerror F - htonl F - htons F - iconv F - iconv_close F - iconv_open F - if_freenameindex F - if_indextoname F - if_nameindex F - if_nametoindex F - imaxabs F - imaxdiv F - in6addr_any D 0x10 - in6addr_loopback D 0x10 - index F - inet6_option_alloc F - inet6_option_append F - inet6_option_find F - inet6_option_init F - inet6_option_next F - inet6_option_space F - inet_addr F - inet_aton F - inet_lnaof F - inet_makeaddr F - inet_netof F - inet_network F - inet_nsap_addr F - inet_nsap_ntoa F - inet_ntoa F - inet_ntop F - inet_pton F - init_module F - initgroups F - initstate F - initstate_r F - innetgr F - inotify_add_watch F - inotify_init F - inotify_rm_watch F - insque F - ioctl F - iruserok F - iruserok_af F - isalnum F - isalnum_l F - isalpha F - isalpha_l F - isascii F - isastream F - isatty F - isblank F - isblank_l F - iscntrl F - iscntrl_l F - isctype F - isdigit F - isdigit_l F - isfdtype F - isgraph F - isgraph_l F - isinf F - isinff F - isinfl F - islower F - islower_l F - isnan F - isnanf F - isnanl F - isprint F - isprint_l F - ispunct F - ispunct_l F - isspace F - isspace_l F - isupper F - isupper_l F - iswalnum F - iswalnum_l F - iswalpha F - iswalpha_l F - iswblank F - iswblank_l F - iswcntrl F - iswcntrl_l F - iswctype F - iswctype_l F - iswdigit F - iswdigit_l F - iswgraph F - iswgraph_l F - iswlower F - iswlower_l F - iswprint F - iswprint_l F - iswpunct F - iswpunct_l F - iswspace F - iswspace_l F - iswupper F - iswupper_l F - iswxdigit F - iswxdigit_l F - isxdigit F - isxdigit_l F - jrand48 F - jrand48_r F - key_decryptsession F - key_decryptsession_pk F - key_encryptsession F - key_encryptsession_pk F - key_gendes F - key_get_conv F - key_secretkey_is_set F - key_setnet F - key_setsecret F - kill F - killpg F - klogctl F - l64a F - labs F - lchmod F - lchown F - lckpwdf F - lcong48 F - lcong48_r F - ldexp F - ldexpf F - ldexpl F - ldiv F - lfind F - lgetxattr F - link F - linkat F - listen F - listxattr F - llabs F - lldiv F - llistxattr F - llseek F - loc1 D 0x4 - loc2 D 0x4 - localeconv F - localtime F - localtime_r F - lockf F - lockf64 F - locs D 0x4 - longjmp F - lrand48 F - lrand48_r F - lremovexattr F - lsearch F - lseek F - lseek64 F - lsetxattr F - lutimes F - madvise F - makecontext F - mallinfo F - malloc F - malloc_get_state F - malloc_set_state F - malloc_stats F - malloc_trim F - malloc_usable_size F - mallopt F - mallwatch D 0x4 - mblen F - mbrlen F - mbrtowc F - mbsinit F - mbsnrtowcs F - mbsrtowcs F - mbstowcs F - mbtowc F - mcheck F - mcheck_check_all F - mcheck_pedantic F - mcount F - memalign F - memccpy F - memchr F - memcmp F - memcpy F - memfrob F - memmem F - memmove F - mempcpy F - memrchr F - memset F - mincore F - mkdir F - mkdirat F - mkdtemp F - mkfifo F - mkfifoat F - mkstemp F - mkstemp64 F - mktemp F - mktime F - mlock F - mlockall F - mmap F - mmap64 F - modf F - modff F - modfl F - moncontrol F - monstartup F - mount F - mprobe F - mprotect F - mrand48 F - mrand48_r F - mremap F - msgctl F - msgget F - msgrcv F - msgsnd F - msync F - mtrace F - munlock F - munlockall F - munmap F - muntrace F - nanosleep F - netname2host F - netname2user F - newlocale F - nfsservctl F - nftw F - nftw64 F - ngettext F - nice F - nl_langinfo F - nl_langinfo_l F - nrand48 F - nrand48_r F - ntohl F - ntohs F - ntp_adjtime F - ntp_gettime F - obstack_alloc_failed_handler D 0x4 - obstack_exit_failure D 0x4 - obstack_free F - obstack_printf F - obstack_vprintf F - on_exit F - open F - open64 F - open_memstream F - open_wmemstream F - openat F - openat64 F - opendir F - openlog F - optarg D 0x4 - opterr D 0x4 - optind D 0x4 - optopt D 0x4 - parse_printf_format F - passwd2des F - pathconf F - pause F - pclose F - perror F - personality F - pipe F - pivot_root F - pmap_getmaps F - pmap_getport F - pmap_rmtcall F - pmap_set F - pmap_unset F - poll F - popen F - posix_fadvise F - posix_fadvise64 F - posix_fallocate F - posix_fallocate64 F - posix_madvise F - posix_memalign F - posix_openpt F - posix_spawn F - posix_spawn_file_actions_addclose F - posix_spawn_file_actions_adddup2 F - posix_spawn_file_actions_addopen F - posix_spawn_file_actions_destroy F - posix_spawn_file_actions_init F - posix_spawnattr_destroy F - posix_spawnattr_getflags F - posix_spawnattr_getpgroup F - posix_spawnattr_getschedparam F - posix_spawnattr_getschedpolicy F - posix_spawnattr_getsigdefault F - posix_spawnattr_getsigmask F - posix_spawnattr_init F - posix_spawnattr_setflags F - posix_spawnattr_setpgroup F - posix_spawnattr_setschedparam F - posix_spawnattr_setschedpolicy F - posix_spawnattr_setsigdefault F - posix_spawnattr_setsigmask F - posix_spawnp F - ppoll F - prctl F - pread F - pread64 F - printf F - printf_size F - printf_size_info F - profil F - program_invocation_name D 0x4 - program_invocation_short_name D 0x4 - pselect F - psignal F - pthread_attr_destroy F - pthread_attr_getdetachstate F - pthread_attr_getinheritsched F - pthread_attr_getschedparam F - pthread_attr_getschedpolicy F - pthread_attr_getscope F - pthread_attr_init F - pthread_attr_setdetachstate F - pthread_attr_setinheritsched F - pthread_attr_setschedparam F - pthread_attr_setschedpolicy F - pthread_attr_setscope F - pthread_cond_broadcast F - pthread_cond_destroy F - pthread_cond_init F - pthread_cond_signal F - pthread_cond_timedwait F - pthread_cond_wait F - pthread_condattr_destroy F - pthread_condattr_init F - pthread_equal F - pthread_exit F - pthread_getschedparam F - pthread_mutex_destroy F - pthread_mutex_init F - pthread_mutex_lock F - pthread_mutex_unlock F - pthread_self F - pthread_setcancelstate F - pthread_setcanceltype F - pthread_setschedparam F - ptrace F - ptsname F - ptsname_r F - putc F - putc_unlocked F - putchar F - putchar_unlocked F - putenv F - putgrent F - putmsg F - putpmsg F - putpwent F - puts F - putspent F - pututline F - pututxline F - putw F - putwc F - putwc_unlocked F - putwchar F - putwchar_unlocked F - pvalloc F - pwrite F - pwrite64 F - qecvt F - qecvt_r F - qfcvt F - qfcvt_r F - qgcvt F - qsort F - query_module F - quotactl F - raise F - rand F - rand_r F - random F - random_r F - rawmemchr F - rcmd F - rcmd_af F - re_comp F - re_compile_fastmap F - re_compile_pattern F - re_exec F - re_match F - re_match_2 F - re_search F - re_search_2 F - re_set_registers F - re_set_syntax F - re_syntax_options D 0x4 - read F - readahead F - readdir F - readdir64 F - readdir64_r F - readdir_r F - readlink F - readlinkat F - readv F - realloc F - realpath F - reboot F - recv F - recvfrom F - recvmsg F - regcomp F - regerror F - regexec F - regfree F - register_printf_function F - registerrpc F - remap_file_pages F - remove F - removexattr F - remque F - rename F - renameat F - revoke F - rewind F - rewinddir F - rexec F - rexec_af F - rexecoptions D 0x4 - rindex F - rmdir F - rpc_createerr D 0x10 - rpmatch F - rresvport F - rresvport_af F - rtime F - ruserok F - ruserok_af F - ruserpass F - sbrk F - scalbn F - scalbnf F - scalbnl F - scandir F - scandir64 F - scanf F - sched_get_priority_max F - sched_get_priority_min F - sched_getaffinity F - sched_getparam F - sched_getscheduler F - sched_rr_get_interval F - sched_setaffinity F - sched_setparam F - sched_setscheduler F - sched_yield F - seed48 F - seed48_r F - seekdir F - select F - semctl F - semget F - semop F - semtimedop F - send F - sendfile F - sendfile64 F - sendmsg F - sendto F - setaliasent F - setbuf F - setbuffer F - setcontext F - setdomainname F - setegid F - setenv F - seteuid F - setfsent F - setfsgid F - setfsuid F - setgid F - setgrent F - setgroups F - sethostent F - sethostid F - sethostname F - setipv4sourcefilter F - setitimer F - setjmp F - setlinebuf F - setlocale F - setlogin F - setlogmask F - setmntent F - setnetent F - setnetgrent F - setpgid F - setpgrp F - setpriority F - setprotoent F - setpwent F - setregid F - setresgid F - setresuid F - setreuid F - setrlimit F - setrlimit64 F - setrpcent F - setservent F - setsid F - setsockopt F - setsourcefilter F - setspent F - setstate F - setstate_r F - settimeofday F - setttyent F - setuid F - setusershell F - setutent F - setutxent F - setvbuf F - setxattr F - sgetspent F - sgetspent_r F - shmat F - shmctl F - shmdt F - shmget F - shutdown F - sigaction F - sigaddset F - sigaltstack F - sigandset F - sigblock F - sigdelset F - sigemptyset F - sigfillset F - siggetmask F - sighold F - sigignore F - siginterrupt F - sigisemptyset F - sigismember F - siglongjmp F - signal F - sigorset F - sigpause F - sigpending F - sigprocmask F - sigqueue F - sigrelse F - sigreturn F - sigset F - sigsetmask F - sigstack F - sigsuspend F - sigtimedwait F - sigvec F - sigwait F - sigwaitinfo F - sleep F - snprintf F - sockatmark F - socket F - socketpair F - sprintf F - sprofil F - srand F - srand48 F - srand48_r F - srandom F - srandom_r F - sscanf F - ssignal F - sstk F - statfs F - statfs64 F - statvfs F - statvfs64 F - stderr D 0x4 - stdin D 0x4 - stdout D 0x4 - step F - stime F - stpcpy F - stpncpy F - strcasecmp F - strcasecmp_l F - strcasestr F - strcat F - strchr F - strchrnul F - strcmp F - strcoll F - strcoll_l F - strcpy F - strcspn F - strdup F - strerror F - strerror_r F - strfmon F - strfmon_l F - strfry F - strftime F - strftime_l F - strlen F - strncasecmp F - strncasecmp_l F - strncat F - strncmp F - strncpy F - strndup F - strnlen F - strpbrk F - strptime F - strptime_l F - strrchr F - strsep F - strsignal F - strspn F - strstr F - strtod F - strtod_l F - strtof F - strtof_l F - strtoimax F - strtok F - strtok_r F - strtol F - strtol_l F - strtold F - strtold_l F - strtoll F - strtoll_l F - strtoq F - strtoul F - strtoul_l F - strtoull F - strtoull_l F - strtoumax F - strtouq F - strverscmp F - strxfrm F - strxfrm_l F - stty F - svc_exit F - svc_fdset D 0x80 - svc_getreq F - svc_getreq_common F - svc_getreq_poll F - svc_getreqset F - svc_max_pollfd D 0x4 - svc_pollfd D 0x4 - svc_register F - svc_run F - svc_sendreply F - svc_unregister F - svcauthdes_stats D 0xc - svcerr_auth F - svcerr_decode F - svcerr_noproc F - svcerr_noprog F - svcerr_progvers F - svcerr_systemerr F - svcerr_weakauth F - svcfd_create F - svcraw_create F - svctcp_create F - svcudp_bufcreate F - svcudp_create F - svcudp_enablecache F - svcunix_create F - svcunixfd_create F - swab F - swapcontext F - swapoff F - swapon F - swprintf F - swscanf F - symlink F - symlinkat F - sync F - sys_errlist D 0x210 - sys_nerr D 0x4 - sys_sigabbrev D 0x104 - sys_siglist D 0x104 - syscall F - sysconf F - sysctl F - sysinfo F - syslog F - system F - sysv_signal F - tcdrain F - tcflow F - tcflush F - tcgetattr F - tcgetpgrp F - tcgetsid F - tcsendbreak F - tcsetattr F - tcsetpgrp F - tdelete F - tdestroy F - telldir F - tempnam F - textdomain F - tfind F - time F - timegm F - timelocal F - times F - timezone D 0x4 - tmpfile F - tmpfile64 F - tmpnam F - tmpnam_r F - toascii F - tolower F - tolower_l F - toupper F - toupper_l F - towctrans F - towctrans_l F - towlower F - towlower_l F - towupper F - towupper_l F - tr_break F - truncate F - truncate64 F - tsearch F - ttyname F - ttyname_r F - ttyslot F - twalk F - tzname D 0x8 - tzset F - ualarm F - ulckpwdf F - ulimit F - umask F - umount F - umount2 F - uname F - ungetc F - ungetwc F - unlink F - unlinkat F - unlockpt F - unsetenv F - unshare F - updwtmp F - updwtmpx F - uselib F - uselocale F - user2netname F - usleep F - ustat F - utime F - utimes F - utmpname F - utmpxname F - valloc F - vasprintf F - vdprintf F - verr F - verrx F - versionsort F - versionsort64 F - vfork F - vfprintf F - vfscanf F - vfwprintf F - vfwscanf F - vhangup F - vlimit F - vprintf F - vscanf F - vsnprintf F - vsprintf F - vsscanf F - vswprintf F - vswscanf F - vsyslog F - vtimes F - vwarn F - vwarnx F - vwprintf F - vwscanf F - wait F - wait3 F - wait4 F - waitid F - waitpid F - warn F - warnx F - wcpcpy F - wcpncpy F - wcrtomb F - wcscasecmp F - wcscasecmp_l F - wcscat F - wcschr F - wcschrnul F - wcscmp F - wcscoll F - wcscoll_l F - wcscpy F - wcscspn F - wcsdup F - wcsftime F - wcsftime_l F - wcslen F - wcsncasecmp F - wcsncasecmp_l F - wcsncat F - wcsncmp F - wcsncpy F - wcsnlen F - wcsnrtombs F - wcspbrk F - wcsrchr F - wcsrtombs F - wcsspn F - wcsstr F - wcstod F - wcstod_l F - wcstof F - wcstof_l F - wcstoimax F - wcstok F - wcstol F - wcstol_l F - wcstold F - wcstold_l F - wcstoll F - wcstoll_l F - wcstombs F - wcstoq F - wcstoul F - wcstoul_l F - wcstoull F - wcstoull_l F - wcstoumax F - wcstouq F - wcswcs F - wcswidth F - wcsxfrm F - wcsxfrm_l F - wctob F - wctomb F - wctrans F - wctrans_l F - wctype F - wctype_l F - wcwidth F - wmemchr F - wmemcmp F - wmemcpy F - wmemmove F - wmempcpy F - wmemset F - wordexp F - wordfree F - wprintf F - write F - writev F - wscanf F - xdecrypt F - xdr_accepted_reply F - xdr_array F - xdr_authdes_cred F - xdr_authdes_verf F - xdr_authunix_parms F - xdr_bool F - xdr_bytes F - xdr_callhdr F - xdr_callmsg F - xdr_char F - xdr_cryptkeyarg F - xdr_cryptkeyarg2 F - xdr_cryptkeyres F - xdr_des_block F - xdr_double F - xdr_enum F - xdr_float F - xdr_free F - xdr_getcredres F - xdr_hyper F - xdr_int F - xdr_int16_t F - xdr_int32_t F - xdr_int64_t F - xdr_int8_t F - xdr_key_netstarg F - xdr_key_netstres F - xdr_keybuf F - xdr_keystatus F - xdr_long F - xdr_longlong_t F - xdr_netnamestr F - xdr_netobj F - xdr_opaque F - xdr_opaque_auth F - xdr_pmap F - xdr_pmaplist F - xdr_pointer F - xdr_quad_t F - xdr_reference F - xdr_rejected_reply F - xdr_replymsg F - xdr_rmtcall_args F - xdr_rmtcallres F - xdr_short F - xdr_sizeof F - xdr_string F - xdr_u_char F - xdr_u_hyper F - xdr_u_int F - xdr_u_long F - xdr_u_longlong_t F - xdr_u_quad_t F - xdr_u_short F - xdr_uint16_t F - xdr_uint32_t F - xdr_uint64_t F - xdr_uint8_t F - xdr_union F - xdr_unixcred F - xdr_vector F - xdr_void F - xdr_wrapstring F - xdrmem_create F - xdrrec_create F - xdrrec_endofrecord F - xdrrec_eof F - xdrrec_skiprecord F - xdrstdio_create F - xencrypt F - xprt_register F - xprt_unregister F -GLIBC_2.5 - GLIBC_2.5 A - __readlinkat_chk F - inet6_opt_append F - inet6_opt_find F - inet6_opt_finish F - inet6_opt_get_val F - inet6_opt_init F - inet6_opt_next F - inet6_opt_set_val F - inet6_rth_add F - inet6_rth_getaddr F - inet6_rth_init F - inet6_rth_reverse F - inet6_rth_segments F - inet6_rth_space F - splice F - tee F - vmsplice F -GLIBC_2.6 - GLIBC_2.6 A - __sched_cpucount F - epoll_pwait F - futimens F - sched_getcpu F - strerror_l F - sync_file_range F - utimensat F -GLIBC_2.7 - GLIBC_2.7 A - __fread_chk F - __fread_unlocked_chk F - __isoc99_fscanf F - __isoc99_fwscanf F - __isoc99_scanf F - __isoc99_sscanf F - __isoc99_swscanf F - __isoc99_vfscanf F - __isoc99_vfwscanf F - __isoc99_vscanf F - __isoc99_vsscanf F - __isoc99_vswscanf F - __isoc99_vwscanf F - __isoc99_wscanf F - __open64_2 F - __open_2 F - __openat64_2 F - __openat_2 F - __sched_cpualloc F - __sched_cpufree F - eventfd F - eventfd_read F - eventfd_write F - mkostemp F - mkostemp64 F - signalfd F -GLIBC_2.8 - GLIBC_2.8 A - __asprintf_chk F - __dprintf_chk F - __obstack_printf_chk F - __obstack_vprintf_chk F - __vasprintf_chk F - __vdprintf_chk F - qsort_r F - timerfd_create F - timerfd_gettime F - timerfd_settime F -GLIBC_2.9 - GLIBC_2.9 A - dup3 F - epoll_create1 F - inotify_init1 F - pipe2 F diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libcrypt.abilist b/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libcrypt.abilist deleted file mode 100644 index 8c874edffe..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libcrypt.abilist +++ /dev/null @@ -1,9 +0,0 @@ -GLIBC_2.4 - GLIBC_2.4 A - crypt F - crypt_r F - encrypt F - encrypt_r F - fcrypt F - setkey F - setkey_r F diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libdl.abilist b/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libdl.abilist deleted file mode 100644 index 7f3ebed31d..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libdl.abilist +++ /dev/null @@ -1,11 +0,0 @@ -GLIBC_2.4 - GLIBC_2.4 A - dladdr F - dladdr1 F - dlclose F - dlerror F - dlinfo F - dlmopen F - dlopen F - dlsym F - dlvsym F diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libm.abilist b/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libm.abilist deleted file mode 100644 index 614e5ebe5c..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libm.abilist +++ /dev/null @@ -1,374 +0,0 @@ -GLIBC_2.15 - GLIBC_2.15 A - __acos_finite F - __acosf_finite F - __acosh_finite F - __acoshf_finite F - __asin_finite F - __asinf_finite F - __atan2_finite F - __atan2f_finite F - __atanh_finite F - __atanhf_finite F - __cosh_finite F - __coshf_finite F - __exp10_finite F - __exp10f_finite F - __exp2_finite F - __exp2f_finite F - __exp_finite F - __expf_finite F - __fmod_finite F - __fmodf_finite F - __gamma_r_finite F - __gammaf_r_finite F - __hypot_finite F - __hypotf_finite F - __j0_finite F - __j0f_finite F - __j1_finite F - __j1f_finite F - __jn_finite F - __jnf_finite F - __lgamma_r_finite F - __lgammaf_r_finite F - __log10_finite F - __log10f_finite F - __log2_finite F - __log2f_finite F - __log_finite F - __logf_finite F - __pow_finite F - __powf_finite F - __remainder_finite F - __remainderf_finite F - __scalb_finite F - __scalbf_finite F - __sinh_finite F - __sinhf_finite F - __sqrt_finite F - __sqrtf_finite F - __y0_finite F - __y0f_finite F - __y1_finite F - __y1f_finite F - __yn_finite F - __ynf_finite F -GLIBC_2.18 - GLIBC_2.18 A - __issignaling F - __issignalingf F -GLIBC_2.4 - GLIBC_2.4 A - _LIB_VERSION D 0x4 - __clog10 F - __clog10f F - __clog10l F - __finite F - __finitef F - __finitel F - __fpclassify F - __fpclassifyf F - __signbit F - __signbitf F - acos F - acosf F - acosh F - acoshf F - acoshl F - acosl F - asin F - asinf F - asinh F - asinhf F - asinhl F - asinl F - atan F - atan2 F - atan2f F - atan2l F - atanf F - atanh F - atanhf F - atanhl F - atanl F - cabs F - cabsf F - cabsl F - cacos F - cacosf F - cacosh F - cacoshf F - cacoshl F - cacosl F - carg F - cargf F - cargl F - casin F - casinf F - casinh F - casinhf F - casinhl F - casinl F - catan F - catanf F - catanh F - catanhf F - catanhl F - catanl F - cbrt F - cbrtf F - cbrtl F - ccos F - ccosf F - ccosh F - ccoshf F - ccoshl F - ccosl F - ceil F - ceilf F - ceill F - cexp F - cexpf F - cexpl F - cimag F - cimagf F - cimagl F - clog F - clog10 F - clog10f F - clog10l F - clogf F - clogl F - conj F - conjf F - conjl F - copysign F - copysignf F - copysignl F - cos F - cosf F - cosh F - coshf F - coshl F - cosl F - cpow F - cpowf F - cpowl F - cproj F - cprojf F - cprojl F - creal F - crealf F - creall F - csin F - csinf F - csinh F - csinhf F - csinhl F - csinl F - csqrt F - csqrtf F - csqrtl F - ctan F - ctanf F - ctanh F - ctanhf F - ctanhl F - ctanl F - drem F - dremf F - dreml F - erf F - erfc F - erfcf F - erfcl F - erff F - erfl F - exp F - exp10 F - exp10f F - exp10l F - exp2 F - exp2f F - exp2l F - expf F - expl F - expm1 F - expm1f F - expm1l F - fabs F - fabsf F - fabsl F - fdim F - fdimf F - fdiml F - feclearexcept F - fedisableexcept F - feenableexcept F - fegetenv F - fegetexcept F - fegetexceptflag F - fegetround F - feholdexcept F - feraiseexcept F - fesetenv F - fesetexceptflag F - fesetround F - fetestexcept F - feupdateenv F - finite F - finitef F - finitel F - floor F - floorf F - floorl F - fma F - fmaf F - fmal F - fmax F - fmaxf F - fmaxl F - fmin F - fminf F - fminl F - fmod F - fmodf F - fmodl F - frexp F - frexpf F - frexpl F - gamma F - gammaf F - gammal F - hypot F - hypotf F - hypotl F - ilogb F - ilogbf F - ilogbl F - j0 F - j0f F - j0l F - j1 F - j1f F - j1l F - jn F - jnf F - jnl F - ldexp F - ldexpf F - ldexpl F - lgamma F - lgamma_r F - lgammaf F - lgammaf_r F - lgammal F - lgammal_r F - llrint F - llrintf F - llrintl F - llround F - llroundf F - llroundl F - log F - log10 F - log10f F - log10l F - log1p F - log1pf F - log1pl F - log2 F - log2f F - log2l F - logb F - logbf F - logbl F - logf F - logl F - lrint F - lrintf F - lrintl F - lround F - lroundf F - lroundl F - matherr F - modf F - modff F - modfl F - nan F - nanf F - nanl F - nearbyint F - nearbyintf F - nearbyintl F - nextafter F - nextafterf F - nextafterl F - nexttoward F - nexttowardf F - nexttowardl F - pow F - pow10 F - pow10f F - pow10l F - powf F - powl F - remainder F - remainderf F - remainderl F - remquo F - remquof F - remquol F - rint F - rintf F - rintl F - round F - roundf F - roundl F - scalb F - scalbf F - scalbl F - scalbln F - scalblnf F - scalblnl F - scalbn F - scalbnf F - scalbnl F - signgam D 0x4 - significand F - significandf F - significandl F - sin F - sincos F - sincosf F - sincosl F - sinf F - sinh F - sinhf F - sinhl F - sinl F - sqrt F - sqrtf F - sqrtl F - tan F - tanf F - tanh F - tanhf F - tanhl F - tanl F - tgamma F - tgammaf F - tgammal F - trunc F - truncf F - truncl F - y0 F - y0f F - y0l F - y1 F - y1f F - y1l F - yn F - ynf F - ynl F diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libnsl.abilist b/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libnsl.abilist deleted file mode 100644 index 1d2670c444..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libnsl.abilist +++ /dev/null @@ -1,123 +0,0 @@ -GLIBC_2.4 - GLIBC_2.4 A - __free_fdresult F - __nis_default_access F - __nis_default_group F - __nis_default_owner F - __nis_default_ttl F - __nis_finddirectory F - __nis_hash F - __nisbind_connect F - __nisbind_create F - __nisbind_destroy F - __nisbind_next F - __yp_check F - nis_add F - nis_add_entry F - nis_addmember F - nis_checkpoint F - nis_clone_directory F - nis_clone_object F - nis_clone_result F - nis_creategroup F - nis_destroy_object F - nis_destroygroup F - nis_dir_cmp F - nis_domain_of F - nis_domain_of_r F - nis_first_entry F - nis_free_directory F - nis_free_object F - nis_free_request F - nis_freenames F - nis_freeresult F - nis_freeservlist F - nis_freetags F - nis_getnames F - nis_getservlist F - nis_ismember F - nis_leaf_of F - nis_leaf_of_r F - nis_lerror F - nis_list F - nis_local_directory F - nis_local_group F - nis_local_host F - nis_local_principal F - nis_lookup F - nis_mkdir F - nis_modify F - nis_modify_entry F - nis_name_of F - nis_name_of_r F - nis_next_entry F - nis_perror F - nis_ping F - nis_print_directory F - nis_print_entry F - nis_print_group F - nis_print_group_entry F - nis_print_link F - nis_print_object F - nis_print_result F - nis_print_rights F - nis_print_table F - nis_read_obj F - nis_remove F - nis_remove_entry F - nis_removemember F - nis_rmdir F - nis_servstate F - nis_sperrno F - nis_sperror F - nis_sperror_r F - nis_stats F - nis_verifygroup F - nis_write_obj F - readColdStartFile F - writeColdStartFile F - xdr_cback_data F - xdr_domainname F - xdr_keydat F - xdr_mapname F - xdr_obj_p F - xdr_peername F - xdr_valdat F - xdr_yp_buf F - xdr_ypall F - xdr_ypbind_binding F - xdr_ypbind_resp F - xdr_ypbind_resptype F - xdr_ypbind_setdom F - xdr_ypdelete_args F - xdr_ypmap_parms F - xdr_ypmaplist F - xdr_yppush_status F - xdr_yppushresp_xfr F - xdr_ypreq_key F - xdr_ypreq_nokey F - xdr_ypreq_xfr F - xdr_ypresp_all F - xdr_ypresp_key_val F - xdr_ypresp_maplist F - xdr_ypresp_master F - xdr_ypresp_order F - xdr_ypresp_val F - xdr_ypresp_xfr F - xdr_ypstat F - xdr_ypupdate_args F - xdr_ypxfrstat F - yp_all F - yp_bind F - yp_first F - yp_get_default_domain F - yp_maplist F - yp_master F - yp_match F - yp_next F - yp_order F - yp_unbind F - yp_update F - ypbinderr_string F - yperr_string F - ypprot_err F diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libpthread.abilist b/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libpthread.abilist deleted file mode 100644 index ac46302bc7..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libpthread.abilist +++ /dev/null @@ -1,232 +0,0 @@ -GLIBC_2.11 - GLIBC_2.11 A - pthread_sigqueue F -GLIBC_2.12 - GLIBC_2.12 A - pthread_getname_np F - pthread_mutex_consistent F - pthread_mutexattr_getrobust F - pthread_mutexattr_setrobust F - pthread_setname_np F -GLIBC_2.18 - GLIBC_2.18 A - pthread_getattr_default_np F - pthread_setattr_default_np F -GLIBC_2.4 - GLIBC_2.4 A - _IO_flockfile F - _IO_ftrylockfile F - _IO_funlockfile F - __close F - __connect F - __errno_location F - __fcntl F - __fork F - __h_errno_location F - __libc_allocate_rtsig F - __libc_current_sigrtmax F - __libc_current_sigrtmin F - __lseek F - __nanosleep F - __open F - __open64 F - __pread64 F - __pthread_cleanup_routine F - __pthread_getspecific F - __pthread_key_create F - __pthread_mutex_destroy F - __pthread_mutex_init F - __pthread_mutex_lock F - __pthread_mutex_trylock F - __pthread_mutex_unlock F - __pthread_mutexattr_destroy F - __pthread_mutexattr_init F - __pthread_mutexattr_settype F - __pthread_once F - __pthread_register_cancel F - __pthread_register_cancel_defer F - __pthread_rwlock_destroy F - __pthread_rwlock_init F - __pthread_rwlock_rdlock F - __pthread_rwlock_tryrdlock F - __pthread_rwlock_trywrlock F - __pthread_rwlock_unlock F - __pthread_rwlock_wrlock F - __pthread_setspecific F - __pthread_unregister_cancel F - __pthread_unregister_cancel_restore F - __pthread_unwind_next F - __pwrite64 F - __read F - __res_state F - __send F - __sigaction F - __vfork F - __wait F - __write F - _pthread_cleanup_pop F - _pthread_cleanup_pop_restore F - _pthread_cleanup_push F - _pthread_cleanup_push_defer F - accept F - close F - connect F - fcntl F - flockfile F - fork F - fsync F - ftrylockfile F - funlockfile F - longjmp F - lseek F - lseek64 F - msync F - nanosleep F - open F - open64 F - pause F - pread F - pread64 F - pthread_attr_destroy F - pthread_attr_getaffinity_np F - pthread_attr_getdetachstate F - pthread_attr_getguardsize F - pthread_attr_getinheritsched F - pthread_attr_getschedparam F - pthread_attr_getschedpolicy F - pthread_attr_getscope F - pthread_attr_getstack F - pthread_attr_getstackaddr F - pthread_attr_getstacksize F - pthread_attr_init F - pthread_attr_setaffinity_np F - pthread_attr_setdetachstate F - pthread_attr_setguardsize F - pthread_attr_setinheritsched F - pthread_attr_setschedparam F - pthread_attr_setschedpolicy F - pthread_attr_setscope F - pthread_attr_setstack F - pthread_attr_setstackaddr F - pthread_attr_setstacksize F - pthread_barrier_destroy F - pthread_barrier_init F - pthread_barrier_wait F - pthread_barrierattr_destroy F - pthread_barrierattr_getpshared F - pthread_barrierattr_init F - pthread_barrierattr_setpshared F - pthread_cancel F - pthread_cond_broadcast F - pthread_cond_destroy F - pthread_cond_init F - pthread_cond_signal F - pthread_cond_timedwait F - pthread_cond_wait F - pthread_condattr_destroy F - pthread_condattr_getclock F - pthread_condattr_getpshared F - pthread_condattr_init F - pthread_condattr_setclock F - pthread_condattr_setpshared F - pthread_create F - pthread_detach F - pthread_equal F - pthread_exit F - pthread_getaffinity_np F - pthread_getattr_np F - pthread_getconcurrency F - pthread_getcpuclockid F - pthread_getschedparam F - pthread_getspecific F - pthread_join F - pthread_key_create F - pthread_key_delete F - pthread_kill F - pthread_kill_other_threads_np F - pthread_mutex_consistent_np F - pthread_mutex_destroy F - pthread_mutex_getprioceiling F - pthread_mutex_init F - pthread_mutex_lock F - pthread_mutex_setprioceiling F - pthread_mutex_timedlock F - pthread_mutex_trylock F - pthread_mutex_unlock F - pthread_mutexattr_destroy F - pthread_mutexattr_getkind_np F - pthread_mutexattr_getprioceiling F - pthread_mutexattr_getprotocol F - pthread_mutexattr_getpshared F - pthread_mutexattr_getrobust_np F - pthread_mutexattr_gettype F - pthread_mutexattr_init F - pthread_mutexattr_setkind_np F - pthread_mutexattr_setprioceiling F - pthread_mutexattr_setprotocol F - pthread_mutexattr_setpshared F - pthread_mutexattr_setrobust_np F - pthread_mutexattr_settype F - pthread_once F - pthread_rwlock_destroy F - pthread_rwlock_init F - pthread_rwlock_rdlock F - pthread_rwlock_timedrdlock F - pthread_rwlock_timedwrlock F - pthread_rwlock_tryrdlock F - pthread_rwlock_trywrlock F - pthread_rwlock_unlock F - pthread_rwlock_wrlock F - pthread_rwlockattr_destroy F - pthread_rwlockattr_getkind_np F - pthread_rwlockattr_getpshared F - pthread_rwlockattr_init F - pthread_rwlockattr_setkind_np F - pthread_rwlockattr_setpshared F - pthread_self F - pthread_setaffinity_np F - pthread_setcancelstate F - pthread_setcanceltype F - pthread_setconcurrency F - pthread_setschedparam F - pthread_setschedprio F - pthread_setspecific F - pthread_sigmask F - pthread_spin_destroy F - pthread_spin_init F - pthread_spin_lock F - pthread_spin_trylock F - pthread_spin_unlock F - pthread_testcancel F - pthread_timedjoin_np F - pthread_tryjoin_np F - pthread_yield F - pwrite F - pwrite64 F - raise F - read F - recv F - recvfrom F - recvmsg F - sem_close F - sem_destroy F - sem_getvalue F - sem_init F - sem_open F - sem_post F - sem_timedwait F - sem_trywait F - sem_unlink F - sem_wait F - send F - sendmsg F - sendto F - sigaction F - siglongjmp F - sigwait F - system F - tcdrain F - vfork F - wait F - waitpid F - write F diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libresolv.abilist b/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libresolv.abilist deleted file mode 100644 index e781f2f822..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libresolv.abilist +++ /dev/null @@ -1,95 +0,0 @@ -GLIBC_2.4 - GLIBC_2.4 A - __b64_ntop F - __b64_pton F - __dn_comp F - __dn_count_labels F - __dn_expand F - __dn_skipname F - __fp_nquery F - __fp_query F - __fp_resstat F - __hostalias F - __loc_aton F - __loc_ntoa F - __p_cdname F - __p_cdnname F - __p_class F - __p_class_syms D 0x54 - __p_fqname F - __p_fqnname F - __p_option F - __p_query F - __p_rcode F - __p_secstodate F - __p_time F - __p_type F - __p_type_syms D 0x228 - __putlong F - __putshort F - __res_close F - __res_dnok F - __res_hnok F - __res_hostalias F - __res_isourserver F - __res_mailok F - __res_mkquery F - __res_nameinquery F - __res_nmkquery F - __res_nquery F - __res_nquerydomain F - __res_nsearch F - __res_nsend F - __res_ownok F - __res_queriesmatch F - __res_query F - __res_querydomain F - __res_search F - __res_send F - __sym_ntop F - __sym_ntos F - __sym_ston F - _gethtbyaddr F - _gethtbyname F - _gethtbyname2 F - _gethtent F - _getlong F - _getshort F - _res_opcodes D 0x40 - _sethtent F - inet_net_ntop F - inet_net_pton F - inet_neta F - res_gethostbyaddr F - res_gethostbyname F - res_gethostbyname2 F - res_send_setqhook F - res_send_setrhook F -GLIBC_2.9 - GLIBC_2.9 A - ns_datetosecs F - ns_format_ttl F - ns_get16 F - ns_get32 F - ns_initparse F - ns_makecanon F - ns_msg_getflag F - ns_name_compress F - ns_name_ntol F - ns_name_ntop F - ns_name_pack F - ns_name_pton F - ns_name_rollback F - ns_name_skip F - ns_name_uncompress F - ns_name_unpack F - ns_parse_ttl F - ns_parserr F - ns_put16 F - ns_put32 F - ns_samedomain F - ns_samename F - ns_skiprr F - ns_sprintrr F - ns_sprintrrf F - ns_subdomain F diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/librt.abilist b/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/librt.abilist deleted file mode 100644 index 466df4d93b..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/librt.abilist +++ /dev/null @@ -1,44 +0,0 @@ -GLIBC_2.4 - GLIBC_2.4 A - aio_cancel F - aio_cancel64 F - aio_error F - aio_error64 F - aio_fsync F - aio_fsync64 F - aio_init F - aio_read F - aio_read64 F - aio_return F - aio_return64 F - aio_suspend F - aio_suspend64 F - aio_write F - aio_write64 F - clock_getcpuclockid F - clock_getres F - clock_gettime F - clock_nanosleep F - clock_settime F - lio_listio F - lio_listio64 F - mq_close F - mq_getattr F - mq_notify F - mq_open F - mq_receive F - mq_send F - mq_setattr F - mq_timedreceive F - mq_timedsend F - mq_unlink F - shm_open F - shm_unlink F - timer_create F - timer_delete F - timer_getoverrun F - timer_gettime F - timer_settime F -GLIBC_2.7 - GLIBC_2.7 A - __mq_open_2 F diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libthread_db.abilist b/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libthread_db.abilist deleted file mode 100644 index 523772441b..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libthread_db.abilist +++ /dev/null @@ -1,42 +0,0 @@ -GLIBC_2.4 - GLIBC_2.4 A - td_init F - td_log F - td_symbol_list F - td_ta_clear_event F - td_ta_delete F - td_ta_enable_stats F - td_ta_event_addr F - td_ta_event_getmsg F - td_ta_get_nthreads F - td_ta_get_ph F - td_ta_get_stats F - td_ta_map_id2thr F - td_ta_map_lwp2thr F - td_ta_new F - td_ta_reset_stats F - td_ta_set_event F - td_ta_setconcurrency F - td_ta_thr_iter F - td_ta_tsd_iter F - td_thr_clear_event F - td_thr_dbresume F - td_thr_dbsuspend F - td_thr_event_enable F - td_thr_event_getmsg F - td_thr_get_info F - td_thr_getfpregs F - td_thr_getgregs F - td_thr_getxregs F - td_thr_getxregsize F - td_thr_set_event F - td_thr_setfpregs F - td_thr_setgregs F - td_thr_setprio F - td_thr_setsigpending F - td_thr_setxregs F - td_thr_sigsetmask F - td_thr_tls_get_addr F - td_thr_tlsbase F - td_thr_tsd F - td_thr_validate F diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libutil.abilist b/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libutil.abilist deleted file mode 100644 index 6cb71966a1..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libutil.abilist +++ /dev/null @@ -1,8 +0,0 @@ -GLIBC_2.4 - GLIBC_2.4 A - forkpty F - login F - login_tty F - logout F - logwtmp F - openpty F diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h b/ports/sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h deleted file mode 100644 index 93688ac3d4..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright (C) 2010-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef _LINUX_M68K_COLDFIRE_SYSDEP_H -#define _LINUX_M68K_COLDFIRE_SYSDEP_H 1 - -#include <sysdeps/unix/sysdep.h> -#include <sysdeps/m68k/coldfire/sysdep.h> -#include <sysdeps/unix/sysv/linux/m68k/sysdep.h> - -#define SYSCALL_ERROR_LOAD_GOT(reg) \ - move.l &_GLOBAL_OFFSET_TABLE_@GOTPC, reg; \ - lea (-6, %pc, reg), reg - -#endif diff --git a/ports/sysdeps/unix/sysv/linux/m68k/configure b/ports/sysdeps/unix/sysv/linux/m68k/configure deleted file mode 100644 index 8e955387b7..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/configure +++ /dev/null @@ -1,9 +0,0 @@ -# This file is generated from configure.ac by Autoconf. DO NOT EDIT! - case $machine in -m68k/coldfire) - ;; -*) - libc_cv_gcc_unwind_find_fde=yes - ;; -esac -ldd_rewrite_script=sysdeps/unix/sysv/linux/ldd-rewrite.sed diff --git a/ports/sysdeps/unix/sysv/linux/m68k/configure.ac b/ports/sysdeps/unix/sysv/linux/m68k/configure.ac deleted file mode 100644 index c21ca9dd47..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/configure.ac +++ /dev/null @@ -1,10 +0,0 @@ -sinclude(./aclocal.m4)dnl Autoconf lossage -GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory. -case $machine in -m68k/coldfire) - ;; -*) - libc_cv_gcc_unwind_find_fde=yes - ;; -esac -ldd_rewrite_script=sysdeps/unix/sysv/linux/ldd-rewrite.sed diff --git a/ports/sysdeps/unix/sysv/linux/m68k/dl-librecon.h b/ports/sysdeps/unix/sysv/linux/m68k/dl-librecon.h deleted file mode 100644 index dbb4e75712..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/dl-librecon.h +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/dl-librecon.h> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/dl-static.c b/ports/sysdeps/unix/sysv/linux/m68k/dl-static.c deleted file mode 100644 index 72b98987cd..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/dl-static.c +++ /dev/null @@ -1,84 +0,0 @@ -/* Variable initialization. M68K version. - Copyright (C) 2013-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#include <ldsodefs.h> - -#ifdef SHARED - -void -_dl_var_init (void *array[]) -{ - /* It has to match "variables" below. */ - enum - { - DL_PAGESIZE = 0, - }; - - GLRO(dl_pagesize) = *(size_t *) array[DL_PAGESIZE]; -} - -#else - -static void *variables[] = -{ - &GLRO(dl_pagesize) -}; - -static void -_dl_unprotect_relro (struct link_map *l) -{ - ElfW(Addr) start = ((l->l_addr + l->l_relro_addr) - & ~(GLRO(dl_pagesize) - 1)); - ElfW(Addr) end = ((l->l_addr + l->l_relro_addr + l->l_relro_size) - & ~(GLRO(dl_pagesize) - 1)); - - if (start != end) - __mprotect ((void *) start, end - start, PROT_READ | PROT_WRITE); -} - -void -_dl_static_init (struct link_map *l) -{ - struct link_map *rtld_map = l; - struct r_scope_elem **scope; - const ElfW(Sym) *ref = NULL; - lookup_t loadbase; - void (*f) (void *[]); - size_t i; - - loadbase = _dl_lookup_symbol_x ("_dl_var_init", l, &ref, l->l_local_scope, - NULL, 0, 1, NULL); - - for (scope = l->l_local_scope; *scope != NULL; scope++) - for (i = 0; i < (*scope)->r_nlist; i++) - if ((*scope)->r_list[i] == loadbase) - { - rtld_map = (*scope)->r_list[i]; - break; - } - - if (ref != NULL) - { - f = (void (*) (void *[])) DL_SYMBOL_ADDRESS (loadbase, ref); - _dl_unprotect_relro (rtld_map); - f (variables); - _dl_protect_relro (rtld_map); - } -} - -#endif diff --git a/ports/sysdeps/unix/sysv/linux/m68k/fchown.c b/ports/sysdeps/unix/sysv/linux/m68k/fchown.c deleted file mode 100644 index 3a69ecc9e7..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/fchown.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/fchown.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/fchownat.c b/ports/sysdeps/unix/sysv/linux/m68k/fchownat.c deleted file mode 100644 index dfed76aeb4..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/fchownat.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/fchownat.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/fcntl.c b/ports/sysdeps/unix/sysv/linux/m68k/fcntl.c deleted file mode 100644 index ea951bc4f9..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/fcntl.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/fcntl.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/fxstat.c b/ports/sysdeps/unix/sysv/linux/m68k/fxstat.c deleted file mode 100644 index 4f219f0b9d..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/fxstat.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/fxstat.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/fxstatat.c b/ports/sysdeps/unix/sysv/linux/m68k/fxstatat.c deleted file mode 100644 index 0f8b3135d8..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/fxstatat.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/fxstatat.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/getdents64.c b/ports/sysdeps/unix/sysv/linux/m68k/getdents64.c deleted file mode 100644 index 0c75fb5a06..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/getdents64.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/getdents64.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/getegid.c b/ports/sysdeps/unix/sysv/linux/m68k/getegid.c deleted file mode 100644 index 37b4b4a530..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/getegid.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/getegid.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/geteuid.c b/ports/sysdeps/unix/sysv/linux/m68k/geteuid.c deleted file mode 100644 index ebcb555b5e..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/geteuid.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/geteuid.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/getgid.c b/ports/sysdeps/unix/sysv/linux/m68k/getgid.c deleted file mode 100644 index 0a4d6061f0..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/getgid.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/getgid.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/getgroups.c b/ports/sysdeps/unix/sysv/linux/m68k/getgroups.c deleted file mode 100644 index 102ea24e14..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/getgroups.c +++ /dev/null @@ -1,2 +0,0 @@ -/* We also have to rewrite the kernel gid_t to the user land type. */ -#include <sysdeps/unix/sysv/linux/i386/getgroups.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/getmsg.c b/ports/sysdeps/unix/sysv/linux/m68k/getmsg.c deleted file mode 100644 index 3a1fa08525..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/getmsg.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/getmsg.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/getpagesize.c b/ports/sysdeps/unix/sysv/linux/m68k/getpagesize.c deleted file mode 100644 index f7f72fbd8d..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/getpagesize.c +++ /dev/null @@ -1,49 +0,0 @@ -/* Copyright (C) 2000-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@suse.de>. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <unistd.h> -#include <sys/param.h> -#include <errno.h> - -#include <ldsodefs.h> -#include <sysdep.h> -#include <sys/syscall.h> - -/* Return the system page size. */ -int -__getpagesize (void) -{ -#ifdef __NR_getpagesize - int result; -#endif - - if (GLRO(dl_pagesize) != 0) - return GLRO(dl_pagesize); - -#ifdef __NR_getpagesize - INTERNAL_SYSCALL_DECL (err); - result = INTERNAL_SYSCALL (getpagesize, err, 0); - /* The only possible error is ENOSYS. */ - if (!INTERNAL_SYSCALL_ERROR_P (result, err)) - return result; -#endif - - return 4096; -} -libc_hidden_def (__getpagesize) -weak_alias (__getpagesize, getpagesize) diff --git a/ports/sysdeps/unix/sysv/linux/m68k/getresgid.c b/ports/sysdeps/unix/sysv/linux/m68k/getresgid.c deleted file mode 100644 index b703a414cc..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/getresgid.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/getresgid.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/getresuid.c b/ports/sysdeps/unix/sysv/linux/m68k/getresuid.c deleted file mode 100644 index 0b14cefe34..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/getresuid.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/getresuid.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/getrlimit64.c b/ports/sysdeps/unix/sysv/linux/m68k/getrlimit64.c deleted file mode 100644 index fef018f471..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/getrlimit64.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/getrlimit64.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/getsysstats.c b/ports/sysdeps/unix/sysv/linux/m68k/getsysstats.c deleted file mode 100644 index c8aeb0fa1d..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/getsysstats.c +++ /dev/null @@ -1,37 +0,0 @@ -/* Determine various system internal values, Linux/m68k version. - Copyright (C) 2003-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@suse.de> - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - - -/* We need to define a special parser for /proc/cpuinfo. */ -#define GET_NPROCS_PARSER(FD, BUFFER, CP, RE, BUFFER_END, RESULT) \ - do \ - { \ - (RESULT) = 0; \ - /* Read all lines and count the lines starting with the string \ - "CPU:". We don't have to fear extremely long lines since \ - the kernel will not generate them. 8192 bytes are really \ - enough. */ \ - char *l; \ - while ((l = next_line (FD, BUFFER, &CP, &RE, BUFFER_END)) != NULL) \ - if (strncmp (l, "CPU:", 4) == 0) \ - ++(RESULT); \ - } \ - while (0) - -#include <sysdeps/unix/sysv/linux/getsysstats.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/getuid.c b/ports/sysdeps/unix/sysv/linux/m68k/getuid.c deleted file mode 100644 index d682c79a49..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/getuid.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/getuid.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/glob64.c b/ports/sysdeps/unix/sysv/linux/m68k/glob64.c deleted file mode 100644 index 82a9a296a7..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/glob64.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/glob64.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/init-first.c b/ports/sysdeps/unix/sysv/linux/m68k/init-first.c deleted file mode 100644 index 5d37af7654..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/init-first.c +++ /dev/null @@ -1,74 +0,0 @@ -/* Initialization code run first thing by the ELF startup code. Linux/m68k. - Copyright (C) 2010-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Maxim Kuvyrkov <maxim@codesourcery.com>, 2010. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -/* Note: linking in vDSO to a static binary requires changes to - the main GLIBC proper. Not yet implemented. */ -#ifdef SHARED - -#include <dl-vdso.h> -#include <bits/m68k-vdso.h> - -static inline void -_libc_vdso_platform_setup (void) -{ - void *p; - - PREPARE_VERSION (linux26, "LINUX_2.6", 61765110); - - /* It may happen that rtld didn't initialize the vDSO, so fallback - to the syscall implementations if _dl_vdso_vsym returns NULL. - This may happen when a static executable dlopen's a dynamic library. - This really is nothing more than a workaround for rtld/csu - deficiency. Ideally, init code would setup the vDSO for static - binaries too. */ - - p = _dl_vdso_vsym ("__kernel_read_tp", &linux26); - if (p != NULL) - { - __vdso_read_tp = p; - __rtld___vdso_read_tp = p; - } - else - assert (__vdso_read_tp == (void *) __vdso_read_tp_stub); - - p = _dl_vdso_vsym ("__kernel_atomic_cmpxchg_32", &linux26); - if (p != NULL) - { - __vdso_atomic_cmpxchg_32 = p; - __rtld___vdso_atomic_cmpxchg_32 = p; - } - else - assert (__vdso_atomic_cmpxchg_32 - == (void *) __vdso_atomic_cmpxchg_32_stub); - - p = _dl_vdso_vsym ("__kernel_atomic_barrier", &linux26); - if (p != NULL) - { - __vdso_atomic_barrier = p; - __rtld___vdso_atomic_barrier = p; - } - else - assert (__vdso_atomic_barrier == (void *) __vdso_atomic_barrier_stub); -} - -#define VDSO_SETUP _libc_vdso_platform_setup - -#endif /* SHARED */ - -#include <csu/init-first.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/kernel-features.h b/ports/sysdeps/unix/sysv/linux/m68k/kernel-features.h deleted file mode 100644 index 3b05e96610..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/kernel-features.h +++ /dev/null @@ -1,55 +0,0 @@ -/* Set flags signalling availability of kernel features based on given - kernel version number. - Copyright (C) 2008-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -/* Many syscalls were added in 2.6.10 for m68k. */ -#define __ASSUME_UTIMES 1 - -/* Support for various CLOEXEC and NONBLOCK flags was added 2.6.23. */ -#if __LINUX_KERNEL_VERSION >= 0x020617 -# define __ASSUME_O_CLOEXEC 1 -#endif - -/* Support for various CLOEXEC and NONBLOCK flags was added in 2.6.27. */ -#if __LINUX_KERNEL_VERSION >= 0x02061b -# define __ASSUME_SOCK_CLOEXEC 1 -# define __ASSUME_IN_NONBLOCK 1 -# define __ASSUME_PIPE2 1 -# define __ASSUME_EVENTFD2 1 -# define __ASSUME_SIGNALFD4 1 -# define __ASSUME_DUP3 1 -#endif - -/* Support for the accept4 syscall was added in 2.6.28. */ -#if __LINUX_KERNEL_VERSION >= 0x02061c -# define __ASSUME_ACCEPT4 1 -#endif - -#include_next <kernel-features.h> - -/* These syscalls were added only in 3.0 for m68k. */ -#if __LINUX_KERNEL_VERSION < 0x030000 -# undef __ASSUME_PSELECT -# undef __ASSUME_PPOLL -#endif - -/* No support for PI futexes or robust mutexes before 3.10 for m68k. */ -#if __LINUX_KERNEL_VERSION < 0x030a00 -# undef __ASSUME_REQUEUE_PI -# undef __ASSUME_SET_ROBUST_LIST -#endif diff --git a/ports/sysdeps/unix/sysv/linux/m68k/lchown.c b/ports/sysdeps/unix/sysv/linux/m68k/lchown.c deleted file mode 100644 index c89de99ba2..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/lchown.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/lchown.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/ldconfig.h b/ports/sysdeps/unix/sysv/linux/m68k/ldconfig.h deleted file mode 100644 index 953f192bcd..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/ldconfig.h +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/ldconfig.h> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/ldsodefs.h b/ports/sysdeps/unix/sysv/linux/m68k/ldsodefs.h deleted file mode 100644 index 5ae1d6f899..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/ldsodefs.h +++ /dev/null @@ -1,32 +0,0 @@ -/* Run-time dynamic linker data structures for loaded ELF shared objects. M68K. - Copyright (C) 2013-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef _LDSODEFS_H - -/* Get the real definitions. */ -#include_next <ldsodefs.h> - -/* Now define our stuff. */ - -/* We need special support to initialize DSO loaded for statically linked - binaries. */ -extern void _dl_static_init (struct link_map *map); -#undef DL_STATIC_INIT -#define DL_STATIC_INIT(map) _dl_static_init (map) - -#endif /* ldsodefs.h */ diff --git a/ports/sysdeps/unix/sysv/linux/m68k/libc-m68k-vdso.c b/ports/sysdeps/unix/sysv/linux/m68k/libc-m68k-vdso.c deleted file mode 100644 index 45982e99b9..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/libc-m68k-vdso.c +++ /dev/null @@ -1 +0,0 @@ -#include "m68k-vdso.c" diff --git a/ports/sysdeps/unix/sysv/linux/m68k/lockf64.c b/ports/sysdeps/unix/sysv/linux/m68k/lockf64.c deleted file mode 100644 index a88f5a784a..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/lockf64.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/lockf64.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/lxstat.c b/ports/sysdeps/unix/sysv/linux/m68k/lxstat.c deleted file mode 100644 index 2371cd9719..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/lxstat.c +++ /dev/null @@ -1,2 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/lxstat.c> - diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/Makefile b/ports/sysdeps/unix/sysv/linux/m68k/m680x0/Makefile deleted file mode 100644 index 91bd35800a..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/Makefile +++ /dev/null @@ -1,3 +0,0 @@ -ifeq ($(subdir),stdlib) -gen-as-const-headers += ucontext_i.sym -endif diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/getcontext.S b/ports/sysdeps/unix/sysv/linux/m68k/m680x0/getcontext.S deleted file mode 100644 index d383f95cc0..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/getcontext.S +++ /dev/null @@ -1,63 +0,0 @@ -/* Save current context. - Copyright (C) 2012-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#include <sysdep.h> - -#include "ucontext_i.h" - - -ENTRY(__getcontext) - /* Load address of the context data structure. */ - move.l 4(%sp), %a0 - - /* Save the preserved registers and the return address. */ - movem.l %d2-%d7, oGREGS+2*4(%a0) - movem.l %a2-%a6, oGREGS+10*4(%a0) - lea 4(%sp), %a1 - move.l %a1, oSP(%a0) - move.l (%sp), oPC(%a0) - fmovem.l %fpsr/%fpcr/%fpiar, oFPREGS(%a0) - fmovem.x %fp2-%fp7, oFP2(%a0) - cfi_def_cfa (%a0, 0) - cfi_offset (%d2, oGREGS+2*4) - cfi_offset (%d3, oGREGS+3*4) - cfi_offset (%pc, oPC) - - /* Save the current signal mask. */ - lea oSIGMASK(%a0), %a1 - move.l %a1, %d3 - clr.l %d2 - move.l #SIG_SETMASK, %d1 - move.l #__NR_sigprocmask, %d0 - trap #0 - /* Restore registers. */ - move.l oGREGS+2*4(%a0), %d2 - cfi_restore (%d2) - move.l oGREGS+3*4(%a0), %d3 - cfi_restore (%d3) - cfi_def_cfa (%sp, 4) - cfi_offset (%pc, -4) - cmp.l #-4095, %d0 /* Check %d0 for error. */ - jcc SYSCALL_ERROR_LABEL /* Jump to error handler. */ - -0: /* All done, return 0 for success. */ - clr.l %d0 - rts -PSEUDO_END(__getcontext) - -weak_alias (__getcontext, getcontext) diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/makecontext.S b/ports/sysdeps/unix/sysv/linux/m68k/m680x0/makecontext.S deleted file mode 100644 index 0d98753eec..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/makecontext.S +++ /dev/null @@ -1,100 +0,0 @@ -/* Create new context. - Copyright (C) 2012-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#include <sysdep.h> - -#include "ucontext_i.h" - - -ENTRY(__makecontext) - move.l 4(%sp), %a0 - - /* Get the address of the function we are supposed to run. */ - move.l 8(%sp), oPC(%a0) - - /* Compute the address of the stack. The information comes from - to us_stack element. */ - move.l oSS_SP(%a0), %a1 - add.l oSS_SIZE(%a0), %a1 - - /* Remember the number of parameters for the exit handler since - it has to remove them. We store the number in the D7 register - which the function we will call must preserve. */ - move.l 12(%sp), %d1 - move.l %d1, oGREGS+7*4(%a0) - - /* Make room on the new stack for the parameters. - Room for the arguments, return address (== 1f) and - oLINK pointer is needed. */ - neg.l %d1 - lea -8(%a1,%d1.l*4), %a1 - neg.l %d1 - - /* Store the future stack pointer. */ - move.l %a1, oSP(%a0) - - /* Put the next context on the new stack (from the uc_link - element). */ - move.l oLINK(%a0), 4(%a1,%d1.l*4) - - /* Copy all the parameters. */ -1: subq.l #1,%d1 - jmi 2f - move.l 16(%sp,%d1.l*4), 4(%a1,%d1.l*4) - jra 1b -2: - - /* If the function we call returns we must continue with the - context which is given in the uc_link element. To do this - set the return address for the function the user provides - to a little bit of helper code which does the magic (see - below). */ - lea 1f(%pc), %a0 - move.l %a0, (%a1) - /* 'makecontext' returns no value. */ - rts - - /* This is the helper code which gets called if a function which - is registered with 'makecontext' returns. In this case we - have to install the context listed in the uc_link element of - the context 'makecontext' manipulated at the time of the - 'makecontext' call. If the pointer is NULL the process must - terminate. */ - cfi_endproc -1: - /* This removes the parameters passed to the function given to - 'makecontext' from the stack. D7 contains the number of - parameters (see above). */ - lea (%sp,%d7.l*4), %sp - - tst.l (%sp) /* Check the next context. */ - jeq 2f /* If it is zero exit. */ - - jbsr JUMPTARGET(__setcontext) - /* If this returns (which can happen if the syscall fails) we'll - exit the program with the return error value (-1). */ - - move.l %d0, (%sp) -2: jbsr HIDDEN_JUMPTARGET(exit) - /* The 'exit' call should never return. In case it does cause - the process to terminate. */ - illegal - cfi_startproc -END(__makecontext) - -weak_alias (__makecontext, makecontext) diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/ld.abilist b/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/ld.abilist deleted file mode 100644 index fc11e36345..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/ld.abilist +++ /dev/null @@ -1,18 +0,0 @@ -GLIBC_2.0 - GLIBC_2.0 A - __libc_memalign F - _r_debug D 0x14 - calloc F - free F - malloc F - realloc F -GLIBC_2.1 - GLIBC_2.1 A - __libc_stack_end D 0x4 - _dl_mcount F -GLIBC_2.3 - GLIBC_2.3 A - __tls_get_addr F -GLIBC_2.4 - GLIBC_2.4 A - __stack_chk_guard D 0x4 diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libBrokenLocale.abilist b/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libBrokenLocale.abilist deleted file mode 100644 index f4ca37f44b..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libBrokenLocale.abilist +++ /dev/null @@ -1,3 +0,0 @@ -GLIBC_2.0 - GLIBC_2.0 A - __ctype_get_mb_cur_max F diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libanl.abilist b/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libanl.abilist deleted file mode 100644 index c9755d8a33..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libanl.abilist +++ /dev/null @@ -1,6 +0,0 @@ -GLIBC_2.2.3 - GLIBC_2.2.3 A - gai_cancel F - gai_error F - gai_suspend F - getaddrinfo_a F diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libc.abilist b/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libc.abilist deleted file mode 100644 index 9010ea733b..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libc.abilist +++ /dev/null @@ -1,2295 +0,0 @@ -GCC_3.0 - GCC_3.0 A - _Unwind_Find_FDE F - __deregister_frame_info_bases F - __register_frame_info_bases F - __register_frame_info_table_bases F -GLIBC_2.0 - GLIBC_2.0 A - _IO_adjust_column F - _IO_default_doallocate F - _IO_default_finish F - _IO_default_pbackfail F - _IO_default_uflow F - _IO_default_xsgetn F - _IO_default_xsputn F - _IO_do_write F - _IO_doallocbuf F - _IO_fclose F - _IO_fdopen F - _IO_feof F - _IO_ferror F - _IO_fflush F - _IO_fgetpos F - _IO_fgets F - _IO_file_attach F - _IO_file_close F - _IO_file_close_it F - _IO_file_doallocate F - _IO_file_fopen F - _IO_file_init F - _IO_file_jumps D 0x54 - _IO_file_open F - _IO_file_overflow F - _IO_file_read F - _IO_file_seek F - _IO_file_seekoff F - _IO_file_setbuf F - _IO_file_stat F - _IO_file_sync F - _IO_file_underflow F - _IO_file_write F - _IO_file_xsputn F - _IO_flockfile F - _IO_flush_all F - _IO_flush_all_linebuffered F - _IO_fopen F - _IO_fprintf F - _IO_fputs F - _IO_fread F - _IO_free_backup_area F - _IO_fsetpos F - _IO_ftell F - _IO_ftrylockfile F - _IO_funlockfile F - _IO_fwrite F - _IO_getc F - _IO_getline F - _IO_gets F - _IO_init F - _IO_init_marker F - _IO_link_in F - _IO_list_all D 0x4 - _IO_marker_delta F - _IO_marker_difference F - _IO_padn F - _IO_peekc_locked F - _IO_popen F - _IO_printf F - _IO_proc_close F - _IO_proc_open F - _IO_putc F - _IO_puts F - _IO_remove_marker F - _IO_seekmark F - _IO_seekoff F - _IO_seekpos F - _IO_setb F - _IO_setbuffer F - _IO_setvbuf F - _IO_sgetn F - _IO_sprintf F - _IO_sputbackc F - _IO_sscanf F - _IO_stderr_ D 0x50 - _IO_stdin_ D 0x50 - _IO_stdout_ D 0x50 - _IO_str_init_readonly F - _IO_str_init_static F - _IO_str_overflow F - _IO_str_pbackfail F - _IO_str_seekoff F - _IO_str_underflow F - _IO_sungetc F - _IO_switch_to_get_mode F - _IO_un_link F - _IO_ungetc F - _IO_unsave_markers F - _IO_vfprintf F - _IO_vfscanf F - _IO_vsprintf F - ___brk_addr D 0x4 - __adjtimex F - __after_morecore_hook D 0x4 - __argz_count F - __argz_next F - __argz_stringify F - __assert_fail F - __assert_perror_fail F - __bsd_getpgrp F - __bzero F - __check_rhosts_file D 0x4 - __clone F - __close F - __cmsg_nxthdr F - __connect F - __ctype32_b D 0x4 - __ctype_b D 0x4 - __ctype_get_mb_cur_max F - __ctype_tolower D 0x4 - __ctype_toupper D 0x4 - __curbrk D 0x4 - __daylight D 0x4 - __dcgettext F - __default_morecore F - __deregister_frame F - __deregister_frame_info F - __dgettext F - __divdi3 F - __dup2 F - __environ D 0x4 - __errno_location F - __fcntl F - __ffs F - __finite F - __finitef F - __finitel F - __fork F - __fpu_control D 0x4 - __frame_state_for F - __free_hook D 0x4 - __fxstat F - __getdelim F - __getpagesize F - __getpgid F - __getpid F - __gettimeofday F - __gmtime_r F - __h_errno_location F - __isinf F - __isinff F - __isinfl F - __isnan F - __isnanf F - __isnanl F - __iswctype F - __ivaliduser F - __libc_calloc F - __libc_free F - __libc_init_first F - __libc_mallinfo F - __libc_malloc F - __libc_mallopt F - __libc_memalign F - __libc_pvalloc F - __libc_realloc F - __libc_start_main F - __libc_valloc F - __lseek F - __lxstat F - __malloc_hook D 0x4 - __malloc_initialize_hook D 0x4 - __mbrlen F - __mbrtowc F - __memalign_hook D 0x4 - __mempcpy F - __moddi3 F - __monstartup F - __morecore D 0x4 - __nss_configure_lookup F - __nss_database_lookup F - __nss_group_lookup F - __nss_hosts_lookup F - __nss_next F - __nss_passwd_lookup F - __open F - __overflow F - __pipe F - __printf_fp F - __profile_frequency F - __progname D 0x4 - __progname_full D 0x4 - __rcmd_errstr D 0x4 - __read F - __realloc_hook D 0x4 - __register_frame F - __register_frame_info F - __register_frame_info_table F - __register_frame_table F - __res_randomid F - __sbrk F - __sched_get_priority_max F - __sched_get_priority_min F - __sched_getparam F - __sched_getscheduler F - __sched_setscheduler F - __sched_yield F - __secure_getenv F - __select F - __send F - __setpgid F - __sigaction F - __sigaddset F - __sigdelset F - __sigismember F - __sigpause F - __sigsetjmp F - __stpcpy F - __stpncpy F - __strcasecmp F - __strdup F - __strerror_r F - __strtod_internal F - __strtof_internal F - __strtok_r F - __strtol_internal F - __strtold_internal F - __strtoll_internal F - __strtoq_internal F - __strtoul_internal F - __strtoull_internal F - __strtouq_internal F - __sysv_signal F - __timezone D 0x4 - __tzname D 0x8 - __udivdi3 F - __uflow F - __umoddi3 F - __underflow F - __vfscanf F - __vsnprintf F - __vsscanf F - __wait F - __waitpid F - __wcstod_internal F - __wcstof_internal F - __wcstol_internal F - __wcstold_internal F - __wcstoll_internal F - __wcstoul_internal F - __wcstoull_internal F - __write F - __xmknod F - __xpg_basename F - __xstat F - _environ D 0x4 - _exit F - _libc_intl_domainname D 0x5 - _longjmp F - _mcleanup F - _mcount F - _nl_default_dirname D 0x12 - _nl_domain_bindings D 0x4 - _nl_msg_cat_cntr D 0x4 - _null_auth D 0xc - _obstack D 0x4 - _obstack_allocated_p F - _obstack_begin F - _obstack_begin_1 F - _obstack_free F - _obstack_memory_used F - _obstack_newchunk F - _res D 0x1fe - _rpc_dtablesize F - _seterr_reply F - _setjmp F - _sys_errlist D 0x1ec - _sys_nerr D 0x4 - _sys_siglist D 0x80 - _tolower F - _toupper F - a64l F - abort F - abs F - accept F - access F - acct F - addmntent F - adjtime F - adjtimex F - advance F - alarm F - alphasort F - argz_add F - argz_add_sep F - argz_append F - argz_count F - argz_create F - argz_create_sep F - argz_delete F - argz_extract F - argz_insert F - argz_next F - argz_replace F - argz_stringify F - asctime F - asctime_r F - asprintf F - atexit F - atof F - atoi F - atol F - atoll F - authnone_create F - authunix_create F - authunix_create_default F - basename F - bcmp F - bcopy F - bdflush F - bind F - bindresvport F - bindtextdomain F - brk F - bsd_signal F - bsearch F - btowc F - bzero F - cacheflush F - calloc F - callrpc F - canonicalize_file_name F - catclose F - catgets F - catopen F - cfgetispeed F - cfgetospeed F - cfmakeraw F - cfree F - cfsetispeed F - cfsetospeed F - cfsetspeed F - chdir F - chflags F - chmod F - chown F - chroot F - clearenv F - clearerr F - clearerr_unlocked F - clnt_broadcast F - clnt_create F - clnt_pcreateerror F - clnt_perrno F - clnt_perror F - clnt_spcreateerror F - clnt_sperrno F - clnt_sperror F - clntraw_create F - clnttcp_create F - clntudp_bufcreate F - clntudp_create F - clock F - clone F - close F - closedir F - closelog F - confstr F - connect F - copysign F - copysignf F - copysignl F - creat F - create_module F - ctermid F - ctime F - ctime_r F - cuserid F - daemon F - daylight D 0x4 - dcgettext F - delete_module F - dgettext F - difftime F - dirfd F - dirname F - div F - dprintf F - drand48 F - drand48_r F - dup F - dup2 F - dysize F - ecvt F - ecvt_r F - endaliasent F - endfsent F - endgrent F - endhostent F - endmntent F - endnetent F - endnetgrent F - endprotoent F - endpwent F - endrpcent F - endservent F - endspent F - endttyent F - endusershell F - endutent F - environ D 0x4 - envz_add F - envz_entry F - envz_get F - envz_merge F - envz_remove F - envz_strip F - erand48 F - erand48_r F - err F - error F - error_at_line F - error_message_count D 0x4 - error_one_per_line D 0x4 - error_print_progname D 0x4 - errx F - ether_aton F - ether_aton_r F - ether_hostton F - ether_line F - ether_ntoa F - ether_ntoa_r F - ether_ntohost F - euidaccess F - execl F - execle F - execlp F - execv F - execve F - execvp F - exit F - fchdir F - fchflags F - fchmod F - fchown F - fclose F - fcloseall F - fcntl F - fcvt F - fcvt_r F - fdatasync F - fdopen F - feof F - feof_unlocked F - ferror F - ferror_unlocked F - fexecve F - fflush F - fflush_unlocked F - ffs F - fgetc F - fgetgrent F - fgetgrent_r F - fgetpos F - fgetpwent F - fgetpwent_r F - fgets F - fgetspent F - fgetspent_r F - fileno F - fileno_unlocked F - finite F - finitef F - finitel F - flock F - flockfile F - fnmatch F - fopen F - fopencookie F - fork F - fpathconf F - fprintf F - fputc F - fputc_unlocked F - fputs F - fread F - free F - freeaddrinfo F - freopen F - frexp F - frexpf F - frexpl F - fscanf F - fseek F - fsetpos F - fstatfs F - fsync F - ftell F - ftime F - ftok F - ftruncate F - ftrylockfile F - fts_children F - fts_close F - fts_open F - fts_read F - fts_set F - ftw F - funlockfile F - fwrite F - gcvt F - get_avphys_pages F - get_current_dir_name F - get_kernel_syms F - get_myaddress F - get_nprocs F - get_nprocs_conf F - get_phys_pages F - getaddrinfo F - getaliasbyname F - getaliasbyname_r F - getaliasent F - getaliasent_r F - getc F - getc_unlocked F - getchar F - getchar_unlocked F - getcwd F - getdelim F - getdirentries F - getdomainname F - getdtablesize F - getegid F - getenv F - geteuid F - getfsent F - getfsfile F - getfsspec F - getgid F - getgrent F - getgrent_r F - getgrgid F - getgrgid_r F - getgrnam F - getgrnam_r F - getgroups F - gethostbyaddr F - gethostbyaddr_r F - gethostbyname F - gethostbyname2 F - gethostbyname2_r F - gethostbyname_r F - gethostent F - gethostent_r F - gethostid F - gethostname F - getitimer F - getline F - getlogin F - getlogin_r F - getmntent F - getmntent_r F - getnetbyaddr F - getnetbyaddr_r F - getnetbyname F - getnetbyname_r F - getnetent F - getnetent_r F - getnetgrent F - getnetgrent_r F - getopt F - getopt_long F - getopt_long_only F - getpagesize F - getpass F - getpeername F - getpgid F - getpgrp F - getpid F - getppid F - getpriority F - getprotobyname F - getprotobyname_r F - getprotobynumber F - getprotobynumber_r F - getprotoent F - getprotoent_r F - getpublickey F - getpw F - getpwent F - getpwent_r F - getpwnam F - getpwnam_r F - getpwuid F - getpwuid_r F - getresgid F - getresuid F - getrlimit F - getrpcbyname F - getrpcbyname_r F - getrpcbynumber F - getrpcbynumber_r F - getrpcent F - getrpcent_r F - getrpcport F - getrusage F - gets F - getsecretkey F - getservbyname F - getservbyname_r F - getservbyport F - getservbyport_r F - getservent F - getservent_r F - getsid F - getsockname F - getsockopt F - getspent F - getspent_r F - getspnam F - getspnam_r F - getsubopt F - gettext F - gettimeofday F - getttyent F - getttynam F - getuid F - getusershell F - getutent F - getutent_r F - getutid F - getutid_r F - getutline F - getutline_r F - getw F - getwd F - glob F - glob_pattern_p F - globfree F - gmtime F - gmtime_r F - group_member F - gsignal F - gtty F - h_errlist D 0x14 - h_nerr D 0x4 - hasmntopt F - hcreate F - hcreate_r F - hdestroy F - hdestroy_r F - herror F - hsearch F - hsearch_r F - hstrerror F - htonl F - htons F - index F - inet_addr F - inet_aton F - inet_lnaof F - inet_makeaddr F - inet_netof F - inet_network F - inet_nsap_addr F - inet_nsap_ntoa F - inet_ntoa F - inet_ntop F - inet_pton F - init_module F - initgroups F - initstate F - initstate_r F - innetgr F - insque F - ioctl F - iruserok F - isalnum F - isalpha F - isascii F - isatty F - isblank F - iscntrl F - isdigit F - isfdtype F - isgraph F - isinf F - isinff F - isinfl F - islower F - isnan F - isnanf F - isnanl F - isprint F - ispunct F - isspace F - isupper F - iswalnum F - iswalpha F - iswcntrl F - iswctype F - iswdigit F - iswgraph F - iswlower F - iswprint F - iswpunct F - iswspace F - iswupper F - iswxdigit F - isxdigit F - jrand48 F - jrand48_r F - kill F - killpg F - klogctl F - l64a F - labs F - lchown F - lckpwdf F - lcong48 F - lcong48_r F - ldexp F - ldexpf F - ldexpl F - ldiv F - lfind F - link F - listen F - llabs F - lldiv F - llseek F - loc1 D 0x4 - loc2 D 0x4 - localeconv F - localtime F - localtime_r F - lockf F - locs D 0x4 - longjmp F - lrand48 F - lrand48_r F - lsearch F - lseek F - madvise F - mallinfo F - malloc F - malloc_get_state F - malloc_set_state F - malloc_stats F - malloc_trim F - malloc_usable_size F - mallopt F - mallwatch D 0x4 - mblen F - mbrlen F - mbrtowc F - mbsinit F - mbsnrtowcs F - mbsrtowcs F - mbstowcs F - mbtowc F - mcheck F - mcount F - memalign F - memccpy F - memchr F - memcmp F - memcpy F - memfrob F - memmem F - memmove F - memset F - mkdir F - mkfifo F - mkstemp F - mktemp F - mktime F - mlock F - mlockall F - mmap F - modf F - modff F - modfl F - monstartup F - mount F - mprobe F - mprotect F - mrand48 F - mrand48_r F - mremap F - msgctl F - msgget F - msgrcv F - msgsnd F - msync F - mtrace F - munlock F - munlockall F - munmap F - muntrace F - nanosleep F - nfsservctl F - nice F - nl_langinfo F - nrand48 F - nrand48_r F - ntohl F - ntohs F - obstack_alloc_failed_handler D 0x4 - obstack_exit_failure D 0x4 - obstack_free F - obstack_printf F - obstack_vprintf F - on_exit F - open F - open_memstream F - opendir F - openlog F - optarg D 0x4 - opterr D 0x4 - optind D 0x4 - optopt D 0x4 - parse_printf_format F - pathconf F - pause F - pclose F - perror F - personality F - pipe F - pmap_getmaps F - pmap_getport F - pmap_rmtcall F - pmap_set F - pmap_unset F - poll F - popen F - prctl F - printf F - profil F - program_invocation_name D 0x4 - program_invocation_short_name D 0x4 - pselect F - psignal F - pthread_attr_destroy F - pthread_attr_getdetachstate F - pthread_attr_getinheritsched F - pthread_attr_getschedparam F - pthread_attr_getschedpolicy F - pthread_attr_getscope F - pthread_attr_init F - pthread_attr_setdetachstate F - pthread_attr_setinheritsched F - pthread_attr_setschedparam F - pthread_attr_setschedpolicy F - pthread_attr_setscope F - pthread_cond_broadcast F - pthread_cond_destroy F - pthread_cond_init F - pthread_cond_signal F - pthread_cond_timedwait F - pthread_cond_wait F - pthread_condattr_destroy F - pthread_condattr_init F - pthread_equal F - pthread_exit F - pthread_getschedparam F - pthread_mutex_destroy F - pthread_mutex_init F - pthread_mutex_lock F - pthread_mutex_unlock F - pthread_self F - pthread_setcancelstate F - pthread_setcanceltype F - pthread_setschedparam F - ptrace F - putc F - putc_unlocked F - putchar F - putchar_unlocked F - putenv F - putpwent F - puts F - putspent F - pututline F - putw F - pvalloc F - qecvt F - qecvt_r F - qfcvt F - qfcvt_r F - qgcvt F - qsort F - query_module F - quotactl F - raise F - rand F - rand_r F - random F - random_r F - rcmd F - re_comp F - re_compile_fastmap F - re_compile_pattern F - re_exec F - re_match F - re_match_2 F - re_max_failures D 0x4 - re_search F - re_search_2 F - re_set_registers F - re_set_syntax F - re_syntax_options D 0x4 - read F - readdir F - readdir_r F - readlink F - readv F - realloc F - realpath F - reboot F - recv F - recvfrom F - recvmsg F - regcomp F - regerror F - regexec F - regfree F - register_printf_function F - registerrpc F - remove F - remque F - rename F - res_init F - revoke F - rewind F - rewinddir F - rexec F - rexecoptions D 0x4 - rindex F - rmdir F - rpc_createerr D 0x10 - rpmatch F - rresvport F - ruserok F - ruserpass F - sbrk F - scalbn F - scalbnf F - scalbnl F - scandir F - scanf F - sched_get_priority_max F - sched_get_priority_min F - sched_getparam F - sched_getscheduler F - sched_rr_get_interval F - sched_setparam F - sched_setscheduler F - sched_yield F - seed48 F - seed48_r F - seekdir F - select F - semctl F - semget F - semop F - send F - sendmsg F - sendto F - setaliasent F - setbuf F - setbuffer F - setcontext F - setdomainname F - setegid F - setenv F - seteuid F - setfsent F - setfsgid F - setfsuid F - setgid F - setgrent F - setgroups F - sethostent F - sethostid F - sethostname F - setitimer F - setjmp F - setlinebuf F - setlocale F - setlogin F - setlogmask F - setmntent F - setnetent F - setnetgrent F - setpgid F - setpgrp F - setpriority F - setprotoent F - setpwent F - setregid F - setresgid F - setresuid F - setreuid F - setrlimit F - setrpcent F - setservent F - setsid F - setsockopt F - setspent F - setstate F - setstate_r F - settimeofday F - setttyent F - setuid F - setusershell F - setutent F - setvbuf F - sgetspent F - sgetspent_r F - shmat F - shmctl F - shmdt F - shmget F - shutdown F - sigaction F - sigaddset F - sigaltstack F - sigandset F - sigblock F - sigdelset F - sigemptyset F - sigfillset F - siggetmask F - siginterrupt F - sigisemptyset F - sigismember F - siglongjmp F - signal F - sigorset F - sigpause F - sigpending F - sigprocmask F - sigreturn F - sigsetmask F - sigstack F - sigsuspend F - sigvec F - sigwait F - sleep F - snprintf F - socket F - socketpair F - sprintf F - srand F - srand48 F - srand48_r F - srandom F - srandom_r F - sscanf F - ssignal F - sstk F - statfs F - stderr D 0x4 - stdin D 0x4 - stdout D 0x4 - step F - stime F - stpcpy F - stpncpy F - strcasecmp F - strcat F - strchr F - strcmp F - strcoll F - strcpy F - strcspn F - strdup F - strerror F - strerror_r F - strfmon F - strfry F - strftime F - strlen F - strncasecmp F - strncat F - strncmp F - strncpy F - strndup F - strnlen F - strpbrk F - strptime F - strrchr F - strsep F - strsignal F - strspn F - strstr F - strtod F - strtof F - strtok F - strtok_r F - strtol F - strtold F - strtoll F - strtoq F - strtoul F - strtoull F - strtouq F - strxfrm F - stty F - svc_exit F - svc_fdset D 0x80 - svc_getreq F - svc_getreqset F - svc_register F - svc_run F - svc_sendreply F - svc_unregister F - svcauthdes_stats D 0xc - svcerr_auth F - svcerr_decode F - svcerr_noproc F - svcerr_noprog F - svcerr_progvers F - svcerr_systemerr F - svcerr_weakauth F - svcfd_create F - svcraw_create F - svctcp_create F - svcudp_bufcreate F - svcudp_create F - svcudp_enablecache F - swab F - swapoff F - swapon F - symlink F - sync F - sys_errlist D 0x1ec - sys_nerr D 0x4 - sys_sigabbrev D 0x80 - sys_siglist D 0x80 - syscall F - sysconf F - sysctl F - sysinfo F - syslog F - system F - tcdrain F - tcflow F - tcflush F - tcgetattr F - tcgetpgrp F - tcsendbreak F - tcsetattr F - tcsetpgrp F - tdelete F - telldir F - tempnam F - textdomain F - tfind F - time F - timegm F - timelocal F - times F - timezone D 0x4 - tmpfile F - tmpnam F - tmpnam_r F - toascii F - tolower F - toupper F - towctrans F - towlower F - towupper F - tr_break F - truncate F - tsearch F - ttyname F - ttyname_r F - ttyslot F - twalk F - tzname D 0x8 - tzset F - ualarm F - ulckpwdf F - ulimit F - umask F - umount F - uname F - ungetc F - unlink F - unsetenv F - updwtmp F - uselib F - usleep F - ustat F - utime F - utimes F - utmpname F - valloc F - vasprintf F - vdprintf F - verr F - verrx F - vfork F - vfprintf F - vfscanf F - vhangup F - vlimit F - vprintf F - vscanf F - vsnprintf F - vsprintf F - vsscanf F - vsyslog F - vtimes F - vwarn F - vwarnx F - wait F - wait3 F - wait4 F - waitpid F - warn F - warnx F - wcpcpy F - wcpncpy F - wcrtomb F - wcscat F - wcschr F - wcscmp F - wcscoll F - wcscpy F - wcscspn F - wcsdup F - wcslen F - wcsncat F - wcsncmp F - wcsncpy F - wcsnrtombs F - wcspbrk F - wcsrchr F - wcsrtombs F - wcsspn F - wcsstr F - wcstod F - wcstof F - wcstok F - wcstol F - wcstold F - wcstombs F - wcstoq F - wcstoul F - wcstouq F - wcswidth F - wcsxfrm F - wctob F - wctomb F - wctrans F - wctype F - wcwidth F - wmemchr F - wmemcmp F - wmemcpy F - wmemmove F - wmemset F - write F - writev F - xdr_accepted_reply F - xdr_array F - xdr_authunix_parms F - xdr_bool F - xdr_bytes F - xdr_callhdr F - xdr_callmsg F - xdr_char F - xdr_cryptkeyarg F - xdr_cryptkeyarg2 F - xdr_cryptkeyres F - xdr_des_block F - xdr_double F - xdr_enum F - xdr_float F - xdr_free F - xdr_int F - xdr_key_netstarg F - xdr_key_netstres F - xdr_keybuf F - xdr_keystatus F - xdr_long F - xdr_netobj F - xdr_opaque F - xdr_opaque_auth F - xdr_pmap F - xdr_pmaplist F - xdr_pointer F - xdr_reference F - xdr_rejected_reply F - xdr_replymsg F - xdr_rmtcall_args F - xdr_rmtcallres F - xdr_short F - xdr_string F - xdr_u_char F - xdr_u_int F - xdr_u_long F - xdr_u_short F - xdr_union F - xdr_vector F - xdr_void F - xdr_wrapstring F - xdrmem_create F - xdrrec_create F - xdrrec_endofrecord F - xdrrec_eof F - xdrrec_skiprecord F - xdrstdio_create F - xencrypt F - xprt_register F - xprt_unregister F -GLIBC_2.1 - GLIBC_2.1 A - _IO_2_1_stderr_ D 0x98 - _IO_2_1_stdin_ D 0x98 - _IO_2_1_stdout_ D 0x98 - _IO_do_write F - _IO_fclose F - _IO_fdopen F - _IO_fgetpos64 F - _IO_file_attach F - _IO_file_close_it F - _IO_file_finish F - _IO_file_fopen F - _IO_file_init F - _IO_file_overflow F - _IO_file_seekoff F - _IO_file_setbuf F - _IO_file_sync F - _IO_file_underflow F - _IO_file_write F - _IO_file_xsputn F - _IO_fopen F - _IO_fsetpos64 F - _IO_getline_info F - _IO_popen F - _IO_proc_close F - _IO_proc_open F - __asprintf F - __backtrace F - __backtrace_symbols F - __backtrace_symbols_fd F - __duplocale F - __freelocale F - __fxstat64 F - __isalnum_l F - __isalpha_l F - __isascii_l F - __isblank_l F - __iscntrl_l F - __isdigit_l F - __isgraph_l F - __islower_l F - __isprint_l F - __ispunct_l F - __isspace_l F - __isupper_l F - __iswalnum_l F - __iswalpha_l F - __iswblank_l F - __iswcntrl_l F - __iswctype_l F - __iswdigit_l F - __iswgraph_l F - __iswlower_l F - __iswprint_l F - __iswpunct_l F - __iswspace_l F - __iswupper_l F - __iswxdigit_l F - __isxdigit_l F - __key_decryptsession_pk_LOCAL D 0x4 - __key_encryptsession_pk_LOCAL D 0x4 - __key_gendes_LOCAL D 0x4 - __libc_allocate_rtsig F - __libc_current_sigrtmax F - __libc_current_sigrtmin F - __libc_freeres F - __libc_sa_len F - __lxstat64 F - __newlocale F - __poll F - __pread64 F - __pwrite64 F - __rawmemchr F - __signbit F - __signbitf F - __signbitl F - __strcasecmp_l F - __strcasestr F - __strcoll_l F - __strfmon_l F - __strncasecmp_l F - __strtod_l F - __strtof_l F - __strtol_l F - __strtold_l F - __strtoll_l F - __strtoul_l F - __strtoull_l F - __strxfrm_l F - __toascii_l F - __tolower_l F - __toupper_l F - __towctrans F - __towctrans_l F - __towlower_l F - __towupper_l F - __wcscasecmp_l F - __wcscoll_l F - __wcsncasecmp_l F - __wcstod_l F - __wcstof_l F - __wcstol_l F - __wcstold_l F - __wcstoll_l F - __wcstoul_l F - __wcstoull_l F - __wcsxfrm_l F - __wctype_l F - __xstat64 F - _authenticate F - _dl_mcount_wrapper F - _dl_mcount_wrapper_check F - _sys_errlist D 0x1f4 - _sys_nerr D 0x4 - _sys_siglist D 0x100 - addseverity F - alphasort64 F - argp_err_exit_status D 0x4 - argp_error F - argp_failure F - argp_help F - argp_parse F - argp_program_bug_address D 0x4 - argp_program_version D 0x4 - argp_program_version_hook D 0x4 - argp_state_help F - argp_usage F - authdes_create F - authdes_getucred F - authdes_pk_create F - backtrace F - backtrace_symbols F - backtrace_symbols_fd F - capget F - capset F - cbc_crypt F - clntunix_create F - creat64 F - des_setparity F - ecb_crypt F - endutxent F - fattach F - fclose F - fdetach F - fdopen F - ffsl F - ffsll F - fgetc_unlocked F - fgetpos64 F - fgets_unlocked F - fmtmsg F - fopen F - fopen64 F - fputs_unlocked F - fread_unlocked F - freopen64 F - fseeko F - fseeko64 F - fsetpos64 F - fstatfs64 F - fstatvfs F - fstatvfs64 F - ftello F - ftello64 F - ftruncate64 F - ftw64 F - fwrite_unlocked F - gai_strerror F - getcontext F - getdate F - getdate_err D 0x4 - getdate_r F - getmsg F - getnameinfo F - getnetname F - getpmsg F - getpt F - getrlimit64 F - getutxent F - getutxid F - getutxline F - glob64 F - globfree64 F - gnu_get_libc_release F - gnu_get_libc_version F - grantpt F - host2netname F - iconv F - iconv_close F - iconv_open F - if_freenameindex F - if_indextoname F - if_nameindex F - if_nametoindex F - in6addr_any D 0x10 - in6addr_loopback D 0x10 - isastream F - iswblank F - key_decryptsession F - key_decryptsession_pk F - key_encryptsession F - key_encryptsession_pk F - key_gendes F - key_get_conv F - key_secretkey_is_set F - key_setnet F - key_setsecret F - lockf64 F - lseek64 F - makecontext F - mempcpy F - mmap64 F - netname2host F - netname2user F - nftw F - nftw64 F - ntp_adjtime F - ntp_gettime F - open64 F - passwd2des F - pclose F - popen F - pread F - pread64 F - printf_size F - printf_size_info F - pthread_attr_init F - ptsname F - ptsname_r F - putgrent F - putmsg F - putpmsg F - pututxline F - pwrite F - pwrite64 F - rawmemchr F - readdir64 F - readdir64_r F - rtime F - scalbln F - scalblnf F - scalblnl F - scandir64 F - sendfile F - setrlimit64 F - setutxent F - sighold F - sigignore F - sigqueue F - sigrelse F - sigset F - sigtimedwait F - sigwaitinfo F - statfs64 F - statvfs F - statvfs64 F - strcasestr F - strtoimax F - strtoumax F - strverscmp F - svcunix_create F - svcunixfd_create F - swapcontext F - sys_errlist D 0x1f4 - sys_nerr D 0x4 - sys_sigabbrev D 0x100 - sys_siglist D 0x100 - sysv_signal F - tcgetsid F - tdestroy F - tmpfile F - tmpfile64 F - truncate64 F - umount2 F - unlockpt F - updwtmpx F - user2netname F - utmpxname F - versionsort F - versionsort64 F - waitid F - wcscasecmp F - wcsncasecmp F - wcsnlen F - wcstoimax F - wcstoll F - wcstoull F - wcstoumax F - wcswcs F - wordexp F - wordfree F - xdecrypt F - xdr_authdes_cred F - xdr_authdes_verf F - xdr_getcredres F - xdr_int16_t F - xdr_int32_t F - xdr_int8_t F - xdr_netnamestr F - xdr_sizeof F - xdr_uint16_t F - xdr_uint32_t F - xdr_uint8_t F - xdr_unixcred F -GLIBC_2.1.1 - GLIBC_2.1.1 A - _Exit F - __mempcpy_small F - __stpcpy_small F - __strcpy_small F - __strcspn_c1 F - __strcspn_c2 F - __strcspn_c3 F - __strpbrk_c2 F - __strpbrk_c3 F - __strsep_1c F - __strsep_2c F - __strsep_3c F - __strsep_g F - __strspn_c1 F - __strspn_c2 F - __strspn_c3 F - __strtok_r_1c F - __strverscmp F - getutmp F - getutmpx F - imaxabs F - imaxdiv F - strchrnul F - xdr_hyper F - xdr_int64_t F - xdr_longlong_t F - xdr_u_hyper F - xdr_u_longlong_t F - xdr_uint64_t F -GLIBC_2.1.2 - GLIBC_2.1.2 A - __vfork F - getaliasbyname_r F - getaliasent_r F - getgrent_r F - getgrgid_r F - getgrnam_r F - gethostbyaddr_r F - gethostbyname2_r F - gethostbyname_r F - gethostent_r F - getnetbyaddr_r F - getnetbyname_r F - getnetent_r F - getprotobyname_r F - getprotobynumber_r F - getprotoent_r F - getpwent_r F - getpwnam_r F - getpwuid_r F - getrpcbyname_r F - getrpcbynumber_r F - getrpcent_r F - getservbyname_r F - getservbyport_r F - getservent_r F - getspent_r F - getspnam_r F -GLIBC_2.1.3 - GLIBC_2.1.3 A - __cxa_atexit F - __cxa_finalize F - __sigsuspend F -GLIBC_2.10 - GLIBC_2.10 A - __cxa_at_quick_exit F - __posix_getopt F - accept4 F - endsgent F - fallocate F - fgetsgent F - fgetsgent_r F - getsgent F - getsgent_r F - getsgnam F - getsgnam_r F - malloc_info F - preadv F - preadv64 F - psiginfo F - putsgent F - pwritev F - pwritev64 F - quick_exit F - register_printf_modifier F - register_printf_specifier F - register_printf_type F - setsgent F - sgetsgent F - sgetsgent_r F -GLIBC_2.11 - GLIBC_2.11 A - __longjmp_chk F - execvpe F - fallocate64 F - mkostemps F - mkostemps64 F - mkstemps F - mkstemps64 F -GLIBC_2.12 - GLIBC_2.12 A - __m68k_read_tp F - _sys_errlist D 0x21c - _sys_nerr D 0x4 - ntp_gettimex F - recvmmsg F - sys_errlist D 0x21c - sys_nerr D 0x4 -GLIBC_2.13 - GLIBC_2.13 A - fanotify_init F - fanotify_mark F - prlimit F - prlimit64 F -GLIBC_2.14 - GLIBC_2.14 A - clock_adjtime F - name_to_handle_at F - open_by_handle_at F - sendmmsg F - setns F - syncfs F -GLIBC_2.15 - GLIBC_2.15 A - __fdelt_chk F - __fdelt_warn F - posix_spawn F - posix_spawnp F - process_vm_readv F - process_vm_writev F - scandirat F - scandirat64 F -GLIBC_2.16 - GLIBC_2.16 A - __getauxval F - __poll_chk F - __ppoll_chk F - aligned_alloc F - c16rtomb F - c32rtomb F - getauxval F - mbrtoc16 F - mbrtoc32 F - timespec_get F -GLIBC_2.17 - GLIBC_2.17 A - clock_getcpuclockid F - clock_getres F - clock_gettime F - clock_nanosleep F - clock_settime F - secure_getenv F -GLIBC_2.18 - GLIBC_2.18 A - __cxa_thread_atexit_impl F -GLIBC_2.2 - GLIBC_2.2 A - _IO_adjust_wcolumn F - _IO_fgetpos F - _IO_fgetpos64 F - _IO_free_wbackup_area F - _IO_fsetpos F - _IO_fsetpos64 F - _IO_init_wmarker F - _IO_iter_begin F - _IO_iter_end F - _IO_iter_file F - _IO_iter_next F - _IO_least_wmarker F - _IO_list_lock F - _IO_list_resetlock F - _IO_list_unlock F - _IO_seekwmark F - _IO_sputbackwc F - _IO_sungetwc F - _IO_switch_to_main_wget_area F - _IO_switch_to_wbackup_area F - _IO_switch_to_wget_mode F - _IO_unsave_wmarkers F - _IO_wdefault_doallocate F - _IO_wdefault_finish F - _IO_wdefault_pbackfail F - _IO_wdefault_uflow F - _IO_wdefault_xsgetn F - _IO_wdefault_xsputn F - _IO_wdo_write F - _IO_wdoallocbuf F - _IO_wfile_jumps D 0x54 - _IO_wfile_overflow F - _IO_wfile_seekoff F - _IO_wfile_sync F - _IO_wfile_underflow F - _IO_wfile_xsputn F - _IO_wmarker_delta F - _IO_wsetb F - __assert F - __ctype32_tolower D 0x4 - __ctype32_toupper D 0x4 - __cyg_profile_func_enter F - __cyg_profile_func_exit F - __endmntent F - __fbufsize F - __flbf F - __fpending F - __fpurge F - __freadable F - __freading F - __fsetlocking F - __fwritable F - __fwriting F - __fxstat64 F - __getmntent_r F - __lxstat64 F - __nl_langinfo_l F - __open64 F - __res_init F - __res_nclose F - __res_ninit F - __res_state F - __setmntent F - __statfs F - __strndup F - __sysconf F - __sysctl F - __wctrans_l F - __woverflow F - __wuflow F - __wunderflow F - __xpg_sigpause F - __xstat64 F - _flushlbf F - _res_hconf D 0x30 - alphasort64 F - bind_textdomain_codeset F - dcngettext F - dngettext F - fgetpos F - fgetpos64 F - fgetwc F - fgetwc_unlocked F - fgetws F - fgetws_unlocked F - fmemopen F - fopencookie F - fputwc F - fputwc_unlocked F - fputws F - fputws_unlocked F - fsetpos F - fsetpos64 F - fwide F - fwprintf F - fwscanf F - getdirentries64 F - getloadavg F - getrlimit F - getrlimit64 F - getwc F - getwc_unlocked F - getwchar F - getwchar_unlocked F - glob64 F - iruserok_af F - localeconv F - mcheck_check_all F - mcheck_pedantic F - memrchr F - mincore F - mkdtemp F - mkstemp64 F - moncontrol F - msgctl F - ngettext F - posix_fadvise F - posix_fadvise64 F - posix_fallocate F - posix_fallocate64 F - posix_madvise F - posix_memalign F - posix_spawn F - posix_spawn_file_actions_addclose F - posix_spawn_file_actions_adddup2 F - posix_spawn_file_actions_addopen F - posix_spawn_file_actions_destroy F - posix_spawn_file_actions_init F - posix_spawnattr_destroy F - posix_spawnattr_getflags F - posix_spawnattr_getpgroup F - posix_spawnattr_getschedparam F - posix_spawnattr_getschedpolicy F - posix_spawnattr_getsigdefault F - posix_spawnattr_getsigmask F - posix_spawnattr_init F - posix_spawnattr_setflags F - posix_spawnattr_setpgroup F - posix_spawnattr_setschedparam F - posix_spawnattr_setschedpolicy F - posix_spawnattr_setsigdefault F - posix_spawnattr_setsigmask F - posix_spawnp F - putwc F - putwc_unlocked F - putwchar F - putwchar_unlocked F - rcmd_af F - readdir64 F - readdir64_r F - rexec_af F - rresvport_af F - ruserok_af F - scandir64 F - semctl F - setrlimit F - shmctl F - svc_getreq_common F - svc_getreq_poll F - svc_max_pollfd D 0x4 - svc_pollfd D 0x4 - swprintf F - swscanf F - ungetwc F - versionsort64 F - vfwprintf F - vfwscanf F - vswprintf F - vswscanf F - vwprintf F - vwscanf F - wcschrnul F - wcsftime F - wmempcpy F - wprintf F - wscanf F -GLIBC_2.2.1 - GLIBC_2.2.1 A - pivot_root F - posix_openpt F -GLIBC_2.2.2 - GLIBC_2.2.2 A - __nss_hostname_digits_dots F -GLIBC_2.2.3 - GLIBC_2.2.3 A - __rpc_thread_createerr F - __rpc_thread_svc_fdset F - __rpc_thread_svc_max_pollfd F - __rpc_thread_svc_pollfd F - fnmatch F - sprofil F -GLIBC_2.2.4 - GLIBC_2.2.4 A - dl_iterate_phdr F - getgrouplist F - sockatmark F -GLIBC_2.2.6 - GLIBC_2.2.6 A - __nanosleep F -GLIBC_2.3 - GLIBC_2.3 A - __ctype_b_loc F - __ctype_tolower_loc F - __ctype_toupper_loc F - __isctype F - __strftime_l F - __uselocale F - __wcsftime_l F - _sys_errlist D 0x1f8 - _sys_nerr D 0x4 - duplocale F - fgetxattr F - flistxattr F - freeifaddrs F - freelocale F - fremovexattr F - fsetxattr F - futimes F - getifaddrs F - getxattr F - isalnum_l F - isalpha_l F - isblank_l F - iscntrl_l F - isctype F - isdigit_l F - isgraph_l F - islower_l F - isprint_l F - ispunct_l F - isspace_l F - isupper_l F - iswalnum_l F - iswalpha_l F - iswblank_l F - iswcntrl_l F - iswctype_l F - iswdigit_l F - iswgraph_l F - iswlower_l F - iswprint_l F - iswpunct_l F - iswspace_l F - iswupper_l F - iswxdigit_l F - isxdigit_l F - lgetxattr F - listxattr F - llistxattr F - lremovexattr F - lsetxattr F - lutimes F - newlocale F - nl_langinfo_l F - readahead F - realpath F - removexattr F - sendfile64 F - setxattr F - strcasecmp_l F - strcoll_l F - strfmon_l F - strftime_l F - strncasecmp_l F - strtod_l F - strtof_l F - strtol_l F - strtold_l F - strtoll_l F - strtoul_l F - strtoull_l F - strxfrm_l F - sys_errlist D 0x1f8 - sys_nerr D 0x4 - tolower_l F - toupper_l F - towctrans_l F - towlower_l F - towupper_l F - uselocale F - wcscasecmp_l F - wcscoll_l F - wcsftime_l F - wcsncasecmp_l F - wcstod_l F - wcstof_l F - wcstol_l F - wcstold_l F - wcstoll_l F - wcstoul_l F - wcstoull_l F - wcsxfrm_l F - wctrans_l F - wctype_l F -GLIBC_2.3.2 - GLIBC_2.3.2 A - __register_atfork F - epoll_create F - epoll_ctl F - epoll_wait F - lchmod F - pthread_cond_broadcast F - pthread_cond_destroy F - pthread_cond_init F - pthread_cond_signal F - pthread_cond_timedwait F - pthread_cond_wait F - strptime_l F -GLIBC_2.3.3 - GLIBC_2.3.3 A - _sys_siglist D 0x104 - gnu_dev_major F - gnu_dev_makedev F - gnu_dev_minor F - inet6_option_alloc F - inet6_option_append F - inet6_option_find F - inet6_option_init F - inet6_option_next F - inet6_option_space F - nftw F - nftw64 F - posix_fadvise64 F - posix_fallocate64 F - remap_file_pages F - sched_getaffinity F - sched_setaffinity F - semtimedop F - sys_sigabbrev D 0x104 - sys_siglist D 0x104 -GLIBC_2.3.4 - GLIBC_2.3.4 A - __chk_fail F - __fprintf_chk F - __gets_chk F - __memcpy_chk F - __memmove_chk F - __mempcpy_chk F - __memset_chk F - __printf_chk F - __snprintf_chk F - __sprintf_chk F - __stpcpy_chk F - __strcat_chk F - __strcpy_chk F - __strncat_chk F - __strncpy_chk F - __vfprintf_chk F - __vprintf_chk F - __vsnprintf_chk F - __vsprintf_chk F - __xpg_strerror_r F - getipv4sourcefilter F - getsourcefilter F - regexec F - sched_getaffinity F - sched_setaffinity F - setipv4sourcefilter F - setsourcefilter F - xdr_quad_t F - xdr_u_quad_t F -GLIBC_2.4 - GLIBC_2.4 A - __confstr_chk F - __fgets_chk F - __fgets_unlocked_chk F - __fgetws_chk F - __fgetws_unlocked_chk F - __fwprintf_chk F - __fxstatat F - __fxstatat64 F - __getcwd_chk F - __getdomainname_chk F - __getgroups_chk F - __gethostname_chk F - __getlogin_r_chk F - __getwd_chk F - __mbsnrtowcs_chk F - __mbsrtowcs_chk F - __mbstowcs_chk F - __pread64_chk F - __pread_chk F - __ptsname_r_chk F - __read_chk F - __readlink_chk F - __realpath_chk F - __recv_chk F - __recvfrom_chk F - __stack_chk_fail F - __stpncpy_chk F - __swprintf_chk F - __syslog_chk F - __ttyname_r_chk F - __vfwprintf_chk F - __vswprintf_chk F - __vsyslog_chk F - __vwprintf_chk F - __wcpcpy_chk F - __wcpncpy_chk F - __wcrtomb_chk F - __wcscat_chk F - __wcscpy_chk F - __wcsncat_chk F - __wcsncpy_chk F - __wcsnrtombs_chk F - __wcsrtombs_chk F - __wcstombs_chk F - __wctomb_chk F - __wmemcpy_chk F - __wmemmove_chk F - __wmempcpy_chk F - __wmemset_chk F - __wprintf_chk F - __xmknodat F - _sys_errlist D 0x210 - _sys_nerr D 0x4 - eaccess F - faccessat F - fchmodat F - fchownat F - fdopendir F - futimesat F - inotify_add_watch F - inotify_init F - inotify_rm_watch F - linkat F - mkdirat F - mkfifoat F - open_wmemstream F - openat F - openat64 F - ppoll F - readlinkat F - renameat F - symlinkat F - sys_errlist D 0x210 - sys_nerr D 0x4 - unlinkat F - unshare F -GLIBC_2.5 - GLIBC_2.5 A - __readlinkat_chk F - inet6_opt_append F - inet6_opt_find F - inet6_opt_finish F - inet6_opt_get_val F - inet6_opt_init F - inet6_opt_next F - inet6_opt_set_val F - inet6_rth_add F - inet6_rth_getaddr F - inet6_rth_init F - inet6_rth_reverse F - inet6_rth_segments F - inet6_rth_space F - splice F - tee F - vmsplice F -GLIBC_2.6 - GLIBC_2.6 A - __sched_cpucount F - epoll_pwait F - futimens F - sched_getcpu F - strerror_l F - sync_file_range F - utimensat F -GLIBC_2.7 - GLIBC_2.7 A - __fread_chk F - __fread_unlocked_chk F - __isoc99_fscanf F - __isoc99_fwscanf F - __isoc99_scanf F - __isoc99_sscanf F - __isoc99_swscanf F - __isoc99_vfscanf F - __isoc99_vfwscanf F - __isoc99_vscanf F - __isoc99_vsscanf F - __isoc99_vswscanf F - __isoc99_vwscanf F - __isoc99_wscanf F - __open64_2 F - __open_2 F - __openat64_2 F - __openat_2 F - __sched_cpualloc F - __sched_cpufree F - eventfd F - eventfd_read F - eventfd_write F - mkostemp F - mkostemp64 F - signalfd F -GLIBC_2.8 - GLIBC_2.8 A - __asprintf_chk F - __dprintf_chk F - __obstack_printf_chk F - __obstack_vprintf_chk F - __vasprintf_chk F - __vdprintf_chk F - qsort_r F - timerfd_create F - timerfd_gettime F - timerfd_settime F -GLIBC_2.9 - GLIBC_2.9 A - dup3 F - epoll_create1 F - inotify_init1 F - pipe2 F diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libcrypt.abilist b/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libcrypt.abilist deleted file mode 100644 index 1df145f260..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libcrypt.abilist +++ /dev/null @@ -1,9 +0,0 @@ -GLIBC_2.0 - GLIBC_2.0 A - crypt F - crypt_r F - encrypt F - encrypt_r F - fcrypt F - setkey F - setkey_r F diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libdl.abilist b/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libdl.abilist deleted file mode 100644 index 62e6b41edb..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libdl.abilist +++ /dev/null @@ -1,18 +0,0 @@ -GLIBC_2.0 - GLIBC_2.0 A - dladdr F - dlclose F - dlerror F - dlopen F - dlsym F -GLIBC_2.1 - GLIBC_2.1 A - dlopen F - dlvsym F -GLIBC_2.3.3 - GLIBC_2.3.3 A - dladdr1 F - dlinfo F -GLIBC_2.3.4 - GLIBC_2.3.4 A - dlmopen F diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libm.abilist b/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libm.abilist deleted file mode 100644 index 0beecb7246..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libm.abilist +++ /dev/null @@ -1,417 +0,0 @@ -GLIBC_2.0 - GLIBC_2.0 A - _LIB_VERSION D 0x4 - acos F - acosf F - acosh F - acoshf F - acoshl F - acosl F - asin F - asinf F - asinh F - asinhf F - asinhl F - asinl F - atan F - atan2 F - atan2f F - atan2l F - atanf F - atanh F - atanhf F - atanhl F - atanl F - cbrt F - cbrtf F - cbrtl F - ceil F - ceilf F - ceill F - copysign F - copysignf F - copysignl F - cos F - cosf F - cosh F - coshf F - coshl F - cosl F - drem F - dremf F - dreml F - erf F - erfc F - erfcf F - erfcl F - erff F - erfl F - exp F - expf F - expl F - expm1 F - expm1f F - expm1l F - fabs F - fabsf F - fabsl F - finite F - finitef F - finitel F - floor F - floorf F - floorl F - fmod F - fmodf F - fmodl F - frexp F - frexpf F - frexpl F - gamma F - gammaf F - gammal F - hypot F - hypotf F - hypotl F - ilogb F - ilogbf F - ilogbl F - j0 F - j0f F - j0l F - j1 F - j1f F - j1l F - jn F - jnf F - jnl F - ldexp F - ldexpf F - ldexpl F - lgamma F - lgamma_r F - lgammaf F - lgammaf_r F - lgammal F - lgammal_r F - log F - log10 F - log10f F - log10l F - log1p F - log1pf F - log1pl F - logb F - logbf F - logbl F - logf F - logl F - matherr F - modf F - modff F - modfl F - nextafter F - nextafterf F - nextafterl F - pow F - powf F - powl F - remainder F - remainderf F - remainderl F - rint F - rintf F - rintl F - scalb F - scalbf F - scalbl F - scalbn F - scalbnf F - scalbnl F - signgam D 0x4 - significand F - significandf F - significandl F - sin F - sinf F - sinh F - sinhf F - sinhl F - sinl F - sqrt F - sqrtf F - sqrtl F - tan F - tanf F - tanh F - tanhf F - tanhl F - tanl F - y0 F - y0f F - y0l F - y1 F - y1f F - y1l F - yn F - ynf F - ynl F -GLIBC_2.1 - GLIBC_2.1 A - __clog10 F - __clog10f F - __clog10l F - __finite F - __finitef F - __finitel F - __fpclassify F - __fpclassifyf F - __fpclassifyl F - __signbit F - __signbitf F - __signbitl F - cabs F - cabsf F - cabsl F - cacos F - cacosf F - cacosh F - cacoshf F - cacoshl F - cacosl F - carg F - cargf F - cargl F - casin F - casinf F - casinh F - casinhf F - casinhl F - casinl F - catan F - catanf F - catanh F - catanhf F - catanhl F - catanl F - ccos F - ccosf F - ccosh F - ccoshf F - ccoshl F - ccosl F - cexp F - cexpf F - cexpl F - cimag F - cimagf F - cimagl F - clog F - clog10 F - clog10f F - clog10l F - clogf F - clogl F - conj F - conjf F - conjl F - cpow F - cpowf F - cpowl F - cproj F - cprojf F - cprojl F - creal F - crealf F - creall F - csin F - csinf F - csinh F - csinhf F - csinhl F - csinl F - csqrt F - csqrtf F - csqrtl F - ctan F - ctanf F - ctanh F - ctanhf F - ctanhl F - ctanl F - exp10 F - exp10f F - exp10l F - exp2 F - exp2f F - exp2l F - fdim F - fdimf F - fdiml F - feclearexcept F - fegetenv F - fegetexceptflag F - fegetround F - feholdexcept F - feraiseexcept F - fesetenv F - fesetexceptflag F - fesetround F - fetestexcept F - feupdateenv F - fma F - fmaf F - fmal F - fmax F - fmaxf F - fmaxl F - fmin F - fminf F - fminl F - llrint F - llrintf F - llrintl F - llround F - llroundf F - llroundl F - log2 F - log2f F - log2l F - lrint F - lrintf F - lrintl F - lround F - lroundf F - lroundl F - nan F - nanf F - nanl F - nearbyint F - nearbyintf F - nearbyintl F - nexttoward F - nexttowardf F - nexttowardl F - pow10 F - pow10f F - pow10l F - remquo F - remquof F - remquol F - round F - roundf F - roundl F - scalbln F - scalblnf F - scalblnl F - sincos F - sincosf F - sincosl F - tgamma F - tgammaf F - tgammal F - trunc F - truncf F - truncl F -GLIBC_2.15 - GLIBC_2.15 A - __acos_finite F - __acosf_finite F - __acosh_finite F - __acoshf_finite F - __acoshl_finite F - __acosl_finite F - __asin_finite F - __asinf_finite F - __asinl_finite F - __atan2_finite F - __atan2f_finite F - __atan2l_finite F - __atanh_finite F - __atanhf_finite F - __atanhl_finite F - __cosh_finite F - __coshf_finite F - __coshl_finite F - __exp10_finite F - __exp10f_finite F - __exp10l_finite F - __exp2_finite F - __exp2f_finite F - __exp2l_finite F - __exp_finite F - __expf_finite F - __expl_finite F - __fmod_finite F - __fmodf_finite F - __fmodl_finite F - __gamma_r_finite F - __gammaf_r_finite F - __gammal_r_finite F - __hypot_finite F - __hypotf_finite F - __hypotl_finite F - __j0_finite F - __j0f_finite F - __j0l_finite F - __j1_finite F - __j1f_finite F - __j1l_finite F - __jn_finite F - __jnf_finite F - __jnl_finite F - __lgamma_r_finite F - __lgammaf_r_finite F - __lgammal_r_finite F - __log10_finite F - __log10f_finite F - __log10l_finite F - __log2_finite F - __log2f_finite F - __log2l_finite F - __log_finite F - __logf_finite F - __logl_finite F - __pow_finite F - __powf_finite F - __powl_finite F - __remainder_finite F - __remainderf_finite F - __remainderl_finite F - __scalb_finite F - __scalbf_finite F - __scalbl_finite F - __sinh_finite F - __sinhf_finite F - __sinhl_finite F - __sqrt_finite F - __sqrtf_finite F - __sqrtl_finite F - __y0_finite F - __y0f_finite F - __y0l_finite F - __y1_finite F - __y1f_finite F - __y1l_finite F - __yn_finite F - __ynf_finite F - __ynl_finite F -GLIBC_2.18 - GLIBC_2.18 A - __issignaling F - __issignalingf F - __issignalingl F -GLIBC_2.2 - GLIBC_2.2 A - feclearexcept F - fedisableexcept F - feenableexcept F - fegetenv F - fegetexcept F - fegetexceptflag F - feraiseexcept F - fesetenv F - fesetexceptflag F - feupdateenv F -GLIBC_2.4 - GLIBC_2.4 A diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libnsl.abilist b/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libnsl.abilist deleted file mode 100644 index 4241e2d887..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libnsl.abilist +++ /dev/null @@ -1,127 +0,0 @@ -GLIBC_2.0 - GLIBC_2.0 A - __yp_check F - xdr_domainname F - xdr_keydat F - xdr_mapname F - xdr_peername F - xdr_valdat F - xdr_yp_buf F - xdr_ypbind_binding F - xdr_ypbind_resp F - xdr_ypbind_resptype F - xdr_ypbind_setdom F - xdr_ypdelete_args F - xdr_ypmap_parms F - xdr_ypmaplist F - xdr_yppush_status F - xdr_yppushresp_xfr F - xdr_ypreq_key F - xdr_ypreq_nokey F - xdr_ypreq_xfr F - xdr_ypresp_all F - xdr_ypresp_key_val F - xdr_ypresp_maplist F - xdr_ypresp_master F - xdr_ypresp_order F - xdr_ypresp_val F - xdr_ypresp_xfr F - xdr_ypstat F - xdr_ypupdate_args F - xdr_ypxfrstat F - yp_all F - yp_bind F - yp_first F - yp_get_default_domain F - yp_maplist F - yp_master F - yp_match F - yp_next F - yp_order F - yp_unbind F - yp_update F - ypbinderr_string F - yperr_string F - ypprot_err F -GLIBC_2.1 - GLIBC_2.1 A - __free_fdresult F - __nis_default_access F - __nis_default_group F - __nis_default_owner F - __nis_default_ttl F - __nis_finddirectory F - __nis_hash F - __nisbind_connect F - __nisbind_create F - __nisbind_destroy F - __nisbind_next F - nis_add F - nis_add_entry F - nis_addmember F - nis_checkpoint F - nis_clone_directory F - nis_clone_object F - nis_clone_result F - nis_creategroup F - nis_destroy_object F - nis_destroygroup F - nis_dir_cmp F - nis_domain_of F - nis_domain_of_r F - nis_first_entry F - nis_free_directory F - nis_free_object F - nis_free_request F - nis_freenames F - nis_freeresult F - nis_freeservlist F - nis_freetags F - nis_getnames F - nis_getservlist F - nis_ismember F - nis_leaf_of F - nis_leaf_of_r F - nis_lerror F - nis_list F - nis_local_directory F - nis_local_group F - nis_local_host F - nis_local_principal F - nis_lookup F - nis_mkdir F - nis_modify F - nis_modify_entry F - nis_name_of F - nis_name_of_r F - nis_next_entry F - nis_perror F - nis_ping F - nis_print_directory F - nis_print_entry F - nis_print_group F - nis_print_group_entry F - nis_print_link F - nis_print_object F - nis_print_result F - nis_print_rights F - nis_print_table F - nis_read_obj F - nis_remove F - nis_remove_entry F - nis_removemember F - nis_rmdir F - nis_servstate F - nis_sperrno F - nis_sperror F - nis_sperror_r F - nis_stats F - nis_verifygroup F - nis_write_obj F - readColdStartFile F - writeColdStartFile F - xdr_cback_data F - xdr_obj_p F -GLIBC_2.2 - GLIBC_2.2 A - xdr_ypall F diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libpthread.abilist b/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libpthread.abilist deleted file mode 100644 index 865364e130..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libpthread.abilist +++ /dev/null @@ -1,271 +0,0 @@ -GLIBC_2.0 - GLIBC_2.0 A - _IO_flockfile F - _IO_ftrylockfile F - _IO_funlockfile F - __close F - __connect F - __errno_location F - __fcntl F - __fork F - __h_errno_location F - __lseek F - __open F - __pthread_getspecific F - __pthread_key_create F - __pthread_mutex_destroy F - __pthread_mutex_init F - __pthread_mutex_lock F - __pthread_mutex_trylock F - __pthread_mutex_unlock F - __pthread_mutexattr_destroy F - __pthread_mutexattr_init F - __pthread_mutexattr_settype F - __pthread_once F - __pthread_setspecific F - __read F - __send F - __sigaction F - __wait F - __write F - _pthread_cleanup_pop F - _pthread_cleanup_pop_restore F - _pthread_cleanup_push F - _pthread_cleanup_push_defer F - accept F - close F - connect F - fcntl F - flockfile F - fork F - fsync F - ftrylockfile F - funlockfile F - longjmp F - lseek F - msync F - nanosleep F - open F - pause F - pthread_atfork F - pthread_attr_destroy F - pthread_attr_getdetachstate F - pthread_attr_getinheritsched F - pthread_attr_getschedparam F - pthread_attr_getschedpolicy F - pthread_attr_getscope F - pthread_attr_init F - pthread_attr_setdetachstate F - pthread_attr_setinheritsched F - pthread_attr_setschedparam F - pthread_attr_setschedpolicy F - pthread_attr_setscope F - pthread_cancel F - pthread_cond_broadcast F - pthread_cond_destroy F - pthread_cond_init F - pthread_cond_signal F - pthread_cond_timedwait F - pthread_cond_wait F - pthread_condattr_destroy F - pthread_condattr_init F - pthread_create F - pthread_detach F - pthread_equal F - pthread_exit F - pthread_getschedparam F - pthread_getspecific F - pthread_join F - pthread_key_create F - pthread_key_delete F - pthread_kill F - pthread_kill_other_threads_np F - pthread_mutex_destroy F - pthread_mutex_init F - pthread_mutex_lock F - pthread_mutex_trylock F - pthread_mutex_unlock F - pthread_mutexattr_destroy F - pthread_mutexattr_getkind_np F - pthread_mutexattr_init F - pthread_mutexattr_setkind_np F - pthread_once F - pthread_self F - pthread_setcancelstate F - pthread_setcanceltype F - pthread_setschedparam F - pthread_setspecific F - pthread_sigmask F - pthread_testcancel F - raise F - read F - recv F - recvfrom F - recvmsg F - sem_destroy F - sem_getvalue F - sem_init F - sem_post F - sem_trywait F - sem_wait F - send F - sendmsg F - sendto F - sigaction F - siglongjmp F - sigwait F - system F - tcdrain F - vfork F - wait F - waitpid F - write F -GLIBC_2.1 - GLIBC_2.1 A - __libc_allocate_rtsig F - __libc_current_sigrtmax F - __libc_current_sigrtmin F - pthread_attr_getguardsize F - pthread_attr_getstackaddr F - pthread_attr_getstacksize F - pthread_attr_init F - pthread_attr_setguardsize F - pthread_attr_setstackaddr F - pthread_attr_setstacksize F - pthread_create F - pthread_getconcurrency F - pthread_mutexattr_gettype F - pthread_mutexattr_settype F - pthread_rwlock_destroy F - pthread_rwlock_init F - pthread_rwlock_rdlock F - pthread_rwlock_tryrdlock F - pthread_rwlock_trywrlock F - pthread_rwlock_unlock F - pthread_rwlock_wrlock F - pthread_rwlockattr_destroy F - pthread_rwlockattr_getkind_np F - pthread_rwlockattr_getpshared F - pthread_rwlockattr_init F - pthread_rwlockattr_setkind_np F - pthread_rwlockattr_setpshared F - pthread_setconcurrency F - sem_destroy F - sem_getvalue F - sem_init F - sem_post F - sem_trywait F - sem_wait F -GLIBC_2.1.1 - GLIBC_2.1.1 A - sem_close F - sem_open F - sem_unlink F -GLIBC_2.1.2 - GLIBC_2.1.2 A - __vfork F -GLIBC_2.11 - GLIBC_2.11 A - pthread_sigqueue F -GLIBC_2.12 - GLIBC_2.12 A - pthread_getname_np F - pthread_mutex_consistent F - pthread_mutexattr_getrobust F - pthread_mutexattr_setrobust F - pthread_setname_np F -GLIBC_2.18 - GLIBC_2.18 A - pthread_getattr_default_np F - pthread_setattr_default_np F -GLIBC_2.2 - GLIBC_2.2 A - __open64 F - __pread64 F - __pthread_rwlock_destroy F - __pthread_rwlock_init F - __pthread_rwlock_rdlock F - __pthread_rwlock_tryrdlock F - __pthread_rwlock_trywrlock F - __pthread_rwlock_unlock F - __pthread_rwlock_wrlock F - __pwrite64 F - __res_state F - lseek64 F - open64 F - pread F - pread64 F - pthread_attr_getstack F - pthread_attr_setstack F - pthread_barrier_destroy F - pthread_barrier_init F - pthread_barrier_wait F - pthread_barrierattr_destroy F - pthread_barrierattr_init F - pthread_barrierattr_setpshared F - pthread_condattr_getpshared F - pthread_condattr_setpshared F - pthread_getcpuclockid F - pthread_mutex_timedlock F - pthread_mutexattr_getpshared F - pthread_mutexattr_setpshared F - pthread_rwlock_timedrdlock F - pthread_rwlock_timedwrlock F - pthread_spin_destroy F - pthread_spin_init F - pthread_spin_lock F - pthread_spin_trylock F - pthread_spin_unlock F - pthread_yield F - pwrite F - pwrite64 F - sem_timedwait F -GLIBC_2.2.3 - GLIBC_2.2.3 A - pthread_getattr_np F -GLIBC_2.2.6 - GLIBC_2.2.6 A - __nanosleep F -GLIBC_2.3.2 - GLIBC_2.3.2 A - pthread_cond_broadcast F - pthread_cond_destroy F - pthread_cond_init F - pthread_cond_signal F - pthread_cond_timedwait F - pthread_cond_wait F -GLIBC_2.3.3 - GLIBC_2.3.3 A - __pthread_cleanup_routine F - __pthread_register_cancel F - __pthread_register_cancel_defer F - __pthread_unregister_cancel F - __pthread_unregister_cancel_restore F - __pthread_unwind_next F - pthread_attr_getaffinity_np F - pthread_attr_setaffinity_np F - pthread_barrierattr_getpshared F - pthread_condattr_getclock F - pthread_condattr_setclock F - pthread_getaffinity_np F - pthread_setaffinity_np F - pthread_timedjoin_np F - pthread_tryjoin_np F -GLIBC_2.3.4 - GLIBC_2.3.4 A - pthread_attr_getaffinity_np F - pthread_attr_setaffinity_np F - pthread_getaffinity_np F - pthread_setaffinity_np F - pthread_setschedprio F -GLIBC_2.4 - GLIBC_2.4 A - pthread_mutex_consistent_np F - pthread_mutex_getprioceiling F - pthread_mutex_setprioceiling F - pthread_mutexattr_getprioceiling F - pthread_mutexattr_getprotocol F - pthread_mutexattr_getrobust_np F - pthread_mutexattr_setprioceiling F - pthread_mutexattr_setprotocol F - pthread_mutexattr_setrobust_np F diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libresolv.abilist b/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libresolv.abilist deleted file mode 100644 index f68333d4a4..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libresolv.abilist +++ /dev/null @@ -1,104 +0,0 @@ -GLIBC_2.0 - GLIBC_2.0 A - __b64_ntop F - __b64_pton F - __dn_comp F - __dn_count_labels F - __dn_skipname F - __fp_nquery F - __fp_query F - __fp_resstat F - __hostalias F - __loc_aton F - __loc_ntoa F - __p_cdname F - __p_cdnname F - __p_class F - __p_class_syms D 0x54 - __p_fqname F - __p_fqnname F - __p_option F - __p_query F - __p_secstodate F - __p_time F - __p_type F - __p_type_syms D 0x228 - __putlong F - __putshort F - __res_close F - __res_dnok F - __res_hnok F - __res_isourserver F - __res_mailok F - __res_nameinquery F - __res_ownok F - __res_queriesmatch F - __res_send F - __sym_ntop F - __sym_ntos F - __sym_ston F - _gethtbyaddr F - _gethtbyname F - _gethtbyname2 F - _gethtent F - _getlong F - _getshort F - _res_opcodes D 0x40 - _sethtent F - dn_expand F - inet_net_ntop F - inet_net_pton F - inet_neta F - res_gethostbyaddr F - res_gethostbyname F - res_gethostbyname2 F - res_mkquery F - res_query F - res_querydomain F - res_search F - res_send_setqhook F - res_send_setrhook F -GLIBC_2.2 - GLIBC_2.2 A - __dn_expand F - __res_hostalias F - __res_mkquery F - __res_nmkquery F - __res_nquery F - __res_nquerydomain F - __res_nsearch F - __res_nsend F - __res_query F - __res_querydomain F - __res_search F -GLIBC_2.3.2 - GLIBC_2.3.2 A - __p_rcode F -GLIBC_2.9 - GLIBC_2.9 A - ns_datetosecs F - ns_format_ttl F - ns_get16 F - ns_get32 F - ns_initparse F - ns_makecanon F - ns_msg_getflag F - ns_name_compress F - ns_name_ntol F - ns_name_ntop F - ns_name_pack F - ns_name_pton F - ns_name_rollback F - ns_name_skip F - ns_name_uncompress F - ns_name_unpack F - ns_parse_ttl F - ns_parserr F - ns_put16 F - ns_put32 F - ns_samedomain F - ns_samename F - ns_skiprr F - ns_sprintrr F - ns_sprintrrf F - ns_subdomain F diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/librt.abilist b/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/librt.abilist deleted file mode 100644 index af7df27cb3..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/librt.abilist +++ /dev/null @@ -1,52 +0,0 @@ -GLIBC_2.1 - GLIBC_2.1 A - aio_cancel F - aio_cancel64 F - aio_error F - aio_error64 F - aio_fsync F - aio_fsync64 F - aio_init F - aio_read F - aio_read64 F - aio_return F - aio_return64 F - aio_suspend F - aio_suspend64 F - aio_write F - aio_write64 F - lio_listio F - lio_listio64 F -GLIBC_2.2 - GLIBC_2.2 A - clock_getcpuclockid F - clock_getres F - clock_gettime F - clock_nanosleep F - clock_settime F - shm_open F - shm_unlink F - timer_create F - timer_delete F - timer_getoverrun F - timer_gettime F - timer_settime F -GLIBC_2.3.4 - GLIBC_2.3.4 A - mq_close F - mq_getattr F - mq_notify F - mq_open F - mq_receive F - mq_send F - mq_setattr F - mq_timedreceive F - mq_timedsend F - mq_unlink F -GLIBC_2.4 - GLIBC_2.4 A - lio_listio F - lio_listio64 F -GLIBC_2.7 - GLIBC_2.7 A - __mq_open_2 F diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libthread_db.abilist b/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libthread_db.abilist deleted file mode 100644 index f33138067c..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libthread_db.abilist +++ /dev/null @@ -1,48 +0,0 @@ -GLIBC_2.1.3 - GLIBC_2.1.3 A - td_init F - td_log F - td_ta_clear_event F - td_ta_delete F - td_ta_enable_stats F - td_ta_event_addr F - td_ta_event_getmsg F - td_ta_get_nthreads F - td_ta_get_ph F - td_ta_get_stats F - td_ta_map_id2thr F - td_ta_map_lwp2thr F - td_ta_new F - td_ta_reset_stats F - td_ta_set_event F - td_ta_setconcurrency F - td_ta_thr_iter F - td_ta_tsd_iter F - td_thr_clear_event F - td_thr_dbresume F - td_thr_dbsuspend F - td_thr_event_enable F - td_thr_event_getmsg F - td_thr_get_info F - td_thr_getfpregs F - td_thr_getgregs F - td_thr_getxregs F - td_thr_getxregsize F - td_thr_set_event F - td_thr_setfpregs F - td_thr_setgregs F - td_thr_setprio F - td_thr_setsigpending F - td_thr_setxregs F - td_thr_sigsetmask F - td_thr_tsd F - td_thr_validate F -GLIBC_2.2.3 - GLIBC_2.2.3 A - td_symbol_list F -GLIBC_2.3 - GLIBC_2.3 A - td_thr_tls_get_addr F -GLIBC_2.3.3 - GLIBC_2.3.3 A - td_thr_tlsbase F diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libutil.abilist b/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libutil.abilist deleted file mode 100644 index 7422687e3c..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libutil.abilist +++ /dev/null @@ -1,8 +0,0 @@ -GLIBC_2.0 - GLIBC_2.0 A - forkpty F - login F - login_tty F - logout F - logwtmp F - openpty F diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/setcontext.S b/ports/sysdeps/unix/sysv/linux/m68k/m680x0/setcontext.S deleted file mode 100644 index 9242c55e87..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/setcontext.S +++ /dev/null @@ -1,94 +0,0 @@ -/* Install given context. - Copyright (C) 2012-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#include <sysdep.h> - -#include "ucontext_i.h" - -ENTRY(__setcontext) - /* Load address of the context data structure. */ - move.l 4(%sp), %a0 - - /* Get the current signal mask. Note that we preserve D2/D3 in case - the system call fails and we return from the function with an - error. */ - move.l %d3, -(%sp) - cfi_adjust_cfa_offset (4) - cfi_rel_offset (%d3, 0) - move.l %d2, -(%sp) - cfi_adjust_cfa_offset (4) - cfi_rel_offset (%d2, 0) - clr.l %d3 - lea oSIGMASK(%a0), %a1 - move.l %a1, %d2 - move.l #SIG_SETMASK, %d1 - move.l #__NR_sigprocmask, %d0 - trap #0 - cmp.l #-4095, %d0 /* Check %d0 for error. */ - jcs 0f - move.l (%sp)+, %d2 - cfi_adjust_cfa_offset (-4) - cfi_restore (d2) - move.l (%sp)+, %d3 - cfi_adjust_cfa_offset (-4) - cfi_restore (d3) - jra SYSCALL_ERROR_LABEL /* Jump to error handler if error. */ - -0: /* Load the new stack pointer. */ - move.l oSP(%a0), %sp - cfi_def_cfa (%a0, 0) - cfi_offset (%d2, oGREGS+2*4) - cfi_offset (%d3, oGREGS+3*4) - cfi_offset (%d4, oGREGS+4*4) - cfi_offset (%d5, oGREGS+5*4) - cfi_offset (%d6, oGREGS+6*4) - cfi_offset (%d7, oGREGS+7*4) - cfi_offset (%a2, oGREGS+10*4) - cfi_offset (%a3, oGREGS+11*4) - cfi_offset (%a4, oGREGS+12*4) - cfi_offset (%a5, oGREGS+13*4) - cfi_offset (%a6, oGREGS+14*4) - cfi_offset (%fp2, oFP2+0*12) - cfi_offset (%fp3, oFP2+1*12) - cfi_offset (%fp4, oFP2+2*12) - cfi_offset (%fp5, oFP2+3*12) - cfi_offset (%fp6, oFP2+4*12) - cfi_offset (%fp7, oFP2+5*12) - cfi_offset (%pc, oPC) - - /* Load the values of all the preserved registers (except SP). */ - movem.l oGREGS+2*4(%a0), %d2-%d7 - movem.l oGREGS+10*4(%a0), %a2-%a6 - fmovem.l oFPREGS(%a0), %fpsr/%fpcr/%fpiar - fmovem.x oFP2(%a0), %fp2-%fp7 - clr.l %d0 - - /* Fetch the address to return to. */ - movl oPC(%a0), %a1 - - /* End FDE here, we fall into another context. */ - cfi_endproc - cfi_startproc - cfi_register (%pc, %a1) - - jmp (%a1) - - cfi_offset (%pc, -4) -PSEUDO_END(__setcontext) - -weak_alias (__setcontext, setcontext) diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/swapcontext.S b/ports/sysdeps/unix/sysv/linux/m68k/m680x0/swapcontext.S deleted file mode 100644 index e7a73944b7..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/swapcontext.S +++ /dev/null @@ -1,108 +0,0 @@ -/* Save current context and install the given one. - Copyright (C) 2012-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#include <sysdep.h> - -#include "ucontext_i.h" - - -ENTRY(__swapcontext) - /* Load address of the context data structure we save in. */ - move.l 4(%sp), %a0 - - /* Save the preserved registers and the return address. */ - movem.l %d2-%d7, oGREGS+2*4(%a0) - movem.l %a2-%a6, oGREGS+10*4(%a0) - lea 4(%sp), %a1 - move.l %a1, oSP(%a0) - move.l (%sp), oPC(%a0) - fmovem.l %fpsr/%fpcr/%fpiar, oFPREGS(%a0) - fmovem.x %fp2-%fp7, oFP2(%a0) - cfi_def_cfa (%a0, 0) - cfi_offset (%d2, oGREGS+2*4) - cfi_offset (%d3, oGREGS+3*4) - cfi_offset (%a2, oGREGS+10*4) - cfi_offset (%pc, oPC) - - /* Load address of the context data structure we have to load. */ - move.l 8(%sp), %a1 - - /* Save the current signal mask and install the new one. */ - lea oSIGMASK(%a0), %a2 - move.l %a2, %d3 - lea oSIGMASK(%a1), %a2 - move.l %a2, %d2 - move.l #SIG_SETMASK, %d1 - move.l #__NR_sigprocmask, %d0 - trap #0 - cmp.l #-4095, %d0 /* Check %d0 for error. */ - jcs 0f - /* Restore registers. */ - move.l oGREGS+2*4(%a0), %d2 - cfi_restore (%d2) - move.l oGREGS+3*4(%a0), %d3 - cfi_restore (%d3) - move.l oGREGS+10*4(%a0), %a2 - cfi_restore (%a2) - jra SYSCALL_ERROR_LABEL /* Jump to error handler. */ - -0: /* Load the new stack pointer. */ - move.l oSP(%a1), %sp - cfi_def_cfa (%a1, 0) - cfi_offset (%d2, oGREGS+2*4) - cfi_offset (%d3, oGREGS+3*4) - cfi_offset (%d4, oGREGS+4*4) - cfi_offset (%d5, oGREGS+5*4) - cfi_offset (%d6, oGREGS+6*4) - cfi_offset (%d7, oGREGS+7*4) - cfi_offset (%a2, oGREGS+10*4) - cfi_offset (%a3, oGREGS+11*4) - cfi_offset (%a4, oGREGS+12*4) - cfi_offset (%a5, oGREGS+13*4) - cfi_offset (%a6, oGREGS+14*4) - cfi_offset (%fp2, oFP2+0*12) - cfi_offset (%fp3, oFP2+1*12) - cfi_offset (%fp4, oFP2+2*12) - cfi_offset (%fp5, oFP2+3*12) - cfi_offset (%fp6, oFP2+4*12) - cfi_offset (%fp7, oFP2+5*12) - cfi_offset (%pc, oPC) - - /* Load the values of all the preserved registers (except SP). */ - movem.l oGREGS+2*4(%a1), %d2-%d7 - movem.l oGREGS+10*4(%a1), %a2-%a6 - fmovem.l oFPREGS(%a1), %fpsr/%fpcr/%fpiar - fmovem.x oFP2(%a1), %fp2-%fp7 - - /* Clear D0 to indicate success. */ - clr.l %d0 - - /* Fetch the address to return to. */ - move.l oPC(%a1), %a0 - - /* End FDE here, we fall into another context. */ - cfi_endproc - cfi_startproc - cfi_register (%pc, %a0) - - jmp (%a0) - - cfi_offset (%pc, -4) -PSEUDO_END(__swapcontext) - -weak_alias (__swapcontext, swapcontext) diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/syscalls.list b/ports/sysdeps/unix/sysv/linux/m68k/m680x0/syscalls.list deleted file mode 100644 index 913f051ff4..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/syscalls.list +++ /dev/null @@ -1,4 +0,0 @@ -# File name Caller Syscall name Args Strong name Weak names - -oldgetrlimit EXTRA getrlimit i:ip __old_getrlimit getrlimit@GLIBC_2.0 -oldsetrlimit EXTRA setrlimit i:ip __old_setrlimit setrlimit@GLIBC_2.0 diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/sysdep.h b/ports/sysdeps/unix/sysv/linux/m68k/m680x0/sysdep.h deleted file mode 100644 index 1eb914017f..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/sysdep.h +++ /dev/null @@ -1,28 +0,0 @@ -/* Copyright (C) 2010-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef _LINUX_M68K_M680X0_SYSDEP_H -#define _LINUX_M68K_M680X0_SYSDEP_H 1 - -#include <sysdeps/unix/sysdep.h> -#include <sysdeps/m68k/m680x0/sysdep.h> -#include <sysdeps/unix/sysv/linux/m68k/sysdep.h> - -#define SYSCALL_ERROR_LOAD_GOT(reg) \ - lea (_GLOBAL_OFFSET_TABLE_@GOTPC, %pc), reg - -#endif diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/ucontext_i.sym b/ports/sysdeps/unix/sysv/linux/m68k/m680x0/ucontext_i.sym deleted file mode 100644 index 46bd4bf15f..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/ucontext_i.sym +++ /dev/null @@ -1,20 +0,0 @@ -#include <stddef.h> -#include <signal.h> -#include <sys/ucontext.h> - --- - -SIG_SETMASK - -#define ucontext(member) offsetof (ucontext_t, member) -#define mcontext(member) ucontext (uc_mcontext.member) - -oLINK ucontext (uc_link) -oSS_SP ucontext (uc_stack.ss_sp) -oSS_SIZE ucontext (uc_stack.ss_size) -oGREGS mcontext (gregs) -oSP mcontext (gregs[R_SP]) -oPC mcontext (gregs[R_PC]) -oFPREGS mcontext (fpregs) -oFP2 mcontext (fpregs.f_fpregs[2]) -oSIGMASK ucontext (uc_sigmask) diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m68k-helpers.S b/ports/sysdeps/unix/sysv/linux/m68k/m68k-helpers.S deleted file mode 100644 index 032b1f2982..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/m68k-helpers.S +++ /dev/null @@ -1,95 +0,0 @@ -/* Copyright (C) 2010-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Maxim Kuvyrkov <maxim@codesourcery.com>, 2010. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - In addition to the permissions in the GNU Lesser General Public - License, the Free Software Foundation gives you unlimited - permission to link the compiled version of this file with other - programs, and to distribute those programs without any restriction - coming from the use of this file. (The GNU Lesser General Public - License restrictions do apply in other respects; for example, they - cover modification of the file, and distribution when not linked - into another program.) - - Note that people who make modified versions of this file are not - obligated to grant this special exception for their modified - versions; it is their choice whether to do so. The GNU Lesser - General Public License gives permission to release a modified - version without this exception; this exception also makes it - possible to release a modified version which carries forward this - exception. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <sysdep.h> -#include <bits/m68k-vdso.h> - - .text - - .hidden __vdso_read_tp_stub -ENTRY (__vdso_read_tp_stub) - move.l #__NR_get_thread_area, %d0 - trap #0 - move.l %d0, %a0 - rts -END (__vdso_read_tp_stub) - -# ifdef SHARED -/* GCC will emit calls to this routine. Linux has an - equivalent helper function (which clobbers fewer registers than - a normal function call) in a vdso; tail call to the - helper. */ -# ifdef IS_IN_rtld -/* rtld gets a hidden copy of __m68k_read_tp. */ - .hidden __m68k_read_tp -# endif -ENTRY (__m68k_read_tp) - LOAD_GOT (%a0) - move.l M68K_VDSO_SYMBOL (__vdso_read_tp)@GOT(%a0), %a0 - move.l (%a0), %a0 - jmp (%a0) -END (__m68k_read_tp) - -/* The following two stubs are for macros in atomic.h, they can't - clobber anything. */ - - .hidden __vdso_atomic_cmpxchg_32_stub -ENTRY (__vdso_atomic_cmpxchg_32_stub) - move.l %d2, -(%sp) - cfi_adjust_cfa_offset (4) - cfi_rel_offset (%d2, 0) - move.l %d0, %d2 - move.l #SYS_ify (atomic_cmpxchg_32), %d0 - trap #0 - move.l (%sp)+, %d2 - cfi_adjust_cfa_offset (-4) - cfi_restore (%d2) - rts -END (__vdso_atomic_cmpxchg_32_stub) - - .hidden __vdso_atomic_barrier_stub -ENTRY (__vdso_atomic_barrier_stub) - move.l %d0, -(%sp) - cfi_adjust_cfa_offset (4) - move.l #SYS_ify (atomic_barrier), %d0 - trap #0 - move.l (%sp)+, %d0 - cfi_adjust_cfa_offset (-4) - rts -END (__vdso_atomic_barrier_stub) -# else /* !SHARED */ -/* If the vDSO is not available, use a syscall to get TP. */ - strong_alias (__vdso_read_tp_stub, __m68k_read_tp) -# endif /* SHARED */ diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m68k-vdso.c b/ports/sysdeps/unix/sysv/linux/m68k/m68k-vdso.c deleted file mode 100644 index 4573654a4f..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/m68k-vdso.c +++ /dev/null @@ -1,34 +0,0 @@ -/* Copyright (C) 2010-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Maxim Kuvyrkov <maxim@codesourcery.com>, 2010. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#ifdef SHARED - -#include <bits/m68k-vdso.h> - -/* Because these pointers are used from other libraries than libc, - they are exported at GLIBC_PRIVATE version. - We initialize them to syscall implementation so that they will be ready - to use from the very beginning. */ -void * M68K_VDSO_SYMBOL (__vdso_read_tp) -= (void *) __vdso_read_tp_stub; -void * M68K_VDSO_SYMBOL (__vdso_atomic_cmpxchg_32) -= (void *) __vdso_atomic_cmpxchg_32_stub; -void * M68K_VDSO_SYMBOL (__vdso_atomic_barrier) -= (void *) __vdso_atomic_barrier_stub; - -#endif /* SHARED */ diff --git a/ports/sysdeps/unix/sysv/linux/m68k/mmap.S b/ports/sysdeps/unix/sysv/linux/m68k/mmap.S deleted file mode 100644 index c6877f76ec..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/mmap.S +++ /dev/null @@ -1,42 +0,0 @@ -/* Copyright (C) 1996-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <sysdep.h> - - .text -ENTRY (__mmap) - - move.l #SYS_ify (mmap), %d0 /* System call number in %d0. */ - - lea 4(%sp), %a0 /* Address of args is 1st arg. */ - move.l %a0, %d1 - - /* Do the system call trap. */ - trap #0 - - /* Kludge: negative numbers are among the legal return values. - If %d0 is between -4096 and 0 then there was an error. */ - cmp.l #-4096, %d0 - jhi SYSCALL_ERROR_LABEL - - /* Successful; return the syscall's value. Copy it to %a0 because - mmap is declared to return a pointer. */ - move.l %d0, %a0 - rts -PSEUDO_END (__mmap) - -weak_alias (__mmap, mmap) diff --git a/ports/sysdeps/unix/sysv/linux/m68k/mmap64.c b/ports/sysdeps/unix/sysv/linux/m68k/mmap64.c deleted file mode 100644 index 8bf8987017..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/mmap64.c +++ /dev/null @@ -1,5 +0,0 @@ -/* ColdFire and Sun 3 kernels have PAGE_SHIFT set to 13 and expect - mmap2 offset to be provided in 8K pages. Determine the shift - dynamically with getpagesize. */ -#define MMAP2_PAGE_SHIFT -1 -#include <sysdeps/unix/sysv/linux/mmap64.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/mremap.S b/ports/sysdeps/unix/sysv/linux/m68k/mremap.S deleted file mode 100644 index 22d1251471..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/mremap.S +++ /dev/null @@ -1,28 +0,0 @@ -/* Copyright (C) 1996-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <sysdep.h> - -/* The mremap system call is special because it needs to return - its value in register %a0. */ - - .text -PSEUDO (__mremap, mremap, 5) - move.l %d0, %a0 - rts -PSEUDO_END (__mremap) -weak_alias (__mremap, mremap) diff --git a/ports/sysdeps/unix/sysv/linux/m68k/msgctl.c b/ports/sysdeps/unix/sysv/linux/m68k/msgctl.c deleted file mode 100644 index 9f9b8431a3..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/msgctl.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/msgctl.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/bits/pthreadtypes.h b/ports/sysdeps/unix/sysv/linux/m68k/nptl/bits/pthreadtypes.h deleted file mode 100644 index 283f240d55..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/nptl/bits/pthreadtypes.h +++ /dev/null @@ -1,175 +0,0 @@ -/* Copyright (C) 2010-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Maxim Kuvyrkov <maxim@codesourcery.com>, 2010. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef _BITS_PTHREADTYPES_H -#define _BITS_PTHREADTYPES_H 1 - -#include <endian.h> - -#define __SIZEOF_PTHREAD_ATTR_T 36 -#define __SIZEOF_PTHREAD_MUTEX_T 24 -#define __SIZEOF_PTHREAD_MUTEXATTR_T 4 -#define __SIZEOF_PTHREAD_COND_T 48 -#define __SIZEOF_PTHREAD_CONDATTR_T 4 -#define __SIZEOF_PTHREAD_RWLOCK_T 32 -#define __SIZEOF_PTHREAD_RWLOCKATTR_T 8 -#define __SIZEOF_PTHREAD_BARRIER_T 20 -#define __SIZEOF_PTHREAD_BARRIERATTR_T 4 - - -/* Thread identifiers. The structure of the attribute type is - deliberately not exposed. */ -typedef unsigned long int pthread_t; - - -union pthread_attr_t -{ - char __size[__SIZEOF_PTHREAD_ATTR_T]; - long int __align; -}; -#ifndef __have_pthread_attr_t -typedef union pthread_attr_t pthread_attr_t; -# define __have_pthread_attr_t 1 -#endif - - -typedef struct __pthread_internal_slist -{ - struct __pthread_internal_slist *__next; -} __pthread_slist_t; - - -/* Data structures for mutex handling. The structure of the attribute - type is deliberately not exposed. */ -typedef union -{ - struct __pthread_mutex_s - { - int __lock __attribute__ ((__aligned__ (4))); - unsigned int __count; - int __owner; - /* KIND must stay at this position in the structure to maintain - binary compatibility. */ - int __kind; - unsigned int __nusers; - __extension__ union - { - int __spins; - __pthread_slist_t __list; - }; - } __data; - char __size[__SIZEOF_PTHREAD_MUTEX_T]; - long int __align; -} pthread_mutex_t; - -typedef union -{ - char __size[__SIZEOF_PTHREAD_MUTEXATTR_T]; - int __align; -} pthread_mutexattr_t; - - -/* Data structure for conditional variable handling. The structure of - the attribute type is deliberately not exposed. */ -typedef union -{ - struct - { - int __lock __attribute__ ((__aligned__ (4))); - unsigned int __futex; - __extension__ unsigned long long int __total_seq; - __extension__ unsigned long long int __wakeup_seq; - __extension__ unsigned long long int __woken_seq; - void *__mutex; - unsigned int __nwaiters; - unsigned int __broadcast_seq; - } __data; - char __size[__SIZEOF_PTHREAD_COND_T]; - __extension__ long long int __align; -} pthread_cond_t; - -typedef union -{ - char __size[__SIZEOF_PTHREAD_CONDATTR_T]; - int __align; -} pthread_condattr_t; - - -/* Keys for thread-specific data */ -typedef unsigned int pthread_key_t; - - -/* Once-only execution */ -typedef int __attribute__ ((__aligned__ (4))) pthread_once_t; - - -#if defined __USE_UNIX98 || defined __USE_XOPEN2K -/* Data structure for read-write lock variable handling. The - structure of the attribute type is deliberately not exposed. */ -typedef union -{ - struct - { - int __lock __attribute__ ((__aligned__ (4))); - unsigned int __nr_readers; - unsigned int __readers_wakeup; - unsigned int __writer_wakeup; - unsigned int __nr_readers_queued; - unsigned int __nr_writers_queued; - unsigned char __pad1; - unsigned char __pad2; - unsigned char __shared; - /* FLAGS must stay at this position in the structure to maintain - binary compatibility. */ - unsigned char __flags; - int __writer; - } __data; - char __size[__SIZEOF_PTHREAD_RWLOCK_T]; - long int __align; -} pthread_rwlock_t; - -typedef union -{ - char __size[__SIZEOF_PTHREAD_RWLOCKATTR_T]; - long int __align; -} pthread_rwlockattr_t; -#endif - - -#ifdef __USE_XOPEN2K -/* POSIX spinlock data type. */ -typedef volatile int pthread_spinlock_t; - - -/* POSIX barriers data type. The structure of the type is - deliberately not exposed. */ -typedef union -{ - char __size[__SIZEOF_PTHREAD_BARRIER_T]; - long int __align __attribute__ ((__aligned__ (4))); -} pthread_barrier_t; - -typedef union -{ - char __size[__SIZEOF_PTHREAD_BARRIERATTR_T]; - int __align; -} pthread_barrierattr_t; -#endif - - -#endif /* bits/pthreadtypes.h */ diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/bits/semaphore.h b/ports/sysdeps/unix/sysv/linux/m68k/nptl/bits/semaphore.h deleted file mode 100644 index eff626cea2..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/nptl/bits/semaphore.h +++ /dev/null @@ -1,35 +0,0 @@ -/* Copyright (C) 2010-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Maxim Kuvyrkov <maxim@codesourcery.com>, 2010. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef _SEMAPHORE_H -# error "Never use <bits/semaphore.h> directly; include <semaphore.h> instead." -#endif - - -#define __SIZEOF_SEM_T 16 - - -/* Value returned if `sem_open' failed. */ -#define SEM_FAILED ((sem_t *) 0) - - -typedef union -{ - char __size[__SIZEOF_SEM_T]; - long int __align __attribute__ ((__aligned__ (4))); -} sem_t; diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/c++-types.data b/ports/sysdeps/unix/sysv/linux/m68k/nptl/c++-types.data deleted file mode 100644 index fde53bf337..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/nptl/c++-types.data +++ /dev/null @@ -1,67 +0,0 @@ -blkcnt64_t:x -blkcnt_t:l -blksize_t:l -caddr_t:Pc -clockid_t:i -clock_t:l -daddr_t:i -dev_t:y -fd_mask:l -fsblkcnt64_t:y -fsblkcnt_t:m -fsfilcnt64_t:y -fsfilcnt_t:m -fsid_t:8__fsid_t -gid_t:j -id_t:j -ino64_t:y -ino_t:m -int16_t:s -int32_t:i -int64_t:x -int8_t:a -intptr_t:i -key_t:i -loff_t:x -mode_t:j -nlink_t:j -off64_t:x -off_t:l -pid_t:i -pthread_attr_t:14pthread_attr_t -pthread_barrier_t:17pthread_barrier_t -pthread_barrierattr_t:21pthread_barrierattr_t -pthread_cond_t:14pthread_cond_t -pthread_condattr_t:18pthread_condattr_t -pthread_key_t:j -pthread_mutex_t:15pthread_mutex_t -pthread_mutexattr_t:19pthread_mutexattr_t -pthread_once_t:i -pthread_rwlock_t:16pthread_rwlock_t -pthread_rwlockattr_t:20pthread_rwlockattr_t -pthread_spinlock_t:i -pthread_t:m -quad_t:x -register_t:i -rlim64_t:y -rlim_t:m -sigset_t:10__sigset_t -size_t:j -socklen_t:j -ssize_t:i -suseconds_t:l -time_t:l -u_char:h -uid_t:j -uint:j -u_int:j -u_int16_t:t -u_int32_t:j -u_int64_t:y -u_int8_t:h -ulong:m -u_long:m -u_quad_t:y -useconds_t:j -ushort:t -u_short:t diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/clone.S b/ports/sysdeps/unix/sysv/linux/m68k/nptl/clone.S deleted file mode 100644 index e7388fee71..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/nptl/clone.S +++ /dev/null @@ -1,2 +0,0 @@ -#define RESET_PID -#include "../clone.S" diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/createthread.c b/ports/sysdeps/unix/sysv/linux/m68k/nptl/createthread.c deleted file mode 100644 index f0508a1bc1..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/nptl/createthread.c +++ /dev/null @@ -1,24 +0,0 @@ -/* Copyright (C) 2010-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Maxim Kuvyrkov <maxim@codesourcery.com>, 2010. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -/* Value passed to 'clone' for initialization of the thread register. */ -#define TLS_VALUE ((void *) (pd) \ - + TLS_TCB_OFFSET + TLS_PRE_TCB_SIZE) - -/* Get the real implementation. */ -#include <nptl/sysdeps/pthread/createthread.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/fork.c b/ports/sysdeps/unix/sysv/linux/m68k/nptl/fork.c deleted file mode 100644 index 69f9c6f202..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/nptl/fork.c +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright (C) 2010-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Maxim Kuvyrkov <maxim@codesourcery.com>, 2010. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <sched.h> -#include <signal.h> -#include <sysdep.h> -#include <tls.h> - -#define ARCH_FORK() \ - INLINE_SYSCALL (clone, 5, \ - CLONE_CHILD_SETTID | CLONE_CHILD_CLEARTID | SIGCHLD, 0, \ - NULL, &THREAD_SELF->tid, NULL) - -#include <sysdeps/unix/sysv/linux/fork.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/localplt.data b/ports/sysdeps/unix/sysv/linux/m68k/nptl/localplt.data deleted file mode 100644 index d266b8f74b..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/nptl/localplt.data +++ /dev/null @@ -1,8 +0,0 @@ -libc.so: _Unwind_Find_FDE -libc.so: __m68k_read_tp -libc.so: calloc -libc.so: free -libc.so: malloc -libc.so: memalign -libc.so: realloc -libm.so: matherr diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/lowlevellock.h b/ports/sysdeps/unix/sysv/linux/m68k/nptl/lowlevellock.h deleted file mode 100644 index ba36d93090..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/nptl/lowlevellock.h +++ /dev/null @@ -1,320 +0,0 @@ -/* Copyright (C) 2010-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Maxim Kuvyrkov <maxim@codesourcery.com>, 2010. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -/* Borrowed from ARM's version. */ - -#ifndef _LOWLEVELLOCK_H -#define _LOWLEVELLOCK_H 1 - -#include <time.h> -#include <sys/param.h> -#include <bits/pthreadtypes.h> -#include <atomic.h> -#include <kernel-features.h> - -#define FUTEX_WAIT 0 -#define FUTEX_WAKE 1 -#define FUTEX_REQUEUE 3 -#define FUTEX_CMP_REQUEUE 4 -#define FUTEX_WAKE_OP 5 -#define FUTEX_OP_CLEAR_WAKE_IF_GT_ONE ((4 << 24) | 1) -#define FUTEX_LOCK_PI 6 -#define FUTEX_UNLOCK_PI 7 -#define FUTEX_TRYLOCK_PI 8 -#define FUTEX_WAIT_BITSET 9 -#define FUTEX_WAKE_BITSET 10 -#define FUTEX_WAIT_REQEUE_PI 11 -#define FUTEX_CMP_REQEUE_PI 12 -#define FUTEX_PRIVATE_FLAG 128 -#define FUTEX_CLOCK_REALTIME 256 - -#define FUTEX_BITSET_MATCH_ANY 0xffffffff - -/* Values for 'private' parameter of locking macros. Yes, the - definition seems to be backwards. But it is not. The bit will be - reversed before passing to the system call. */ -#define LLL_PRIVATE 0 -#define LLL_SHARED FUTEX_PRIVATE_FLAG - - -#if !defined NOT_IN_libc || defined IS_IN_rtld -/* In libc.so or ld.so all futexes are private. */ -# ifdef __ASSUME_PRIVATE_FUTEX -# define __lll_private_flag(fl, private) \ - ((fl) | FUTEX_PRIVATE_FLAG) -# else -# define __lll_private_flag(fl, private) \ - ((fl) | THREAD_GETMEM (THREAD_SELF, header.private_futex)) -# endif -#else -# ifdef __ASSUME_PRIVATE_FUTEX -# define __lll_private_flag(fl, private) \ - (((fl) | FUTEX_PRIVATE_FLAG) ^ (private)) -# else -# define __lll_private_flag(fl, private) \ - (__builtin_constant_p (private) \ - ? ((private) == 0 \ - ? ((fl) | THREAD_GETMEM (THREAD_SELF, header.private_futex)) \ - : (fl)) \ - : ((fl) | (((private) ^ FUTEX_PRIVATE_FLAG) \ - & THREAD_GETMEM (THREAD_SELF, header.private_futex)))) -# endif -#endif - - -#define lll_futex_wait(futexp, val, private) \ - lll_futex_timed_wait(futexp, val, NULL, private) - -#define lll_futex_timed_wait(futexp, val, timespec, private) \ - ({ \ - INTERNAL_SYSCALL_DECL (__err); \ - long int __ret; \ - __ret = INTERNAL_SYSCALL (futex, __err, 4, (futexp), \ - __lll_private_flag (FUTEX_WAIT, private), \ - (val), (timespec)); \ - __ret; \ - }) - -#define lll_futex_timed_wait_bitset(futexp, val, timespec, clockbit, private) \ - ({ \ - INTERNAL_SYSCALL_DECL (__err); \ - long int __ret; \ - int __op = FUTEX_WAIT_BITSET | clockbit; \ - __ret = INTERNAL_SYSCALL (futex, __err, 6, (long) (futexp), \ - __lll_private_flag (__op, private), \ - (val), (timespec), NULL /* Unused. */, \ - FUTEX_BITSET_MATCH_ANY); \ - __ret; \ - }) - -#define lll_futex_wake(futexp, nr, private) \ - ({ \ - INTERNAL_SYSCALL_DECL (__err); \ - long int __ret; \ - __ret = INTERNAL_SYSCALL (futex, __err, 4, (futexp), \ - __lll_private_flag (FUTEX_WAKE, private), \ - (nr), 0); \ - __ret; \ - }) - -#define lll_robust_dead(futexv, private) \ - do \ - { \ - int *__futexp = &(futexv); \ - atomic_or (__futexp, FUTEX_OWNER_DIED); \ - lll_futex_wake (__futexp, 1, private); \ - } \ - while (0) - -/* Returns non-zero if error happened, zero if success. */ -#define lll_futex_requeue(futexp, nr_wake, nr_move, mutex, val, private) \ - ({ \ - INTERNAL_SYSCALL_DECL (__err); \ - long int __ret; \ - __ret = INTERNAL_SYSCALL (futex, __err, 6, (futexp), \ - __lll_private_flag (FUTEX_CMP_REQUEUE, private),\ - (nr_wake), (nr_move), (mutex), (val)); \ - INTERNAL_SYSCALL_ERROR_P (__ret, __err); \ - }) - -/* Returns non-zero if error happened, zero if success. */ -#define lll_futex_wake_unlock(futexp, nr_wake, nr_wake2, futexp2, private) \ - ({ \ - INTERNAL_SYSCALL_DECL (__err); \ - long int __ret; \ - __ret = INTERNAL_SYSCALL (futex, __err, 6, (futexp), \ - __lll_private_flag (FUTEX_WAKE_OP, private), \ - (nr_wake), (nr_wake2), (futexp2), \ - FUTEX_OP_CLEAR_WAKE_IF_GT_ONE); \ - INTERNAL_SYSCALL_ERROR_P (__ret, __err); \ - }) - -/* Priority Inheritance support. */ -#define lll_futex_wait_requeue_pi(futexp, val, mutex, private) \ - lll_futex_timed_wait_requeue_pi (futexp, val, NULL, 0, mutex, private) - -#define lll_futex_timed_wait_requeue_pi(futexp, val, timespec, clockbit, \ - mutex, private) \ - ({ \ - INTERNAL_SYSCALL_DECL (__err); \ - long int __ret; \ - int __op = FUTEX_WAIT_REQUEUE_PI | clockbit; \ - \ - __ret = INTERNAL_SYSCALL (futex, __err, 5, (futexp), \ - __lll_private_flag (__op, private), \ - (val), (timespec), mutex); \ - __ret; \ - }) - -#define lll_futex_cmp_requeue_pi(futexp, nr_wake, nr_move, mutex, val, priv) \ - ({ \ - INTERNAL_SYSCALL_DECL (__err); \ - long int __ret; \ - __ret = INTERNAL_SYSCALL (futex, __err, 6, (futexp), \ - __lll_private_flag (FUTEX_CMP_REQUEUE_PI, priv),\ - (nr_wake), (nr_move), (mutex), (val)); \ - INTERNAL_SYSCALL_ERROR_P (__ret, __err); \ - }) - -#define lll_trylock(lock) \ - atomic_compare_and_exchange_val_acq (&(lock), 1, 0) - -#define lll_cond_trylock(lock) \ - atomic_compare_and_exchange_val_acq (&(lock), 2, 0) - -#define lll_robust_trylock(lock, id) \ - atomic_compare_and_exchange_val_acq (&(lock), id, 0) - -extern void __lll_lock_wait_private (int *futex) attribute_hidden; -extern void __lll_lock_wait (int *futex, int private) attribute_hidden; -extern int __lll_robust_lock_wait (int *futex, int private) attribute_hidden; - -#define __lll_lock(futex, private) \ - ((void) ({ \ - int *__futex = (futex); \ - if (__builtin_expect (atomic_compare_and_exchange_val_acq (__futex, \ - 1, 0), 0)) \ - { \ - if (__builtin_constant_p (private) && (private) == LLL_PRIVATE) \ - __lll_lock_wait_private (__futex); \ - else \ - __lll_lock_wait (__futex, private); \ - } \ - })) -#define lll_lock(futex, private) __lll_lock (&(futex), private) - - -#define __lll_robust_lock(futex, id, private) \ - ({ \ - int *__futex = (futex); \ - int __val = 0; \ - \ - if (__builtin_expect (atomic_compare_and_exchange_bool_acq (__futex, id, \ - 0), 0)) \ - __val = __lll_robust_lock_wait (__futex, private); \ - __val; \ - }) -#define lll_robust_lock(futex, id, private) \ - __lll_robust_lock (&(futex), id, private) - - -#define __lll_cond_lock(futex, private) \ - ((void) ({ \ - int *__futex = (futex); \ - if (__builtin_expect (atomic_exchange_acq (__futex, 2), 0)) \ - __lll_lock_wait (__futex, private); \ - })) -#define lll_cond_lock(futex, private) __lll_cond_lock (&(futex), private) - - -#define lll_robust_cond_lock(futex, id, private) \ - __lll_robust_lock (&(futex), (id) | FUTEX_WAITERS, private) - - -extern int __lll_timedlock_wait (int *futex, const struct timespec *, - int private) attribute_hidden; -extern int __lll_robust_timedlock_wait (int *futex, const struct timespec *, - int private) attribute_hidden; - -#define __lll_timedlock(futex, abstime, private) \ - ({ \ - int *__futex = (futex); \ - int __val = 0; \ - \ - if (__builtin_expect (atomic_exchange_acq (__futex, 1), 0)) \ - __val = __lll_timedlock_wait (__futex, abstime, private); \ - __val; \ - }) -#define lll_timedlock(futex, abstime, private) \ - __lll_timedlock (&(futex), abstime, private) - - -#define __lll_robust_timedlock(futex, abstime, id, private) \ - ({ \ - int *__futex = (futex); \ - int __val = 0; \ - \ - if (__builtin_expect (atomic_compare_and_exchange_bool_acq (__futex, id, \ - 0), 0)) \ - __val = __lll_robust_timedlock_wait (__futex, abstime, private); \ - __val; \ - }) -#define lll_robust_timedlock(futex, abstime, id, private) \ - __lll_robust_timedlock (&(futex), abstime, id, private) - - -#define __lll_unlock(futex, private) \ - (void) \ - ({ int *__futex = (futex); \ - int __oldval = atomic_exchange_rel (__futex, 0); \ - if (__builtin_expect (__oldval > 1, 0)) \ - lll_futex_wake (__futex, 1, private); \ - }) -#define lll_unlock(futex, private) __lll_unlock(&(futex), private) - - -#define __lll_robust_unlock(futex, private) \ - (void) \ - ({ int *__futex = (futex); \ - int __oldval = atomic_exchange_rel (__futex, 0); \ - if (__builtin_expect (__oldval & FUTEX_WAITERS, 0)) \ - lll_futex_wake (__futex, 1, private); \ - }) -#define lll_robust_unlock(futex, private) \ - __lll_robust_unlock(&(futex), private) - - -#define lll_islocked(futex) \ - (futex != 0) - - -/* Our internal lock implementation is identical to the binary-compatible - mutex implementation. */ - -/* Initializers for lock. */ -#define LLL_LOCK_INITIALIZER (0) -#define LLL_LOCK_INITIALIZER_LOCKED (1) - -/* The states of a lock are: - 0 - untaken - 1 - taken by one user - >1 - taken by more users */ - -/* The kernel notifies a process which uses CLONE_CHILD_CLEARTID via futex - wakeup when the clone terminates. The memory location contains the - thread ID while the clone is running and is reset to zero - afterwards. */ -#define lll_wait_tid(tid) \ - do { \ - __typeof (tid) __tid; \ - while ((__tid = (tid)) != 0) \ - lll_futex_wait (&(tid), __tid, LLL_SHARED); \ - } while (0) - -extern int __lll_timedwait_tid (int *, const struct timespec *) - attribute_hidden; - -#define lll_timedwait_tid(tid, abstime) \ - ({ \ - int __res = 0; \ - if ((tid) != 0) \ - __res = __lll_timedwait_tid (&(tid), (abstime)); \ - __res; \ - }) - -#endif /* lowlevellock.h */ diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/not-cancel.h b/ports/sysdeps/unix/sysv/linux/m68k/nptl/not-cancel.h deleted file mode 100644 index e6a0d135c8..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/nptl/not-cancel.h +++ /dev/null @@ -1 +0,0 @@ -#include <nptl/sysdeps/unix/sysv/linux/i386/not-cancel.h> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/pt-vfork.S b/ports/sysdeps/unix/sysv/linux/m68k/nptl/pt-vfork.S deleted file mode 100644 index 0689e682cf..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/nptl/pt-vfork.S +++ /dev/null @@ -1,35 +0,0 @@ -/* Copyright (C) 2010-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Maxim Kuvyrkov <maxim@codesourcery.com>, 2010. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <tcb-offsets.h> - -#define SAVE_PID \ - bsrl __m68k_read_tp@PLTPC ; /* Get the thread pointer. */ \ - movel %a0, %a1 ; /* Save TP for RESTORE_PID. */ \ - movel PID_OFFSET(%a1), %d0 ; /* Get the PID. */ \ - movel %d0, %d1 ; /* Save PID for RESTORE_PID. */ \ - negl %d0 ; /* Negate the PID. */ \ - movel %d0, PID_OFFSET(%a1) ; /* Store the temporary PID. */ - -#define RESTORE_PID \ - tstl %d0 ; \ - beq 1f ; /* If we are the parent... */ \ - movel %d1, PID_OFFSET(%a1) ; /* Restore the PID. */ \ -1: - -#include <sysdeps/unix/sysv/linux/m68k/vfork.S> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/pthread_once.c b/ports/sysdeps/unix/sysv/linux/m68k/nptl/pthread_once.c deleted file mode 100644 index 01542e9c74..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/nptl/pthread_once.c +++ /dev/null @@ -1,90 +0,0 @@ -/* Copyright (C) 2010-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Maxim Kuvyrkov <maxim@codesourcery.com>, 2010. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include "pthreadP.h" -#include <lowlevellock.h> - -unsigned long int __fork_generation attribute_hidden; - -static void -clear_once_control (void *arg) -{ - pthread_once_t *once_control = (pthread_once_t *) arg; - - *once_control = 0; - lll_futex_wake (once_control, INT_MAX, LLL_PRIVATE); -} - -int -__pthread_once (pthread_once_t *once_control, void (*init_routine) (void)) -{ - for (;;) - { - int oldval; - int newval; - - /* Pseudo code: - newval = __fork_generation | 1; - oldval = *once_control; - if ((oldval & 2) == 0) - *once_control = newval; - Do this atomically. - */ - do - { - newval = __fork_generation | 1; - oldval = *once_control; - if (oldval & 2) - break; - } while (atomic_compare_and_exchange_val_acq (once_control, newval, oldval) != oldval); - - /* Check if the initializer has already been done. */ - if ((oldval & 2) != 0) - return 0; - - /* Check if another thread already runs the initializer. */ - if ((oldval & 1) == 0) - break; - - /* Check whether the initializer execution was interrupted by a fork. */ - if (oldval != newval) - break; - - /* Same generation, some other thread was faster. Wait. */ - lll_futex_wait (once_control, oldval, LLL_PRIVATE); - } - - /* This thread is the first here. Do the initialization. - Register a cleanup handler so that in case the thread gets - interrupted the initialization can be restarted. */ - pthread_cleanup_push (clear_once_control, once_control); - - init_routine (); - - pthread_cleanup_pop (0); - - /* Say that the initialisation is done. */ - *once_control = __fork_generation | 2; - - /* Wake up all other threads. */ - lll_futex_wake (once_control, INT_MAX, LLL_PRIVATE); - - return 0; -} -weak_alias (__pthread_once, pthread_once) -hidden_def (__pthread_once) diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/sysdep-cancel.h b/ports/sysdeps/unix/sysv/linux/m68k/nptl/sysdep-cancel.h deleted file mode 100644 index 868ce56687..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/nptl/sysdep-cancel.h +++ /dev/null @@ -1,138 +0,0 @@ -/* Copyright (C) 2010-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Maxim Kuvyrkov <maxim@codesourcery.com>, 2010. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <sysdep.h> -#include <tls.h> -#ifndef __ASSEMBLER__ -# include <nptl/pthreadP.h> -#endif - -#if !defined NOT_IN_libc || defined IS_IN_libpthread || defined IS_IN_librt - -# undef PSEUDO -# define PSEUDO(name, syscall_name, args) \ - .text; \ - ENTRY (name) \ - SINGLE_THREAD_P; \ - jne .Lpseudo_cancel; \ - .type __##syscall_name##_nocancel,@function; \ - .globl __##syscall_name##_nocancel; \ - __##syscall_name##_nocancel: \ - DO_CALL (syscall_name, args); \ - cmp.l &-4095, %d0; \ - jcc SYSCALL_ERROR_LABEL; \ - rts; \ - .size __##syscall_name##_nocancel,.-__##syscall_name##_nocancel; \ - .Lpseudo_cancel: \ - CENABLE; \ - DOCARGS_##args \ - move.l %d0, -(%sp); /* Save result of CENABLE. */ \ - cfi_adjust_cfa_offset (4); \ - move.l &SYS_ify (syscall_name), %d0; \ - trap &0; \ - move.l %d0, %d2; \ - CDISABLE; \ - addq.l &4, %sp; /* Remove result of CENABLE from the stack. */ \ - cfi_adjust_cfa_offset (-4); \ - move.l %d2, %d0; \ - UNDOCARGS_##args \ - cmp.l &-4095, %d0; \ - jcc SYSCALL_ERROR_LABEL - -/* Note: we use D2 to save syscall's return value as D0 will be clobbered in - CDISABLE. */ -# define DOCARGS_0 move.l %d2, -(%sp); \ - cfi_adjust_cfa_offset (4); cfi_rel_offset (%d2, 0); -# define UNDOCARGS_0 move.l (%sp)+, %d2; \ - cfi_adjust_cfa_offset (-4); cfi_restore (%d2); - -# define DOCARGS_1 _DOCARGS_1 (4); DOCARGS_0 -# define _DOCARGS_1(n) move.l n(%sp), %d1; -# define UNDOCARGS_1 UNDOCARGS_0 - -# define DOCARGS_2 _DOCARGS_2 (8) -# define _DOCARGS_2(n) DOCARGS_0 move.l n+4(%sp), %d2; _DOCARGS_1 (n) -# define UNDOCARGS_2 UNDOCARGS_0 - -# define DOCARGS_3 _DOCARGS_3 (12) -# define _DOCARGS_3(n) move.l %d3, -(%sp); \ - cfi_adjust_cfa_offset (4); cfi_rel_offset (%d3, 0); \ - move.l n+4(%sp), %d3; _DOCARGS_2 (n) -# define UNDOCARGS_3 UNDOCARGS_2 move.l (%sp)+, %d3; \ - cfi_adjust_cfa_offset (-4); cfi_restore (%d3); - -# define DOCARGS_4 _DOCARGS_4 (16) -# define _DOCARGS_4(n) move.l %d4, -(%sp); \ - cfi_adjust_cfa_offset (4); cfi_rel_offset (%d4, 0); \ - move.l n+4(%sp), %d4; _DOCARGS_3 (n) -# define UNDOCARGS_4 UNDOCARGS_3 move.l (%sp)+, %d4; \ - cfi_adjust_cfa_offset (-4); cfi_restore (%d4); - -# define DOCARGS_5 _DOCARGS_5 (20) -# define _DOCARGS_5(n) move.l %d5, -(%sp); \ - cfi_adjust_cfa_offset (4); cfi_rel_offset (%d5, 0); \ - move.l n+4(%sp), %d5; _DOCARGS_4 (n) -# define UNDOCARGS_5 UNDOCARGS_4 move.l (%sp)+, %d5; \ - cfi_adjust_cfa_offset (-4); cfi_restore (%d5); - -# define DOCARGS_6 _DOCARGS_6 (24) -# define _DOCARGS_6(n) move.l n(%sp), %a0; _DOCARGS_5 (n-4) -# define UNDOCARGS_6 UNDOCARGS_5 - -# ifdef PIC -# define PSEUDO_JMP(sym) jbsr sym ## @PLTPC -# else -# define PSEUDO_JMP(sym) jbsr sym -# endif - -# ifdef IS_IN_libpthread -# define CENABLE PSEUDO_JMP (__pthread_enable_asynccancel) -# define CDISABLE PSEUDO_JMP (__pthread_disable_asynccancel) -# elif !defined NOT_IN_libc -# define CENABLE PSEUDO_JMP (__libc_enable_asynccancel) -# define CDISABLE PSEUDO_JMP (__libc_disable_asynccancel) -# elif defined IS_IN_librt -# define CENABLE PSEUDO_JMP (__librt_enable_asynccancel) -# define CDISABLE PSEUDO_JMP (__librt_disable_asynccancel) -# else -# error Unsupported library -# endif - -# ifndef __ASSEMBLER__ -# define SINGLE_THREAD_P \ - __builtin_expect (THREAD_GETMEM (THREAD_SELF, \ - header.multiple_threads) == 0, 1) -# else -# define SINGLE_THREAD_P \ - PSEUDO_JMP (__m68k_read_tp); \ - tst.l MULTIPLE_THREADS_OFFSET(%a0) -# endif - -#elif !defined __ASSEMBLER__ - -# define SINGLE_THREAD_P (1) -# define NO_CANCELLATION (1) - -#endif - -#ifndef __ASSEMBLER__ -# define RTLD_SINGLE_THREAD_P \ - __builtin_expect (THREAD_GETMEM (THREAD_SELF, \ - header.multiple_threads) == 0, \ - 1) -#endif diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/vfork.S b/ports/sysdeps/unix/sysv/linux/m68k/nptl/vfork.S deleted file mode 100644 index ab52fa89ba..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/nptl/vfork.S +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright (C) 2010-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Maxim Kuvyrkov <maxim@codesourcery.com>, 2010. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <tcb-offsets.h> - -#define SAVE_PID \ - bsrl __m68k_read_tp@PLTPC ; /* Get the thread pointer. */ \ - movel %a0, %a1 ; /* Save TP for RESTORE_PID. */ \ - movel PID_OFFSET(%a1), %d0 ; /* Get the PID. */ \ - movel %d0, %d1 ; /* Save PID for RESTORE_PID. */ \ - negl %d0 ; /* Negate the PID. */ \ - bne 1f ; /* If it was zero... */ \ - movel #0x80000000, %d0 ; /* use 0x80000000 instead. */ \ -1: movel %d0, PID_OFFSET(%a1) ; /* Store the temporary PID. */ - -#define RESTORE_PID \ - tstl %d0 ; \ - beq 1f ; /* If we are the parent... */ \ - movel %d1, PID_OFFSET(%a1) ; /* Restore the PID. */ \ -1: - -#include <sysdeps/unix/sysv/linux/m68k/vfork.S> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/oldgetrlimit64.c b/ports/sysdeps/unix/sysv/linux/m68k/oldgetrlimit64.c deleted file mode 100644 index 4c27e957bf..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/oldgetrlimit64.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/oldgetrlimit64.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/putmsg.c b/ports/sysdeps/unix/sysv/linux/m68k/putmsg.c deleted file mode 100644 index ebc1680ca7..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/putmsg.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/putmsg.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/readdir64.c b/ports/sysdeps/unix/sysv/linux/m68k/readdir64.c deleted file mode 100644 index 2ea26dd409..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/readdir64.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/readdir64.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/readdir64_r.c b/ports/sysdeps/unix/sysv/linux/m68k/readdir64_r.c deleted file mode 100644 index 9f54f897e3..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/readdir64_r.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/readdir64_r.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/register-dump.h b/ports/sysdeps/unix/sysv/linux/m68k/register-dump.h deleted file mode 100644 index 51f5fca0d9..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/register-dump.h +++ /dev/null @@ -1,207 +0,0 @@ -/* Dump registers. - Copyright (C) 1998-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@gnu.org>. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <stddef.h> -#include <sys/uio.h> -#include <_itoa.h> - -/* We will print the register dump in this format: - - D0: XXXXXXXX D1: XXXXXXXX D2: XXXXXXXX D3: XXXXXXXX - D4: XXXXXXXX D5: XXXXXXXX D6: XXXXXXXX D7: XXXXXXXX - A0: XXXXXXXX A1: XXXXXXXX A2: XXXXXXXX A3: XXXXXXXX - A4: XXXXXXXX A5: XXXXXXXX A6: XXXXXXXX A7: XXXXXXXX - PC: XXXXXXXX SR: XXXX - - OldMask: XXXXXXXX Vector: XXXX - - FP0: XXXXXXXXXXXXXXXXXXXXXXXX FP1: XXXXXXXXXXXXXXXXXXXXXXXX - FP2: XXXXXXXXXXXXXXXXXXXXXXXX FP3: XXXXXXXXXXXXXXXXXXXXXXXX - FP4: XXXXXXXXXXXXXXXXXXXXXXXX FP5: XXXXXXXXXXXXXXXXXXXXXXXX - FP6: XXXXXXXXXXXXXXXXXXXXXXXX FP7: XXXXXXXXXXXXXXXXXXXXXXXX - FPCR: XXXXXXXX FPSR: XXXXXXXX FPIAR: XXXXXXXX - -*/ - -/* Linux saves only the call-clobbered registers in the sigcontext. We - need to use a trampoline that saves the rest so that the C code can - access them. We use the sc_fpstate field, since the handler is not - supposed to return anyway, thus it doesn't matter that it's clobbered. */ - -/* static */ void catch_segfault (int, int, struct sigcontext *); - -/* Dummy function so that we can use asm with arguments. */ -static void __attribute_used__ -__dummy__ (void) -{ - asm ("\n\ -catch_segfault:\n\ - move.l 12(%%sp),%%a0\n\ - lea %c0(%%a0),%%a0\n\ - /* Clear the first 4 bytes to make it a null fp state, just\n\ - in case the handler does return. */\n\ - clr.l (%%a0)+\n\ - movem.l %%d2-%%d7/%%a2-%%a6,(%%a0)\n" -#ifndef __mcoldfire__ - "fmovem.x %%fp2-%%fp7,11*4(%%a0)\n" -#elif defined __mcffpu__ - "fmovem.d %%fp2-%%fp7,11*4(%%a0)\n" -#endif - "jra real_catch_segfault" - : : "n" (offsetof (struct sigcontext, sc_fpstate))); -} -#define catch_segfault(a,b) \ - __attribute_used__ real_catch_segfault(a,b) - -static void -hexvalue (unsigned long int value, char *buf, size_t len) -{ - char *cp = _itoa_word (value, buf + len, 16, 0); - while (cp > buf) - *--cp = '0'; -} - -static void -register_dump (int fd, struct sigcontext *ctx) -{ - char regs[20][8]; - char fpregs[11][24]; - struct iovec iov[63], *next_iov = iov; - unsigned long *p = (unsigned long *) ctx->sc_fpstate + 1; - unsigned long *pfp = (unsigned long *) ctx->sc_fpregs; - int i, j, fpreg_size; - -#define ADD_STRING(str) \ - next_iov->iov_base = (char *) (str); \ - next_iov->iov_len = strlen (str); \ - ++next_iov -#define ADD_MEM(str, len) \ - next_iov->iov_base = (str); \ - next_iov->iov_len = (len); \ - ++next_iov - -#ifdef __mcoldfire__ - fpreg_size = 16; -#else - fpreg_size = 24; -#endif - - /* Generate strings of register contents. */ - hexvalue (ctx->sc_d0, regs[0], 8); - hexvalue (ctx->sc_d1, regs[1], 8); - hexvalue (*p++, regs[2], 8); - hexvalue (*p++, regs[3], 8); - hexvalue (*p++, regs[4], 8); - hexvalue (*p++, regs[5], 8); - hexvalue (*p++, regs[6], 8); - hexvalue (*p++, regs[7], 8); - hexvalue (ctx->sc_a0, regs[8], 8); - hexvalue (ctx->sc_a1, regs[9], 8); - hexvalue (*p++, regs[10], 8); - hexvalue (*p++, regs[11], 8); - hexvalue (*p++, regs[12], 8); - hexvalue (*p++, regs[13], 8); - hexvalue (*p++, regs[14], 8); - hexvalue (ctx->sc_usp, regs[15], 8); - hexvalue (ctx->sc_pc, regs[16], 8); - hexvalue (ctx->sc_sr, regs[17], 4); - hexvalue (ctx->sc_mask, regs[18], 8); - hexvalue (ctx->sc_formatvec & 0xfff, regs[19], 4); - for (i = 0; i < 2; i++) - for (j = 0; j < fpreg_size; j += 8) - hexvalue (*pfp++, fpregs[i] + j, 8); - for (i = 2; i < 8; i++) - for (j = 0; j < fpreg_size; j += 8) - hexvalue (*p++, fpregs[i] + j, 8); - hexvalue (ctx->sc_fpcntl[0], fpregs[8], 8); - hexvalue (ctx->sc_fpcntl[1], fpregs[9], 8); - hexvalue (ctx->sc_fpcntl[2], fpregs[10], 8); - - /* Generate the output. */ - ADD_STRING ("Register dump:\n\n D0: "); - ADD_MEM (regs[0], 8); - ADD_STRING (" D1: "); - ADD_MEM (regs[1], 8); - ADD_STRING (" D2: "); - ADD_MEM (regs[2], 8); - ADD_STRING (" D3: "); - ADD_MEM (regs[3], 8); - ADD_STRING ("\n D4: "); - ADD_MEM (regs[4], 8); - ADD_STRING (" D5: "); - ADD_MEM (regs[5], 8); - ADD_STRING (" D6: "); - ADD_MEM (regs[6], 8); - ADD_STRING (" D7: "); - ADD_MEM (regs[7], 8); - ADD_STRING ("\n A0: "); - ADD_MEM (regs[8], 8); - ADD_STRING (" A1: "); - ADD_MEM (regs[9], 8); - ADD_STRING (" A2: "); - ADD_MEM (regs[10], 8); - ADD_STRING (" A3: "); - ADD_MEM (regs[11], 8); - ADD_STRING ("\n A4: "); - ADD_MEM (regs[12], 8); - ADD_STRING (" A5: "); - ADD_MEM (regs[13], 8); - ADD_STRING (" A6: "); - ADD_MEM (regs[14], 8); - ADD_STRING (" A7: "); - ADD_MEM (regs[15], 8); - ADD_STRING ("\n PC: "); - ADD_MEM (regs[16], 8); - ADD_STRING (" SR: "); - ADD_MEM (regs[17], 4); - - ADD_STRING ("\n\n OldMask: "); - ADD_MEM (regs[18], 8); - ADD_STRING (" Vector: "); - ADD_MEM (regs[19], 4); - - ADD_STRING ("\n\n FP0: "); - ADD_MEM (fpregs[0], fpreg_size); - ADD_STRING (" FP1: "); - ADD_MEM (fpregs[1], fpreg_size); - ADD_STRING ("\n FP2: "); - ADD_MEM (fpregs[2], fpreg_size); - ADD_STRING (" FP3: "); - ADD_MEM (fpregs[3], fpreg_size); - ADD_STRING ("\n FP4: "); - ADD_MEM (fpregs[4], fpreg_size); - ADD_STRING (" FP5: "); - ADD_MEM (fpregs[5], fpreg_size); - ADD_STRING ("\n FP6: "); - ADD_MEM (fpregs[6], fpreg_size); - ADD_STRING (" FP7: "); - ADD_MEM (fpregs[7], fpreg_size); - ADD_STRING ("\n FPCR: "); - ADD_MEM (fpregs[8], 8); - ADD_STRING (" FPSR: "); - ADD_MEM (fpregs[9], 8); - ADD_STRING (" FPIAR: "); - ADD_MEM (fpregs[10], 8); - ADD_STRING ("\n"); - - /* Write the stuff out. */ - writev (fd, iov, next_iov - iov); -} - -#define REGISTER_DUMP register_dump (fd, ctx) diff --git a/ports/sysdeps/unix/sysv/linux/m68k/scandir64.c b/ports/sysdeps/unix/sysv/linux/m68k/scandir64.c deleted file mode 100644 index 506fd8877c..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/scandir64.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/scandir64.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/semctl.c b/ports/sysdeps/unix/sysv/linux/m68k/semctl.c deleted file mode 100644 index e9b1a483c9..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/semctl.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/semctl.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/semtimedop.S b/ports/sysdeps/unix/sysv/linux/m68k/semtimedop.S deleted file mode 100644 index 5fca8f5001..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/semtimedop.S +++ /dev/null @@ -1,69 +0,0 @@ -/* Copyright (C) 2003-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@suse.de>, 2003. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <sysdep.h> - -#define SYSOP_semtimedop 4 - -#define SVRSP 8 /* saved register space */ -#define PARMS 4+SVRSP /* space for 3 saved regs */ -#define SEMID PARMS -#define SOPS SEMID+4 -#define NSOPS SOPS+4 -#define TIMEOUT NSOPS+4 - - .text -ENTRY (semtimedop) - - /* Save registers. */ - move.l %d2, %a1 - move.l %d3, -(%sp) - cfi_adjust_cfa_offset (4) - move.l %d5, -(%sp) - cfi_adjust_cfa_offset (4) - cfi_register (%d2, %a1) - cfi_rel_offset (%d3, 0) - cfi_rel_offset (%d5, 4) - - move.l #SYSOP_semtimedop, %d1 - move.l SEMID(%sp), %d2 - move.l NSOPS(%sp), %d3 - move.l SOPS(%sp), %d5 - move.l TIMEOUT(%sp), %a0 - move.l #SYS_ify (ipc), %d0 - - trap #0 - - /* Restore registers. */ - move.l (%sp)+, %d5 - cfi_adjust_cfa_offset (-4) - cfi_restore (%d5) - move.l (%sp)+, %d3 - cfi_adjust_cfa_offset (-4) - cfi_restore (%d3) - move.l %a1, %d2 - cfi_restore (%d2) - - /* Check for error. */ - tst.l %d0 - jmi SYSCALL_ERROR_LABEL - - /* Successful; return the syscall's value. */ - ret - -PSEUDO_END (semtimedop) diff --git a/ports/sysdeps/unix/sysv/linux/m68k/setegid.c b/ports/sysdeps/unix/sysv/linux/m68k/setegid.c deleted file mode 100644 index 2e3a54c893..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/setegid.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/setegid.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/seteuid.c b/ports/sysdeps/unix/sysv/linux/m68k/seteuid.c deleted file mode 100644 index 18e41d08c1..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/seteuid.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/seteuid.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/setfsgid.c b/ports/sysdeps/unix/sysv/linux/m68k/setfsgid.c deleted file mode 100644 index 0886712569..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/setfsgid.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/setfsgid.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/setfsuid.c b/ports/sysdeps/unix/sysv/linux/m68k/setfsuid.c deleted file mode 100644 index a9f22eb8ab..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/setfsuid.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/setfsuid.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/setgid.c b/ports/sysdeps/unix/sysv/linux/m68k/setgid.c deleted file mode 100644 index 377021d9ec..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/setgid.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/setgid.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/setgroups.c b/ports/sysdeps/unix/sysv/linux/m68k/setgroups.c deleted file mode 100644 index 0e7086278f..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/setgroups.c +++ /dev/null @@ -1,2 +0,0 @@ -/* We also have to rewrite the kernel gid_t to the user land type. */ -#include <sysdeps/unix/sysv/linux/i386/setgroups.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/setregid.c b/ports/sysdeps/unix/sysv/linux/m68k/setregid.c deleted file mode 100644 index 99c57ad20f..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/setregid.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/setregid.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/setresgid.c b/ports/sysdeps/unix/sysv/linux/m68k/setresgid.c deleted file mode 100644 index daca1a4833..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/setresgid.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/setresgid.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/setresuid.c b/ports/sysdeps/unix/sysv/linux/m68k/setresuid.c deleted file mode 100644 index 3aeabe9ad7..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/setresuid.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/setresuid.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/setreuid.c b/ports/sysdeps/unix/sysv/linux/m68k/setreuid.c deleted file mode 100644 index 8ad61226e9..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/setreuid.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/setreuid.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/setrlimit.c b/ports/sysdeps/unix/sysv/linux/m68k/setrlimit.c deleted file mode 100644 index bfaef74c38..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/setrlimit.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/setrlimit.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/setuid.c b/ports/sysdeps/unix/sysv/linux/m68k/setuid.c deleted file mode 100644 index de394379be..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/setuid.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/setuid.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/shmctl.c b/ports/sysdeps/unix/sysv/linux/m68k/shmctl.c deleted file mode 100644 index 7eac6380dd..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/shmctl.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/shmctl.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/sigcontextinfo.h b/ports/sysdeps/unix/sysv/linux/m68k/sigcontextinfo.h deleted file mode 100644 index 4daf1df050..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/sigcontextinfo.h +++ /dev/null @@ -1,25 +0,0 @@ -/* Copyright (C) 1998-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>, 1998. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#define SIGCONTEXT int _code, struct sigcontext * -#define SIGCONTEXT_EXTRA_ARGS _code, -#define GET_PC(ctx) ((void *) (ctx)->sc_pc) -#define GET_FRAME(ctx) ((void *) __builtin_frame_address (1)) -#define GET_STACK(ctx) ((void *) (ctx)->sc_usp) -#define CALL_SIGHANDLER(handler, signo, ctx) \ - (handler)((signo), SIGCONTEXT_EXTRA_ARGS (ctx)) diff --git a/ports/sysdeps/unix/sysv/linux/m68k/socket.S b/ports/sysdeps/unix/sysv/linux/m68k/socket.S deleted file mode 100644 index a2521deb1e..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/socket.S +++ /dev/null @@ -1,122 +0,0 @@ -/* Copyright (C) 1996-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <sysdep-cancel.h> -#include <socketcall.h> - -#define P(a, b) P2(a, b) -#define P2(a, b) a##b - - .text -/* The socket-oriented system calls are handled unusally in Linux. - They are all gated through the single `socketcall' system call number. - `socketcall' takes two arguments: the first is the subcode, specifying - which socket function is being called; and the second is a pointer to - the arguments to the specific function. - - The .S files for the other calls just #define socket and #include this. */ - -#ifndef __socket -#ifndef NO_WEAK_ALIAS -#define __socket P(__,socket) -#else -#define __socket socket -#endif -#endif - -.globl __socket -ENTRY (__socket) -#ifdef NEED_CANCELLATION -# if !defined CENABLE || !defined CDISABLE -# error CENABLE and/or CDISABLE is not defined -# endif - SINGLE_THREAD_P - jne 1f -#endif - - /* Save registers. */ - move.l %d2, %a0 - cfi_register (%d2, %a0) - - move.l #SYS_ify (socketcall), %d0 /* System call number in %d0. */ - - /* Use ## so `socket' is a separate token that might be #define'd. */ - move.l #P (SOCKOP_,socket), %d1 /* Subcode is first arg to syscall. */ - lea 4(%sp), %a1 /* Address of args is 2nd arg. */ - move.l %a1, %d2 - - /* Do the system call trap. */ - trap #0 - - /* Restore registers. */ - move.l %a0, %d2 - cfi_restore (%d2) - - /* %d0 is < 0 if there was an error. */ - tst.l %d0 - jmi SYSCALL_ERROR_LABEL - - /* Successful; return the syscall's value. */ - rts - -#ifdef NEED_CANCELLATION -1: /* Enable asynchronous cancellation. */ - CENABLE - - /* Save D2. */ - move.l %d2, -(%sp) - cfi_adjust_cfa_offset (4) - cfi_rel_offset (%d2, 0) - - /* Save the result of CENABLE. */ - move.l %d0, -(%sp) - cfi_adjust_cfa_offset (4) - - /* Use ## so `socket' is a separate token that might be #define'd. */ - move.l #P (SOCKOP_,socket), %d1 /* Subcode is first arg to syscall. */ - lea 4+8(%sp), %a1 /* Address of args is 2nd arg. */ - move.l %a1, %d2 - - move.l #SYS_ify (socketcall), %d0 /* System call number in %d0. */ - /* Do the system call trap. */ - trap #0 - - /* Restore cancellation. */ - move.l %d0, %d2 - CDISABLE - addq.l #4, %sp - cfi_adjust_cfa_offset (-4) - move.l %d2, %d0 - - /* Restore registers. */ - move.l (%sp)+, %d2 - cfi_adjust_cfa_offset (-4) - cfi_restore (%d2) - - /* %d0 is < 0 if there was an error. */ - tst.l %d0 - jmi SYSCALL_ERROR_LABEL - - /* Successful; return the syscall's value. */ - rts -#endif - -PSEUDO_END (__socket) - -#ifndef NO_WEAK_ALIAS -weak_alias (__socket, socket) -#endif diff --git a/ports/sysdeps/unix/sysv/linux/m68k/sys/procfs.h b/ports/sysdeps/unix/sysv/linux/m68k/sys/procfs.h deleted file mode 100644 index 6c25814ec6..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/sys/procfs.h +++ /dev/null @@ -1,125 +0,0 @@ -/* Copyright (C) 1996-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef _SYS_PROCFS_H -#define _SYS_PROCFS_H 1 - -/* This is somewhat modelled after the file of the same name on SVR4 - systems. It provides a definition of the core file format for ELF - used on Linux. It doesn't have anything to do with the /proc file - system, even though Linux has one. - - Anyway, the whole purpose of this file is for GDB and GDB only. - Don't read too much into it. Don't use it for anything other than - GDB unless you know what you are doing. */ - -#include <features.h> -#include <sys/time.h> -#include <sys/types.h> -#include <sys/user.h> - -__BEGIN_DECLS - -/* Type for a general-purpose register. */ -typedef unsigned long elf_greg_t; - -/* And the whole bunch of them. We could have used `struct - user_regs_struct' directly in the typedef, but tradition says that - the register set is an array, which does have some peculiar - semantics, so leave it that way. */ -#define ELF_NGREG (sizeof (struct user_regs_struct) / sizeof(elf_greg_t)) -typedef elf_greg_t elf_gregset_t[ELF_NGREG]; - -/* Register set for the floating-point registers. */ -typedef struct user_m68kfp_struct elf_fpregset_t; - - -/* Signal info. */ -struct elf_siginfo - { - int si_signo; /* Signal number. */ - int si_code; /* Extra code. */ - int si_errno; /* Errno. */ - }; - - -/* Definitions to generate Intel SVR4-like core files. These mostly - have the same names as the SVR4 types with "elf_" tacked on the - front to prevent clashes with Linux definitions, and the typedef - forms have been avoided. This is mostly like the SVR4 structure, - but more Linuxy, with things that Linux does not support and which - GDB doesn't really use excluded. */ - -struct elf_prstatus - { - struct elf_siginfo pr_info; /* Info associated with signal. */ - short int pr_cursig; /* Current signal. */ - unsigned long int pr_sigpend; /* Set of pending signals. */ - unsigned long int pr_sighold; /* Set of held signals. */ - __pid_t pr_pid; - __pid_t pr_ppid; - __pid_t pr_pgrp; - __pid_t pr_sid; - struct timeval pr_utime; /* User time. */ - struct timeval pr_stime; /* System time. */ - struct timeval pr_cutime; /* Cumulative user time. */ - struct timeval pr_cstime; /* Cumulative system time. */ - elf_gregset_t pr_reg; /* GP registers. */ - int pr_fpvalid; /* True if math copro being used. */ - }; - - -#define ELF_PRARGSZ (80) /* Number of chars for args. */ - -struct elf_prpsinfo - { - char pr_state; /* Numeric process state. */ - char pr_sname; /* Char for pr_state. */ - char pr_zomb; /* Zombie. */ - char pr_nice; /* Nice val. */ - unsigned long int pr_flag; /* Flags. */ - unsigned short int pr_uid; - unsigned short int pr_gid; - int pr_pid, pr_ppid, pr_pgrp, pr_sid; - /* Lots missing */ - char pr_fname[16]; /* Filename of executable. */ - char pr_psargs[ELF_PRARGSZ]; /* Initial part of arg list. */ - }; - - -/* The rest of this file provides the types for emulation of the - Solaris <proc_service.h> interfaces that should be implemented by - users of libthread_db. */ - -/* Addresses. */ -typedef void *psaddr_t; - -/* Register sets. Linux has different names. */ -typedef elf_gregset_t prgregset_t; -typedef elf_fpregset_t prfpregset_t; - -/* We don't have any differences between processes and threads, - therefore have only one PID type. */ -typedef __pid_t lwpid_t; - -/* Process status and info. In the end we do provide typedefs for them. */ -typedef struct elf_prstatus prstatus_t; -typedef struct elf_prpsinfo prpsinfo_t; - -__END_DECLS - -#endif /* sys/procfs.h */ diff --git a/ports/sysdeps/unix/sysv/linux/m68k/sys/reg.h b/ports/sysdeps/unix/sysv/linux/m68k/sys/reg.h deleted file mode 100644 index ba2a69528a..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/sys/reg.h +++ /dev/null @@ -1,101 +0,0 @@ -/* Copyright (C) 1998-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef _SYS_REG_H -#define _SYS_REG_H 1 - -/* Index into an array of 4 byte integers returned from ptrace for - location of the users' stored general purpose registers. */ - -enum -{ - PT_D1 = 0, -#define PT_D1 PT_D1 - PT_D2 = 1, -#define PT_D2 PT_D2 - PT_D3 = 2, -#define PT_D3 PT_D3 - PT_D4 = 3, -#define PT_D4 PT_D4 - PT_D5 = 4, -#define PT_D5 PT_D5 - PT_D6 = 5, -#define PT_D6 PT_D6 - PT_D7 = 6, -#define PT_D7 PT_D7 - PT_A0 = 7, -#define PT_A0 PT_A0 - PT_A1 = 8, -#define PT_A1 PT_A1 - PT_A2 = 9, -#define PT_A2 PT_A2 - PT_A3 = 10, -#define PT_A3 PT_A3 - PT_A4 = 11, -#define PT_A4 PT_A4 - PT_A5 = 12, -#define PT_A5 PT_A5 - PT_A6 = 13, -#define PT_A6 PT_A6 - PT_D0 = 14, -#define PT_D0 PT_D0 - PT_USP = 15, -#define PT_USP PT_USP - PT_ORIG_D0 = 16, -#define PT_ORIG_D0 PT_ORIG_D0 - PT_SR = 17, -#define PT_SR PT_SR - PT_PC = 18, -#define PT_PC PT_PC - -#ifdef __mcoldfire__ - PT_FP0 = 21, - PT_FP1 = 23, - PT_FP2 = 25, - PT_FP3 = 27, - PT_FP4 = 29, - PT_FP5 = 31, - PT_FP6 = 33, - PT_FP7 = 35, -#else - PT_FP0 = 21, - PT_FP1 = 24, - PT_FP2 = 27, - PT_FP3 = 30, - PT_FP4 = 33, - PT_FP5 = 36, - PT_FP6 = 39, - PT_FP7 = 42, -#endif -#define PT_FP0 PT_FP0 -#define PT_FP1 PT_FP1 -#define PT_FP2 PT_FP2 -#define PT_FP3 PT_FP3 -#define PT_FP4 PT_FP4 -#define PT_FP5 PT_FP5 -#define PT_FP6 PT_FP6 -#define PT_FP7 PT_FP7 - - PT_FPCR = 45, -#define PT_FPCR PT_FPCR - PT_FPSR = 46, -#define PT_FPSR PT_FPSR - PT_FPIAR = 47 -#define PT_FPIAR PT_FPIAR -}; - -#endif /* _SYS_REG_H */ diff --git a/ports/sysdeps/unix/sysv/linux/m68k/sys/ucontext.h b/ports/sysdeps/unix/sysv/linux/m68k/sys/ucontext.h deleted file mode 100644 index 8c5ca3dff3..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/sys/ucontext.h +++ /dev/null @@ -1,112 +0,0 @@ -/* Copyright (C) 1997-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -/* System V/m68k ABI compliant context switching support. */ - -#ifndef _SYS_UCONTEXT_H -#define _SYS_UCONTEXT_H 1 - -#include <features.h> -#include <signal.h> - -/* Type for general register. */ -typedef int greg_t; - -/* Number of general registers. */ -#define NGREG 18 - -/* Container for all general registers. */ -typedef greg_t gregset_t[NGREG]; - -/* Number of each register is the `gregset_t' array. */ -enum -{ - R_D0 = 0, -#define R_D0 R_D0 - R_D1 = 1, -#define R_D1 R_D1 - R_D2 = 2, -#define R_D2 R_D2 - R_D3 = 3, -#define R_D3 R_D3 - R_D4 = 4, -#define R_D4 R_D4 - R_D5 = 5, -#define R_D5 R_D5 - R_D6 = 6, -#define R_D6 R_D6 - R_D7 = 7, -#define R_D7 R_D7 - R_A0 = 8, -#define R_A0 R_A0 - R_A1 = 9, -#define R_A1 R_A1 - R_A2 = 10, -#define R_A2 R_A2 - R_A3 = 11, -#define R_A3 R_A3 - R_A4 = 12, -#define R_A4 R_A4 - R_A5 = 13, -#define R_A5 R_A5 - R_A6 = 14, -#define R_A6 R_A6 - R_A7 = 15, -#define R_A7 R_A7 - R_SP = 15, -#define R_SP R_SP - R_PC = 16, -#define R_PC R_PC - R_PS = 17 -#define R_PS R_PS -}; - -/* Structure to describe FPU registers. */ -typedef struct fpregset -{ - int f_pcr; - int f_psr; - int f_fpiaddr; -#ifdef __mcoldfire__ - int f_fpregs[8][2]; -#else - int f_fpregs[8][3]; -#endif -} fpregset_t; - -/* Context to describe whole processor state. */ -typedef struct -{ - int version; - gregset_t gregs; - fpregset_t fpregs; -} mcontext_t; - -#define MCONTEXT_VERSION 2 - -/* Userlevel context. */ -typedef struct ucontext -{ - unsigned long uc_flags; - struct ucontext *uc_link; - stack_t uc_stack; - mcontext_t uc_mcontext; - unsigned long uc_filler[80]; - __sigset_t uc_sigmask; -} ucontext_t; - -#endif /* sys/ucontext.h */ diff --git a/ports/sysdeps/unix/sysv/linux/m68k/sys/user.h b/ports/sysdeps/unix/sysv/linux/m68k/sys/user.h deleted file mode 100644 index bc21dedcdf..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/sys/user.h +++ /dev/null @@ -1,65 +0,0 @@ -/* Copyright (C) 2008-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef _SYS_USER_H -#define _SYS_USER_H 1 - -/* The whole purpose of this file is for GDB and GDB only. Don't read - too much into it. Don't use it for anything other than GDB unless - you know what you are doing. */ - -struct user_m68kfp_struct { - unsigned long fpregs[8*3]; - unsigned long fpcntl[3]; -}; - -struct user_regs_struct { - long d1, d2, d3, d4, d5, d6, d7; - long a0, a1, a2, a3, a4, a5, a6; - long d0; - long usp; - long orig_d0; - short stkadj; - short sr; - long pc; - short fmtvec; - short __fill; -}; - -struct user { - struct user_regs_struct regs; - int u_fpvalid; - struct user_m68kfp_struct m68kfp; - unsigned long int u_tsize; - unsigned long int u_dsize; - unsigned long int u_ssize; - unsigned long start_code; - unsigned long start_stack; - long int signal; - int reserved; - unsigned long u_ar0; - struct user_m68kfp_struct *u_fpstate; - unsigned long magic; - char u_comm[32]; -}; - -#define NBPG 4096 -#define UPAGES 1 -#define HOST_TEXT_START_ADDR u.start_code -#define HOST_STACK_END_ADDR (u.start_stack + u.u_ssize * NBPG) - -#endif diff --git a/ports/sysdeps/unix/sysv/linux/m68k/syscall.S b/ports/sysdeps/unix/sysv/linux/m68k/syscall.S deleted file mode 100644 index c0e116822d..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/syscall.S +++ /dev/null @@ -1,32 +0,0 @@ -/* Copyright (C) 1996-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <sysdep.h> - -/* Please consult the file sysdeps/unix/sysv/linux/m68k/sysdep.h for - more information about the value -4095 used below.*/ - - .text -ENTRY (syscall) - move.l 4(%sp), %d0 /* Load syscall number. */ - _DOARGS_6 (28) /* Frob arguments. */ - trap &0 /* Do the system call. */ - UNDOARGS_6 /* Unfrob arguments. */ - cmp.l &-4095, %d0 /* Check %d0 for error. */ - jcc SYSCALL_ERROR_LABEL /* Jump to error handler if negative. */ - rts /* Return to caller. */ -PSEUDO_END (syscall) diff --git a/ports/sysdeps/unix/sysv/linux/m68k/syscalls.list b/ports/sysdeps/unix/sysv/linux/m68k/syscalls.list deleted file mode 100644 index aee1011a62..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/syscalls.list +++ /dev/null @@ -1,8 +0,0 @@ -# File name Caller Syscall name Args Strong name Weak names - -chown - chown32 i:sii __chown chown -waitpid - waitpid Ci:ipi __waitpid waitpid __libc_waitpid - -cacheflush EXTRA cacheflush i:iiii __cacheflush cacheflush -prlimit64 EXTRA prlimit64 i:iipp prlimit64 -fanotify_mark EXTRA fanotify_mark i:iiiiis fanotify_mark diff --git a/ports/sysdeps/unix/sysv/linux/m68k/sysdep.S b/ports/sysdeps/unix/sysv/linux/m68k/sysdep.S deleted file mode 100644 index cf274d5881..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/sysdep.S +++ /dev/null @@ -1,50 +0,0 @@ -/* Copyright (C) 1996-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <sysdep.h> - - -/* The following code is only used in the shared library when we - compile the reentrant version. Otherwise each system call defines - each own version. */ - -#ifndef PIC - -/* The syscall stubs jump here when they detect an error. */ - -#undef CALL_MCOUNT -#define CALL_MCOUNT /* Don't insert the profiling call, it clobbers %d0. */ - - .text -ENTRY (__syscall_error) - neg.l %d0 -#ifndef _LIBC_REENTRANT - move.l %d0, errno -#else - move.l %d0, -(%sp) - cfi_adjust_cfa_offset (4) - jbsr __errno_location - move.l (%sp)+, (%a0) - cfi_adjust_cfa_offset (-4) -#endif - move.l #-1, %d0 - /* Copy return value to %a0 for syscalls that are declared to - return a pointer. */ - move.l %d0, %a0 - rts -END (__syscall_error) -#endif /* PIC */ diff --git a/ports/sysdeps/unix/sysv/linux/m68k/sysdep.h b/ports/sysdeps/unix/sysv/linux/m68k/sysdep.h deleted file mode 100644 index 3a91e867f3..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/sysdep.h +++ /dev/null @@ -1,325 +0,0 @@ -/* Copyright (C) 1996-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Written by Andreas Schwab, <schwab@issan.informatik.uni-dortmund.de>, - December 1995. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <tls.h> - -/* Defines RTLD_PRIVATE_ERRNO. */ -#include <dl-sysdep.h> - -/* For Linux we can use the system call table in the header file - /usr/include/asm/unistd.h - of the kernel. But these symbols do not follow the SYS_* syntax - so we have to redefine the `SYS_ify' macro here. */ -#undef SYS_ify -#define SYS_ify(syscall_name) __NR_##syscall_name - -#ifdef __ASSEMBLER__ - -/* Linux uses a negative return value to indicate syscall errors, unlike - most Unices, which use the condition codes' carry flag. - - Since version 2.1 the return value of a system call might be negative - even if the call succeeded. E.g., the `lseek' system call might return - a large offset. Therefore we must not anymore test for < 0, but test - for a real error by making sure the value in %d0 is a real error - number. Linus said he will make sure the no syscall returns a value - in -1 .. -4095 as a valid result so we can savely test with -4095. */ - -/* We don't want the label for the error handler to be visible in the symbol - table when we define it here. */ -#ifdef PIC -#define SYSCALL_ERROR_LABEL .Lsyscall_error -#else -#define SYSCALL_ERROR_LABEL __syscall_error -#endif - -#undef PSEUDO -#define PSEUDO(name, syscall_name, args) \ - .text; \ - ENTRY (name) \ - DO_CALL (syscall_name, args); \ - cmp.l &-4095, %d0; \ - jcc SYSCALL_ERROR_LABEL - -#undef PSEUDO_END -#define PSEUDO_END(name) \ - SYSCALL_ERROR_HANDLER; \ - END (name) - -#undef PSEUDO_NOERRNO -#define PSEUDO_NOERRNO(name, syscall_name, args) \ - .text; \ - ENTRY (name) \ - DO_CALL (syscall_name, args) - -#undef PSEUDO_END_NOERRNO -#define PSEUDO_END_NOERRNO(name) \ - END (name) - -#define ret_NOERRNO rts - -/* The function has to return the error code. */ -#undef PSEUDO_ERRVAL -#define PSEUDO_ERRVAL(name, syscall_name, args) \ - .text; \ - ENTRY (name) \ - DO_CALL (syscall_name, args); \ - negl %d0 - -#undef PSEUDO_END_ERRVAL -#define PSEUDO_END_ERRVAL(name) \ - END (name) - -#define ret_ERRVAL rts - -#ifdef PIC -# if RTLD_PRIVATE_ERRNO -# define SYSCALL_ERROR_HANDLER \ -SYSCALL_ERROR_LABEL: \ - PCREL_OP (lea, rtld_errno, %a0, %a0); \ - neg.l %d0; \ - move.l %d0, (%a0); \ - move.l &-1, %d0; \ - /* Copy return value to %a0 for syscalls that are declared to return \ - a pointer (e.g., mmap). */ \ - move.l %d0, %a0; \ - rts; -# elif defined _LIBC_REENTRANT -# ifndef NOT_IN_libc -# define SYSCALL_ERROR_ERRNO __libc_errno -# else -# define SYSCALL_ERROR_ERRNO errno -# endif -# define SYSCALL_ERROR_HANDLER \ -SYSCALL_ERROR_LABEL: \ - neg.l %d0; \ - move.l %d0, -(%sp); \ - cfi_adjust_cfa_offset (4); \ - jbsr __m68k_read_tp@PLTPC; \ - SYSCALL_ERROR_LOAD_GOT (%a1); \ - add.l (SYSCALL_ERROR_ERRNO@TLSIE, %a1), %a0; \ - move.l (%sp)+, (%a0); \ - cfi_adjust_cfa_offset (-4); \ - move.l &-1, %d0; \ - /* Copy return value to %a0 for syscalls that are declared to return \ - a pointer (e.g., mmap). */ \ - move.l %d0, %a0; \ - rts; -# else /* !_LIBC_REENTRANT */ -/* Store (- %d0) into errno through the GOT. */ -# define SYSCALL_ERROR_HANDLER \ -SYSCALL_ERROR_LABEL: \ - move.l (errno@GOTPC, %pc), %a0; \ - neg.l %d0; \ - move.l %d0, (%a0); \ - move.l &-1, %d0; \ - /* Copy return value to %a0 for syscalls that are declared to return \ - a pointer (e.g., mmap). */ \ - move.l %d0, %a0; \ - rts; -# endif /* _LIBC_REENTRANT */ -#else -# define SYSCALL_ERROR_HANDLER /* Nothing here; code in sysdep.S is used. */ -#endif /* PIC */ - -/* Linux takes system call arguments in registers: - - syscall number %d0 call-clobbered - arg 1 %d1 call-clobbered - arg 2 %d2 call-saved - arg 3 %d3 call-saved - arg 4 %d4 call-saved - arg 5 %d5 call-saved - arg 6 %a0 call-clobbered - - The stack layout upon entering the function is: - - 24(%sp) Arg# 6 - 20(%sp) Arg# 5 - 16(%sp) Arg# 4 - 12(%sp) Arg# 3 - 8(%sp) Arg# 2 - 4(%sp) Arg# 1 - (%sp) Return address - - (Of course a function with say 3 arguments does not have entries for - arguments 4 and 5.) - - Separate move's are faster than movem, but need more space. Since - speed is more important, we don't use movem. Since %a0 and %a1 are - scratch registers, we can use them for saving as well. */ - -#define DO_CALL(syscall_name, args) \ - move.l &SYS_ify(syscall_name), %d0; \ - DOARGS_##args \ - trap &0; \ - UNDOARGS_##args - -#define DOARGS_0 /* No arguments to frob. */ -#define UNDOARGS_0 /* No arguments to unfrob. */ -#define _DOARGS_0(n) /* No arguments to frob. */ - -#define DOARGS_1 _DOARGS_1 (4) -#define _DOARGS_1(n) move.l n(%sp), %d1; _DOARGS_0 (n) -#define UNDOARGS_1 UNDOARGS_0 - -#define DOARGS_2 _DOARGS_2 (8) -#define _DOARGS_2(n) move.l %d2, %a0; cfi_register (%d2, %a0); \ - move.l n(%sp), %d2; _DOARGS_1 (n-4) -#define UNDOARGS_2 UNDOARGS_1; move.l %a0, %d2; cfi_restore (%d2) - -#define DOARGS_3 _DOARGS_3 (12) -#define _DOARGS_3(n) move.l %d3, %a1; cfi_register (%d3, %a1); \ - move.l n(%sp), %d3; _DOARGS_2 (n-4) -#define UNDOARGS_3 UNDOARGS_2; move.l %a1, %d3; cfi_restore (%d3) - -#define DOARGS_4 _DOARGS_4 (16) -#define _DOARGS_4(n) move.l %d4, -(%sp); \ - cfi_adjust_cfa_offset (4); cfi_rel_offset (%d4, 0); \ - move.l n+4(%sp), %d4; _DOARGS_3 (n) -#define UNDOARGS_4 UNDOARGS_3; move.l (%sp)+, %d4; \ - cfi_adjust_cfa_offset (-4); cfi_restore (%d4) - -#define DOARGS_5 _DOARGS_5 (20) -#define _DOARGS_5(n) move.l %d5, -(%sp); \ - cfi_adjust_cfa_offset (4); cfi_rel_offset (%d5, 0); \ - move.l n+4(%sp), %d5; _DOARGS_4 (n) -#define UNDOARGS_5 UNDOARGS_4; move.l (%sp)+, %d5; \ - cfi_adjust_cfa_offset (-4); cfi_restore (%d5) - -#define DOARGS_6 _DOARGS_6 (24) -#define _DOARGS_6(n) _DOARGS_5 (n-4); move.l %a0, -(%sp); \ - cfi_adjust_cfa_offset (4); \ - move.l n+12(%sp), %a0; -#define UNDOARGS_6 move.l (%sp)+, %a0; cfi_adjust_cfa_offset (-4); \ - UNDOARGS_5 - - -#define ret rts -#if 0 /* Not used by Linux */ -#define r0 %d0 -#define r1 %d1 -#define MOVE(x,y) movel x , y -#endif - -#else /* not __ASSEMBLER__ */ - -/* Define a macro which expands into the inline wrapper code for a system - call. */ -#undef INLINE_SYSCALL -#define INLINE_SYSCALL(name, nr, args...) \ - ({ unsigned int _sys_result = INTERNAL_SYSCALL (name, , nr, args); \ - if (__builtin_expect (INTERNAL_SYSCALL_ERROR_P (_sys_result, ), 0))\ - { \ - __set_errno (INTERNAL_SYSCALL_ERRNO (_sys_result, )); \ - _sys_result = (unsigned int) -1; \ - } \ - (int) _sys_result; }) - -#undef INTERNAL_SYSCALL_DECL -#define INTERNAL_SYSCALL_DECL(err) do { } while (0) - -/* Define a macro which expands inline into the wrapper code for a system - call. This use is for internal calls that do not need to handle errors - normally. It will never touch errno. This returns just what the kernel - gave back. */ -#undef INTERNAL_SYSCALL -#define INTERNAL_SYSCALL_NCS(name, err, nr, args...) \ - ({ unsigned int _sys_result; \ - { \ - /* Load argument values in temporary variables - to perform side effects like function calls - before the call used registers are set. */ \ - LOAD_ARGS_##nr (args) \ - LOAD_REGS_##nr \ - register int _d0 asm ("%d0") = name; \ - asm volatile ("trap #0" \ - : "=d" (_d0) \ - : "0" (_d0) ASM_ARGS_##nr \ - : "memory"); \ - _sys_result = _d0; \ - } \ - (int) _sys_result; }) -#define INTERNAL_SYSCALL(name, err, nr, args...) \ - INTERNAL_SYSCALL_NCS (__NR_##name, err, nr, ##args) - -#undef INTERNAL_SYSCALL_ERROR_P -#define INTERNAL_SYSCALL_ERROR_P(val, err) \ - ((unsigned int) (val) >= -4095U) - -#undef INTERNAL_SYSCALL_ERRNO -#define INTERNAL_SYSCALL_ERRNO(val, err) (-(val)) - -#define LOAD_ARGS_0() -#define LOAD_REGS_0 -#define ASM_ARGS_0 -#define LOAD_ARGS_1(a1) \ - LOAD_ARGS_0 () \ - int __arg1 = (int) (a1); -#define LOAD_REGS_1 \ - register int _d1 asm ("d1") = __arg1; \ - LOAD_REGS_0 -#define ASM_ARGS_1 ASM_ARGS_0, "d" (_d1) -#define LOAD_ARGS_2(a1, a2) \ - LOAD_ARGS_1 (a1) \ - int __arg2 = (int) (a2); -#define LOAD_REGS_2 \ - register int _d2 asm ("d2") = __arg2; \ - LOAD_REGS_1 -#define ASM_ARGS_2 ASM_ARGS_1, "d" (_d2) -#define LOAD_ARGS_3(a1, a2, a3) \ - LOAD_ARGS_2 (a1, a2) \ - int __arg3 = (int) (a3); -#define LOAD_REGS_3 \ - register int _d3 asm ("d3") = __arg3; \ - LOAD_REGS_2 -#define ASM_ARGS_3 ASM_ARGS_2, "d" (_d3) -#define LOAD_ARGS_4(a1, a2, a3, a4) \ - LOAD_ARGS_3 (a1, a2, a3) \ - int __arg4 = (int) (a4); -#define LOAD_REGS_4 \ - register int _d4 asm ("d4") = __arg4; \ - LOAD_REGS_3 -#define ASM_ARGS_4 ASM_ARGS_3, "d" (_d4) -#define LOAD_ARGS_5(a1, a2, a3, a4, a5) \ - LOAD_ARGS_4 (a1, a2, a3, a4) \ - int __arg5 = (int) (a5); -#define LOAD_REGS_5 \ - register int _d5 asm ("d5") = __arg5; \ - LOAD_REGS_4 -#define ASM_ARGS_5 ASM_ARGS_4, "d" (_d5) -#define LOAD_ARGS_6(a1, a2, a3, a4, a5, a6) \ - LOAD_ARGS_5 (a1, a2, a3, a4, a5) \ - int __arg6 = (int) (a6); -#define LOAD_REGS_6 \ - register int _a0 asm ("a0") = __arg6; \ - LOAD_REGS_5 -#define ASM_ARGS_6 ASM_ARGS_5, "a" (_a0) - -#endif /* not __ASSEMBLER__ */ - -/* Pointer mangling is not yet supported for M68K. */ -#define PTR_MANGLE(var) (void) (var) -#define PTR_DEMANGLE(var) (void) (var) - -#if defined NEED_DL_SYSINFO || defined NEED_DL_SYSINFO_DSO -/* M68K needs system-supplied DSO to access TLS helpers - even when statically linked. */ -# define NEED_STATIC_SYSINFO_DSO 1 -#endif diff --git a/ports/sysdeps/unix/sysv/linux/m68k/versionsort64.c b/ports/sysdeps/unix/sysv/linux/m68k/versionsort64.c deleted file mode 100644 index 144b691e56..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/versionsort64.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/versionsort64.c> diff --git a/ports/sysdeps/unix/sysv/linux/m68k/vfork.S b/ports/sysdeps/unix/sysv/linux/m68k/vfork.S deleted file mode 100644 index 3745287cbf..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/vfork.S +++ /dev/null @@ -1,74 +0,0 @@ -/* Copyright (C) 1999-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Schwab <schwab@gnu.org>. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - <http://www.gnu.org/licenses/>. */ - -#include <sysdep.h> -#define _ERRNO_H 1 -#include <bits/errno.h> -#include <kernel-features.h> - -#ifndef SAVE_PID -#define SAVE_PID -#endif - -#ifndef RESTORE_PID -#define RESTORE_PID -#endif - -/* Clone the calling process, but without copying the whole address space. - The calling process is suspended until the new process exits or is - replaced by a call to `execve'. Return -1 for errors, 0 to the new process, - and the process ID of the new process to the old process. */ - -ENTRY (__vfork) - - /* SAVE_PID clobbers call-clobbered registers and - saves data in D1 and A1. */ - - SAVE_PID - - /* Pop the return PC value into A0. */ - movel %sp@+, %a0 - cfi_adjust_cfa_offset (-4) - cfi_register (%pc, %a0) - - /* Stuff the syscall number in D0 and trap into the kernel. */ - movel #SYS_ify (vfork), %d0 - trap #0 - - RESTORE_PID - - tstl %d0 - jmi .Lerror /* Branch forward if it failed. */ - - /* Jump to the return PC. */ - jmp %a0@ - -.Lerror: - /* Push back the return PC. */ - movel %a0,%sp@- - cfi_adjust_cfa_offset (4) - cfi_rel_offset (%pc, 0) - -#ifndef PIC - jbra SYSCALL_ERROR_LABEL -#endif - -PSEUDO_END (__vfork) -libc_hidden_def (__vfork) - -weak_alias (__vfork, vfork) diff --git a/ports/sysdeps/unix/sysv/linux/m68k/xstat.c b/ports/sysdeps/unix/sysv/linux/m68k/xstat.c deleted file mode 100644 index e9869f5508..0000000000 --- a/ports/sysdeps/unix/sysv/linux/m68k/xstat.c +++ /dev/null @@ -1 +0,0 @@ -#include <sysdeps/unix/sysv/linux/i386/xstat.c> |