Alexey Lapshin
7ba103eb1a
newlib: add Xtensa port
2023-08-17 18:14:15 -04:00
Kito Cheng via Newlib
d572c4482b
RISC-V: Support Zfinx/Zdinx extension.
...
Zfinx/Zdinx are new extensions ratified in 2022, it similar to F/D extensions,
support hard float operation for single/double precision, but the difference
between Zfinx/Zdinx and F/D is Zfinx/Zdinx is operating under general purpose
registers rather than dedicated floating-point registers.
This patch improve the hard float support detection for RISC-V port, so
that Zfinx/Zdinx can have better/right performance.
Co-authored-by: Jesse Huang <jesse.huang@sifive.com>
2023-07-26 15:21:35 +02:00
Hau Hsu
97d483c2f8
RISC-V: Use the new libm code if possible
...
Set __OBSOLETE_MATH_DEFAULT to 0 if 'd' extension is supported (i.e.
__riscv_flen == 64).
Base on the comment for __OBSOLETE_MATH_DEFAULT:
> ... it assumes that the toolchain has ISO C99 support (hexfloat
> literals, standard fenv semantics), the target has IEEE-754 conforming
> binary32 float and binary64 double (not mixed endian) representation,
> standard SNaN representation, double and single precision arithmetics
> has similar latency and it has no legacy SVID matherr support, only
> POSIX errno and fenv exception based error handling.
Signed-off-by: Hau Hsu <hau.hsu@sifive.com>
2023-02-22 12:20:57 +01:00
Andrea Corallo
27f0913c17
Aarch32/64: Support __FLT_EVAL_METHOD__ values other than 0, 1, 2
...
2022-03-30 Andrea Corallo <andrea.corallo@arm.com>
* libc/include/machine/ieeefp.h (__FLOAT_TYPE, __DOUBLE_TYPE): New
macros.
* libc/include/math.h: Uses __DOUBLE_TYPE __FLOAT_TYPE to define
double_t float_t if possible.
2022-04-11 12:00:16 -04:00
Marcus Comstedt
1a6fd3f05f
Set __IEEE_BIG_ENDIAN for big endian RISC-V
2021-02-25 12:14:18 +01:00
Jojo R
8315a90822
Port of C-SKY for newlib
...
Contributor list:
- Lifang Xia <lifang_xia@c-sky.com>
- Jojo R <jiejie_rong@c-sky.com>
- Xianmiao Qu <xianmiao_qu@c-sky.com>
- Yunhai Shang <yunhai_shang@c-sky.com>
2020-09-23 15:08:59 -04:00
Keith Packard via Newlib
45efe659b8
libm: Set math_errhandling to match library and hardware [v2]
...
math_errhandling is specified to contain two bits of information:
1. MATH_ERRNO -- Set when the library sets errno
2. MATH_ERREXCEPT -- Set when math operations report exceptions
MATH_ERRNO should match whether the original math code is compiled in
_IEEE_LIBM mode and the new math code has WANT_ERRNO == 1.
MATH_ERREXCEPT should match whether the underlying hardware has
exception support. This patch adds configurations of this value for
RISC-V, ARM, Aarch64, x86 and x86_64 when using HW float.
Signed-off-by: Keith Packard <keithp@keithp.com>
2020-08-04 19:30:45 +02:00
Keith Packard
ed2a469cdd
Set __IEEE_LITTLE_ENDIAN for _XTENSA_EL__ (ESP32)
...
Signed-off-by: Keith Packard <keithp@keithp.com>
2019-12-17 10:09:36 +01:00
Dimitar Dimitrov
0c7734673a
Initial PRU port for libgloss and newlib
...
Signed-off-by: Dimitar Dimitrov <dimitar@dinux.eu>
2019-10-31 14:47:19 -04:00
Jeff Johnston
1787e9d033
AMD GCN Port contributed by Andrew Stubbs <ams@codesourcery.com>
...
Add support for the AMD GCN GPU architecture. This is primarily intended for
use with OpenMP and OpenACC offloading. It can also be used for stand-alone
programs, but this is intended mostly for testing the compiler and is not
expected to be useful in general.
The GPU architecture is highly parallel, and therefore Newlib must be
configured to use dynamic re-entrancy, and thread-safe malloc.
The only I/O available is a via a shared-memory interface provided by libgomp
and the gcn-run tool included with GCC. At this time this is limited to
stdout, argc/argv, and the return code.
2019-01-15 10:48:08 -05:00
Szabolcs Nagy
393a1cb4ea
Move __HAVE_FAST_FMA to math_config.h
...
Define it consistently with other HAVE_* macros that only affect code
using math_config.h. This is also closer to the Arm Optimized Routines
code.
2018-07-06 10:29:01 +02:00
Corinna Vinschen
006520ca2b
newlib: enable new math functions on Cygwin
...
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2018-06-27 15:53:51 +02:00
Szabolcs Nagy
e5791079c6
New log implementation
...
The new implementations are provided under !__OBSOLETE_MATH, it uses
ISO C99 code. With default settings the worst case error in nearest
rounding mode is 0.519 ULP with inlined fma and fma contraction. It uses
a 2 KB lookup table, on aarch64 .text+.rodata size of libm.a is increased
by 1703 bytes. The w_log.c wrapper is disabled since error handling is
inline in the new code.
New __HAVE_FAST_FMA and __HAVE_FAST_FMA_DEFAULT feature macros were
added to enable selecting between the code path that uses fma and the
one that does not. Targets supposed to set __HAVE_FAST_FMA_DEFAULT
if they have single instruction fma and the compiler can actually
inline it (gcc has __FP_FAST_FMA macro but that does not guarantee
inlining with -fno-builtin-fma).
Improvements on Cortex-A72:
latency: 1.9x
thruput: 2.3x
2018-06-27 15:40:49 +02:00
Jeff Johnston
cd31fbb2ae
Add nvptx port.
...
- From: Cesar Philippidis <cesar@codesourcery.com>
Date: Tue, 10 Apr 2018 14:43:42 -0700
Subject: [PATCH] nvptx port
This port adds support for Nvidia GPU's, which are primarily used as
offload accelerators in OpenACC and OpenMP.
2018-04-13 15:42:37 -04:00
Thomas Preudhomme
7d09d0e261
Disable powf/log2?f/exp2?f optimization for single-precision Arm FPU
...
New optimized powf, logf, log2f, expf and exp2f yield worse performance
on Arm targets with only single precision instructions because the
double precision arithmetic is then implemented via softfloat routines.
This patch uses the old implementation when double precision
instructions are not available on Arm targets.
Testing: Built newlib with GCC's rmprofile Arm multilibs and compared
before/after -> only the above functions are changed and calls to them
(name change from logf to __ieee754_logf and similar). Testing the
changed function on a panel of values yields the same result before the
original patches to improve them and after this one. Double checking the
performance by looping the same panel of values being tested on Arm
Cortex-M4 does show the performance regression is fixed.
2018-01-25 16:08:35 +01:00
Szabolcs Nagy
c156098271
New expf, exp2f, logf, log2f and powf implementations
...
Based on code from https://github.com/ARM-software/optimized-routines/
This patch adds a highly optimized generic implementation of expf,
exp2f, logf, log2f and powf. The new functions are not only
faster (6x for powf!), but are also smaller and more accurate.
In order to achieve this, the algorithm uses double precision
arithmetic for accuracy, avoids divisions and uses small table
lookups to minimize the polynomials. Special cases are handled
inline to avoid the unnecessary overhead of wrapper functions and
set errno to POSIX requirements.
The new functions are added under newlib/libm/common, but the old
implementations are kept (in newlib/libm/math) for non-IEEE or
pre-C99 systems. Targets can enable the new math code by defining
__OBSOLETE_MATH_DEFAULT to 0 in newlib/libc/include/machine/ieeefp.h,
users can override the default by defining __OBSOLETE_MATH.
Currently the new code is enabled for AArch64 and AArch32 with VFP.
Targets with a single precision FPU may still prefer the old
implementation.
libm.a size changes:
arm: -1692
arm/thumb/v7-a/nofp: -878
arm/thumb/v7-a+fp/hard: -864
arm/thumb/v7-a+fp/softfp: -908
aarch64: -1476
2017-10-13 10:58:00 +02:00
Kito Cheng
363dbb9e44
Add RISC-V port for newlib
...
Contributor list:
- Andrew Waterman <andrew@sifive.com>
- Palmer Dabbelt <palmer@dabbelt.com>
- Kito Cheng <kito.cheng@gmail.com>
- Scott Beamer <sbeamer@eecs.berkeley.edu>
2017-08-16 18:00:58 -04:00
Jeff Johnston
948b5f0043
Add support for ft32 to newlib.
2015-09-04 14:37:37 -04:00
Eric Botcazou
bf8f43ae8a
* COPYING.LIBGLOSS: Add Controls and Data Services copyright.
...
* COPYING.NEWLIB: Likewise.
libgloss/
* configure.in: Add Visium support.
* configure: Regenerate.
* visium/: New directory.
newlib/
* configure.host: Add Visium support.
* libc/machine/configure.in: Likewise.
* libc/machine/configure: Regenerate.
* libc/machine/visium/: New directory.
* libc/include/machine/setjmp.h (_JBLEN): Define for Visium.
* libc/include/machine/ieeefp.h (__IEEE_BIG_ENDIAN): Likewise.
* libc/include/machine/time.h (_CLOCKS_PER_SEC_): Likewise.
2015-01-21 18:27:47 +00:00
Corinna Vinschen
81fd6210c0
* configure.host: Remove or16 and or32 targets and add or1k.
...
* libc/include/machine/ieeefp.h: Replace or32 with or1k.
* libc/machine/configure.in: Add or1k subdirectory.
* libc/machine/or1k/configure.in: New file.
* libc/machine/or1k/Makefile.am: New file.
* libc/machine/or1k/setjmp.S: New file.
2014-07-17 18:43:05 +00:00
Corinna Vinschen
a265e7269f
* libc/include/machine/ieeefp.h: Define _DOUBLE_IS_32BITS when double
...
options is not __RL78_64BIT_DOUBLES__.
2014-05-14 11:33:24 +00:00
Corinna Vinschen
6041792ec6
* configure.host: Change to microblaze*.
...
* libc/include/machine/ieeefp.h: Add __MICROBLAZEEL__.
* libc/machine/microblaze/mb_endian.h: New file.
* newlib/libc/machine/microblaze/strcmp.c: Add little endian support.
* newlib/libc/machine/microblaze/strcpy.c: Likewise.
* newlib/libc/machine/microblaze/strlen.c: Likewise.
* configure.in: Change to microblaze*.
* configure: Regenerate.
* microblaze/xilinx.ld: Remove OUTPUT_FORMAT.
2013-07-16 07:48:53 +00:00
Jeff Johnston
dc0cb474bb
2013-07-09 Sabrina Ni <sabrina@andestech.com>
...
* configure.host (machine_dir, syscall_dir, newlib_cflags):
Add settings for nds32*.
* libc/include/machine/ieeefp.h (IEEE_BIG_ENDIAN, IEEE_LITTLE_ENDIAN):
Ditto.
* libc/include/machine/setjmp.h (JBLEN): Ditto.
* libc/machine/configure.in: Add nds32 subdir.
* libc/machine/configure: Regenerated.
* libc/machine/nds32/Makefile.am: New.
* libc/machine/nds32/Makefile.in: New (autogenerated).
* libc/machine/nds32/aclocal.m4: New (autogenerated).
* libc/machine/nds32/configure.in: New.
* libc/machine/nds32/configure: New (autogenerated).
* libc/machine/nds32/setjmp.S: New.
2013-07-09 19:06:47 +00:00
DJ Delorie
2f2a304234
[newlib]
...
* configure.host (msp430): Add.
* libc/include/machine/ieeefp.h: Add MSP430 support.
* libc/include/machine/setjmp.h: Likewise.
* libc/include/sys/config.h: Likewise.
* libc/machine/configure.in (msp430): Add.
* libc/machine/configure: Regenerate.
* libc/machine/msp430: New directory.
[libgloss]
* configure.in (msp430*-*-elf): Add.
* configure: Regenerate.
* msp430: New directory.
2013-05-13 21:39:51 +00:00
Jeff Johnston
c16862d85b
2013-05-06 Sandra Loosemore <sandra@codesourcery.com>
...
* configure.host (machine_dir, sys_dir, syscall_dir, newlib_cflags):
Add settings for nios2*.
* libc/include/machine/ieeefp.h (IEEE_BIG_ENDIAN, IEEE_LITTLE_ENDIAN):
Likewise.
* libc/include/machine/setjmp.h (JBLEN, JBTYPE): Likewise.
* libc/machine/configure.in: Add nios2 subdir.
* libc/machine/configure: Regenerated.
* libc/machine/nios2/Makefile.am: New.
* libc/machine/nios2/Makefile.in: New (autogenerated).
* libc/machine/nios2/aclocal.m4: New (copied from mips version).
* libc/machine/nios2/configure.in: New.
* libc/machine/nios2/configure: New (autogenerated).
* libc/machine/nios2/setjmp.s: New.
2013-05-06 18:23:09 +00:00
Jeff Johnston
c3fe5bf771
2012-09-26 Ian Bolton <ian.bolton@arm.com>
...
Jim MacArthur <jim.macarthur@arm.com>
Marcus Shawcroft <marcus.shawcroft@arm.com>
Nigel Stephens <nigel.stephens@arm.com>
Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
Richard Earnshaw <rearnsha@arm.com>
Sofiane Naci <sofiane.naci@arm.com>
Tejas Belagod <tejas.belagod@arm.com>
Yufeng Zhang <yufeng.zhang@arm.com>
* configure.host: Add AArch64.
* libc/include/machine/ieeefp.h: Add AArch64.
* libc/include/machine/setjmp.h: Add AArch64.
* libc/include/machine/time.h: Add AArch64.
* libc/include/sys/config.h: Add AArch64.
* libc/machine/aarch64/Makefile.am: New file.
* libc/machine/aarch64/Makefile.in: Generated.
* libc/machine/aarch64/aclocal.m4: Generated.
* libc/machine/aarch64/configure: Generated.
* libc/machine/aarch64/configure.in: New file.
* libc/machine/aarch64/setjmp.S: New file.
* libc/machine/configure.in: Add AArch64.
* libc/machine/configure: Re-generated.
* libm/machine/aarch64/Makefile.am: New file.
* libm/machine/aarch64/Makefile.in: Generated.
* libm/machine/aarch64/aclocal.m4: Generated.
* libm/machine/aarch64/configure: Generated.
* libm/machine/aarch64/configure.in: New file.
* libm/machine/aarch64/s_ceil.c: New file.
* libm/machine/aarch64/s_floor.c: New file.
* libm/machine/aarch64/s_fma.c: New file.
* libm/machine/aarch64/s_fmax.c: New file.
* libm/machine/aarch64/s_fmin.c: New file.
* libm/machine/aarch64/s_llrint.c: New file.
* libm/machine/aarch64/s_llround.c: New file.
* libm/machine/aarch64/s_lrint.c: New file.
* libm/machine/aarch64/s_lround.c: New file.
* libm/machine/aarch64/s_nearbyint.c: New file.
* libm/machine/aarch64/s_rint.c: New file.
* libm/machine/aarch64/s_round.c: New file.
* libm/machine/aarch64/s_trunc.c: New file.
* libm/machine/aarch64/sf_ceil.c: New file.
* libm/machine/aarch64/sf_floor.c: New file.
* libm/machine/aarch64/sf_fma.c: New file.
* libm/machine/aarch64/sf_fmax.c: New file.
* libm/machine/aarch64/sf_fmin.c: New file.
* libm/machine/aarch64/sf_llrint.c: New file.
* libm/machine/aarch64/sf_llround.c: New file.
* libm/machine/aarch64/sf_lrint.c: New file.
* libm/machine/aarch64/sf_lround.c: New file.
* libm/machine/aarch64/sf_nearbyint.c: New file.
* libm/machine/aarch64/sf_rint.c: New file.
* libm/machine/aarch64/sf_round.c: New file.
* libm/machine/aarch64/sf_trunc.c: New file.
* libm/machine/configure.in: Add AArch64.
* libm/machine/configure: Re-generated.
2012-09-26 20:06:50 +00:00
Anthony Green
af32eb5e28
bi-endian support for moxie.
2012-09-13 23:57:33 +00:00
Jeff Johnston
9edde1d2c4
2012-02-21 Jeremy Bennett <jeremy.bennett@embecosm.com>
...
Alan Lehotsky <apl@alum.mit.edu>
Joern Rennecke <joern.rennecke@embecosm.com>
* configure.host: Add Epiphany support.
* libc/include/machine/ieeefp.h: Likewise.
* libc/include/machine/setjmp.h: Likewise.
* libc/machine/configure.in, libc/sys/configure.in: Likewise.
* libc/machine/configure, libc/sys/configure: Regenerate.
* libc/machine/epiphany, libc/sys/epiphany: New directories.
* NEWS: Mention addition of Epiphany.
2012-02-21 22:34:31 +00:00
DJ Delorie
d1fc77322f
[libgloss]
...
* configure.in: Add rl78.
* configure: Regenerate.
* rl78: New directory
[newlib]
* configure.host: Add rl78.
* libc/include/machine/ieeefp.h: Add rl78 support.
* libc/include/machine/setjmp.h: Add rl78 support.
* libc/machine/configure.in: Add rl78.
* libc/machine/rl78: New directory.
2011-11-29 06:33:49 +00:00
Jeff Johnston
874a87f8cd
2010-12-02 Jayant Sonar jayant.sonar@kpitcummins.com
...
Kaushik Phatak kaushik.phatak@kpitcummins.com
* configure.host: Add CR16 support.
* libc/include/machine/ieeefp.h: Ditto.
* libc/include/machine/setjmp.h: Ditto.
* libc/include/sys/config.h: Ditto.
* libc/machine/configure.in: Ditto
* libc/machine/configure: Regenerated
* libc/machine/cr16/aclocal.m4: New.
* libc/machine/cr16/configure.in: New
* libc/machine/cr16/configure: New
* libc/machine/cr16/getenv.c: New
* libc/machine/cr16/Makefile.am: New
* libc/machine/cr16/Makefile.in: New
* libc/machine/cr16/setjmp.S: New
* libc/machine/cr16/sys/asm.h: New
* libc/machine/cr16/sys/libh.h: New
* libc/machine/cr16/sys/syscall.h: New
2010-12-02 19:30:47 +00:00
Jeff Johnston
1571d0a51f
2010-10-08 Bernd Schmidt <bernds@codesourcery.com>
...
Joseph Myers <joseph@codesourcery.com>
* configure.host: Handle tic6x targets.
* libc/include/machine/ieeefp.h: Define endianness for C6X.
* libc/include/machine/setjmp.h: Add __TMS320C6X__ case.
* libc/machine/configure.in: Handle tic6x targets.
* libc/machine/configure: Regenerate.
* libc/machine/tic6x/Makefile.am, libc/machine/tic6x/configure.in,
libc/machine/tic6x/setjmp.S: New.
* libc/machine/tic6x/Makefile.in, libc/machine/tic6x/aclocal.m4,
libc/machine/tic6x/configure: New (generated).
2010-10-09 02:33:30 +00:00
Jeff Johnston
ce3b386964
2010-06-18 Pavel Pisa <ppisa4lists@pikron.com>
...
* libc/include/machine/ieeefp.h[__arm__][!__VFP_FP__]: Set to
__IEEE_BIG_ENDIAN and set __IEEE_BYTES_LITTLE_ENDIAN appropriately
based on __ARMEL flag.
* libc/include/machine/endian.h: To set byte order to LITTLE_ENDIAN,
check for __IEEE_LITTLE_ENDIAN or __IEEE_BYTES_LITTLE_ENDIAN.
2010-06-18 16:26:25 +00:00
Jeff Johnston
45c8c6469a
2010-02-11 Craig Howland <howland@LGSInnovations.com>
...
* libc/include/machine/ieeefp.h: isfinite macro modified to run faster
by only calling fpclassify once instead of possibly twice.
2010-02-11 21:03:51 +00:00
Jeff Johnston
6fe2eb4c80
2009-12-17 Ralf Corsépius <ralf.corsepius@rtems.org>
...
* libc/include/machine/ieeefp.h: Rework __IEEE_*_ENDIAN handling.
* libc/machine/arm/machine/endian.h: Remove (Conflicts with
libc/include/machine/endian.h)
2009-12-17 19:26:38 +00:00
Jeff Johnston
655e435357
2009-12-10 Conny Marco Menebrocker <c-m-m@gmx.de>
...
* configure.host: Add xc16x support.
* libc/include/machine/ieeefp.h: Ditto.
* libc/include/sys/config.h: Ditto.
* libc/machine/configure.in: Ditto.
* libc/machine/Makefile.in: Regenerated.
* libc/machine/aclocal.m4: Ditto.
* libc/machine/configure: Ditto.
* libc/machine/xc16x/Makefile.am: New file.
* libc/machine/xc16x/Makefile.in: Ditto.
* libc/machine/xc16x/aclocal.m4: Ditto.
* libc/machine/xc16x/configure: Ditto.
* libc/machine/xc16x/configure.in: Ditto.
* libc/machine/xc16x/putchar.c: Ditto.
* libc/machine/xc16x/puts.c: Ditto.
* libc/machine/xc16x/setjmp.S: Ditto.
2009-12-10 17:12:11 +00:00
Nick Clifton
fd6942ab42
newlib:
...
* configure.host: Add support for RX architecture.
* libc/include/machine/ieeefp.h: Likewise.
* libc/include/machine/setjmp.h: Likewise.
* libc/include/machine/configure.in: Likewise.
* libc/include/machine/configure: Regenerate.
* libc/machine/rx: New directory.
* libc/machine/rx/*: New files to support RX architecture.
libgloss:
* configure.in: Add support for RX sub-directory.
* configure: Regenerate.
* rx: New directory.
* rx/*: New files to support RX architecture.
2009-10-26 10:05:23 +00:00
Jeff Johnston
6c249577fb
2009-09-28 Michael Eager <eager@eagercon.com>
...
* configure.host: Add microblaze.
* libc/include/machine/ieeefp.h [MICROBLAZE]: Define __IEEE_BIG_ENDIAN.
* libc/include/machine/setjmp.h [MICROBLAZE]: Define _JBLEN, _JBTYPE.
* libc/include/sys/config.h [MICROBLAZE]: Define _REENT_SMALL,
_UNIX98_THREAD_MUTEX_ATTRIBUTES.
* libc/include/sys/types.h: Treat XMK like rtems, define
PTHREAD_MUTEX_NORMAL, PTHREAD_MUTEX_ERRORCHECK, PTHREAD_MUTEX_RECURSIVE,
PTHREAD_MUTEX_DEFAULT, PTHREAD_STACK_MIN, define stuct pthread_attr_s.
* libc/machine/configure.in: Add microblaze.
* libc/machine/configure: Add microblaze (not regenerated).
* libc/machine/microblaze/configure.in: NEW.
* libc/machine/microblaze/configure: Generate.
* libc/machine/microblaze/Makefile.am: NEW.
* libc/machine/microblaze/Makefile.in: Generate.
* libc/machine/microblaze/{abort.c, strcmp.c, strcpy.c, strlen.c,
mallocr.c, longjmp.S, setjmp.S}: NEW.
* libc/stdlib/mallocr.c [MICROBLAZE]: Don't declare sbrk prototype,
mALLOc(): return malloc value.
2009-09-28 16:42:21 +00:00
Jeff Johnston
664f00763b
2009-07-09 Craig Howland <howland@LGSInnovations.com>
...
* libm/math/ef_scalb.c: Replace isnanf() (pre-C99 function call) with
isnan() (C99 macro).
* libm/math/wf_log.c: Ditto.
* libm/math/wf_j0.c: Ditto.
* libm/math/wf_sqrt.c: Ditto.
* libm/math/wf_pow.c: Ditto.
* libm/math/wf_fmod.c: Ditto.
* libm/math/wf_remainder.c: Ditto.
* libm/math/wf_scalb.c: Ditto.
* libm/math/wf_atanh.c: Ditto.
* libm/math/wf_cosh.c: Ditto.
* libm/math/wf_acos.c: Ditto.
* libm/math/wf_acosh.c: Ditto.
* libm/math/wf_jn.c: Ditto.
* libm/math/wf_log10.c: Ditto.
* libm/math/wf_asin.c: Ditto.
* libm/math/wf_j1.c: Ditto.
* libm/common/sf_isnan.c: Add #include <ieeefp.h>, fix comment.
* libm/common/sf_isinf.c: Add #include <ieeefp.h>, adjust comment to
match that from s_isinf.c.
* libc/include/machine/ieeefp.h: Simplify isinf and isnan macros to
remove un-necessary extension use (in a similar manner to as was
recently done in math.h).
* libc/include/math.h: Remove isnanf and isinff prototypes (are in
ieeefp.h).
* libm/machine/spu/sf_isinf.c: Fix comment (remove <math.h>).
2009-07-09 17:04:56 +00:00
Jeff Johnston
2beb9fbb02
2009-04-22 Anthony Green <green@moxielogic.com>
...
* configure.host: Add moxie support.
* libc/machine/configure.in: Add moxie support.
* libc/machine/configure: Rebuilt.
* libc/machine/moxie/aclocal.m4: New file.
* libc/machine/moxie/configure: New file.
* libc/machine/moxie/configure.in: New file.
* libc/machine/moxie/Makefile.am: New file.
* libc/machine/moxie/Makefile.in: New file.
* libc/machine/moxie/setjmp.S: New file.
* libc/include/machine/setjmp.h (_JBLEN): Define for moxie.
* libc/include/machine/ieeefp.h: Add moxie support.
2009-04-22 19:52:49 +00:00
Jeff Johnston
1b8e360e06
2009-04-17 Jeff johnston <jjohnstn@redhat.com>
...
* libc/include/machine/ieeefp.h (_LDBL_EQ_DBL): Remove.
* libc/stdlib/local.h (_LDBL_EQ_DBL): Add.
* libc/stdlib/strtold.c: Include local.h.
* libc/stdlib/wcstold.c: Likewise.
* libm/common/atanl.c: Likewise.
* libm/common/cosl.c: Likewise.
* libm/common/sinl.c: Likewise.
* libm/common/modfl.c: Likewise.
* libm/common/frexpl.c: Likewise.
* libm/common/tanhl.c: Likewise.
* libm/common/tanl.c: Likewise.
* libm/common/expm1l.c: Likewise.
* libm/common/log1pl.c: Likewise.
* libm/common/ceill.c: Likewise.
* libm/common/fabsl.c: Likewise.
* libm/common/floorl.c: Likewise.
* libm/common/acosl.c: Likewise.
* libm/common/asinl.c: Likewise.
* libm/common/atan2l.c: Likewise.
* libm/common/coshl.c: Likewise.
* libm/common/expl.c: Likewise.
* libm/common/fmodl.c: Likewise.
* libm/common/hypotl.c: Likewise.
* libm/common/ldexpl.c: Likewise.
* libm/common/log10l.c: Likewise.
* libm/common/logl.c: Likewise.
* libm/common/powl.c: Likewise.
* libm/common/sqrtl.c: Likewise.
* libm/common/copysignl.c: Likewise.
* libm/common/ilogbl.c: Likewise.
* libm/common/nanl.c: Likewise.
* libm/common/cbrtl.c: Likewise.
* libm/common/asinhl.c: Likewise.
* libm/common/nextafterl.c: Likewise.
* libm/common/rintl.c: Likewise.
* libm/common/scalbnl.c: Likewise.
* libm/common/exp2l.c: Likewise.
* libm/common/fdiml.c: Likewise.
* libm/common/fmal.c: Likewise.
* libm/common/fmaxl.c: Likewise.
* libm/common/fminl.c: Likewise.
* libm/common/lrintl.c: Likewise.
* libm/common/lroundl.c: Likewise.
* libm/common/nearbyintl.c: Likewise.
* libm/common/remquol.c: Likewise.
* libm/common/roundl.c: Likewise.
* libm/common/scalblnl.c: Likewise.
* libm/common/truncl.c: Likewise.
* libm/common/acoshl.c: Likewise.
* libm/common/atanhl.c: Likewise.
* libm/common/erfcl.c: Likewise.
* libm/common/erfl.c: Likewise.
* libm/common/lgammal.c: Likewise.
* libm/common/remainderl.c: Likewise.
* libm/common/tgammal.c: Likewise.
* libm/common/sinhl.c: Likewise.
* libm/common/llroundl.c: Likewise.
* libm/common/llrintl.c: Likewise.
* libm/common/local.h: New file with _LDBL_EQ_DBL macro.
2009-04-17 22:15:43 +00:00
Jeff Johnston
ad9bb48fbe
2009-04-17 Ken Werner <ken.werner@de.ibm.com>
...
* libc/include/machine/ieeefp.h: _LDBL_EQ_DBL check fixed.
* libc/include/math.h (llrintl): Declare.
* libm/common/llrintl.c: New File.
* libm/common/Makefile.am: New File added.
* libm/common/Makefile.in: Regenerate.
2009-04-17 20:54:19 +00:00
Jeff Johnston
65f414dc16
2009-04-16 Ken Werner <ken.werner@de.ibm.com>
...
* libm/libm.texinfo: Add long double function support chapter.
* libc/include/machine/ieeefp.h: Add _LDBL_EQ_DBL define.
* libc/include/stdlib.h: Include <machine/ieeefp.h>.
(strtold, wcstold): Declare.
* libc/stdlib/strtold.c: New File.
* libc/stdlib/wcstold.c: Likewise.
* libc/configure.in: Add long double check.
* libc/configure: Regenerate.
* libc/stdlib/Makefile.am: Add strtold.c and wcstold.c.
* libc/stdlib/Makefile.in: Regenerate.
* libc/include/math.h (atanl, cosl, sinl, tanl, tanhl): Declare.
(frexpl, modfl, ceill, fabsl, floorl, log1pl, expm1l, acosl): Ditto.
(asinl, atan2l, coshl, sinhl, expl, ldexpl, logl, log10l, powl): Ditto.
(sqrtl, fmodl, hypotl, copysignl, nanl, ilogbl, asinhl, cbrt): Ditto.
(nextafterl, rintl, scalbnl, exp2l, scalblnl, tgammal): Ditto.
(nearbyintl, lrintl, llrintl, roundl, lroundl, llround): Ditto.
(llroundl, truncl, remquol, fdiml, fmaxl, fminl, fmal, acoshl): Ditto.
(atanhl, remainderl, lgammal, erfl, erfcl): Ditto.
* libm/common/atanl.c: New File.
* libm/common/cosl.c: Likewise.
* libm/common/sinl.c: Likewise.
* libm/common/modfl.c: Likewise.
* libm/common/frexpl.c: Likewise.
* libm/common/tanhl.c: Likewise.
* libm/common/tanl.c: Likewise.
* libm/common/expm1l.c: Likewise.
* libm/common/log1pl.c: Likewise.
* libm/common/ceill.c: Likewise.
* libm/common/fabsl.c: Likewise.
* libm/common/floorl.c: Likewise.
* libm/common/acosl.c: Likewise.
* libm/common/asinl.c: Likewise.
* libm/common/atan2l.c: Likewise.
* libm/common/coshl.c: Likewise.
* libm/common/expl.c: Likewise.
* libm/common/fmodl.c: Likewise.
* libm/common/hypotl.c: Likewise.
* libm/common/ldexpl.c: Likewise.
* libm/common/log10l.c: Likewise.
* libm/common/logl.c: Likewise.
* libm/common/powl.c: Likewise.
* libm/common/sqrtl.c: Likewise.
* libm/common/copysignl.c: Likewise.
* libm/common/ilogbl.c: Likewise.
* libm/common/nanl.c: Likewise.
* libm/common/cbrtl.c: Likewise.
* libm/common/asinhl.c: Likewise.
* libm/common/nextafterl.c: Likewise.
* libm/common/rintl.c: Likewise.
* libm/common/scalbnl.c: Likewise.
* libm/common/exp2l.c: Likewise.
* libm/common/fdiml.c: Likewise.
* libm/common/fmal.c: Likewise.
* libm/common/fmaxl.c: Likewise.
* libm/common/fminl.c: Likewise.
* libm/common/lrintl.c: Likewise.
* libm/common/lroundl.c: Likewise.
* libm/common/nearbyintl.c: Likewise.
* libm/common/remquol.c: Likewise.
* libm/common/roundl.c: Likewise.
* libm/common/scalblnl.c: Likewise.
* libm/common/truncl.c: Likewise.
* libm/common/acoshl.c: Likewise.
* libm/common/atanhl.c: Likewise.
* libm/common/erfcl.c: Likewise.
* libm/common/erfl.c: Likewise.
* libm/common/lgammal.c: Likewise.
* libm/common/remainderl.c: Likewise.
* libm/common/tgammal.c: Likewise.
* libm/common/sinhl.c: Likewise.
* libm/common/llroundl.c: Likewise.
* libm/configure.in: Add long double check.
* libm/configure: Regenerate.
* libm/common/Makefile.am: Add new files.
* libm/common/Makefile.in: Regenerate.
2009-04-16 18:24:35 +00:00
Jeff Johnston
0e859ad10f
2008-12-11 Jukka Pietarinen <jukka.pietarinen@mrf.fi>
...
* configure.host: Add lm32
* libc/include/machine/ieeefp.h: Add __lm32__
* libc/include/machine/setjmp.h: Add __lm32__
* libc/machine/configure.in: Add lm32
* libc/machine/configure: Regenerated.
* libc/machine/lm32/aclocal.m4: New file.
* libc/machine/lm32/configure.in: Ditto.
* libc/machine/lm32/configure: Ditto.
* libc/machine/lm32/Makefile.am: Ditto.
* libc/machine/lm32/Makefile.in: Ditto.
* libc/machine/lm32/setjmp.s: Ditto.
2008-12-11 20:05:38 +00:00
Nick Clifton
51bef6a9c6
* libc/include/machine/ieeefp.h: Fix typo: _DOUBLE_IS_32_BITS
...
should be _DOUBLE_IS_32BITS.
2008-04-24 11:26:41 +00:00
Dave Brolley
7b4cad4ae6
2007-11-07 Dave Brolley <brolley@redhat.com>
...
* libc/machine/configure: Regenerated to pick up mep-elf changes.
* Contribute mep-elf from Red Hat
2006-10-27 DJ Delorie <dj@redhat.com>
* libc/include/machine/setjmp.h: Add MeP support.
2003-04-17 DJ Delorie <dj@redhat.com>
* configure.host (mep-*-*): Support "long long" type.
2001-06-06 DJ Delorie <dj@redhat.com>
* libc/include/machine/ieeefp.h (mep): Support little endian too.
2001-05-14 DJ Delorie <dj@redhat.com>
* configure.host: Add mep's machine_dir.
* libc/include/setjmp.h: Add mep support.
* libc/machine/mep: New.
* libc/machine/mep/setjmp.S: New, support mep's setjmp/longjmp.
2001-05-04 DJ Delorie <dj@redhat.com>
* configure.host: Add mep.
* libc/include/machine/ieeefp.h: Ditto.
2007-11-07 21:42:24 +00:00
Jeff Johnston
d4a2788652
2007-08-28 Hans Kester <hans.kester@ellips.nl>
...
* configure.host: Added support for x86_64.
* libc/include/machine/ieeefp.h: Define __IEEE_LITTLE_ENDIAN for x86_64.
* libc/include/machine/setjmp.h: Define _JBTYPE and _JBLEN for x86_64.
* libc/machine/x86_64/aclocal.m4: Generated.
* libc/machine/x86_64/configure.in: New.
* libc/machine/x86_64/configure: Generated.
* libc/machine/x86_64/Makefile.am: New.
* libc/machine/x86_64/Makefile.in: Generated.
* libc/machine/x86_64/setjmp.S: New.
* libc/machine/x86_64/memcpy.S: New.
* libc/machine/x86_64/memset.S: New.
* libc/machine/configure.in: Added support for x86_64.
* libc/machine/configure: Regenerated.
2007-08-28 21:56:50 +00:00
Jeff Johnston
976e9d281b
2007-04-26 Patrick Mansfield <patmans@us.ibm.com>
...
* libc/include/ieeefp.h: use prefixed __ieeefp_ macros that can be
overridden via machine/ieeefp.h.
* libc/include/machine/ieeefp.h: Add SPU specific C99 and ieeefp
macros for isnan and related macros.
* libc/include/math.h: Allow C99 isfinite, isinf, and isnan to be
overridden via machine/ieeefp.h.
* libm/machine/spu/Makefile.am: Add new files.
* libm/machine/spu/Makefile.in: Autogenerate with new files.
* libm/machine/spu/sf_fpclassify.c: Add SPU specific __fpclassifyf.
* libm/machine/spu/sf_finite.c: Add SPU specific finitef.
* libm/machine/spu/sf_isinf.c: Add SPU specific isinff.
* libm/machine/spu/sf_isinff.c: Add SPU specific __isinff.
* libm/machine/spu/sf_isnan.c: Add SPU specific isnanf.
* libm/machine/spu/sf_isnanf.c: Add SPU specific __isnanf.
* libm/machine/spu/sf_nan.c: Add SPU specific nanf.
2007-04-26 19:23:37 +00:00
Jeff Johnston
292f8e2328
2006-11-08 Jie Zhang <jzhang918@gmail.com>
...
* configure.host: Add support for bfin.
* libc/include/machine/ieeefp.h: Define __IEEE_LITTLE_ENDIAN for bfin.
* libc/include/machine/setjmp.h: Define _JBLEN for bfin.
* libc/machine/bfin/aclocal.m4: Generate.
* libc/machine/bfin/configure.in: New.
* libc/machine/bfin/configure: Generate.
* libc/machine/bfin/Makefile.am: New.
* libc/machine/bfin/Makefile.in: Generate.
* libc/machine/bfin/setjmp.S: New.
* libc/machine/bfin/longjmp.S: New.
* libc/machine/configure.in: Add bfin support.
* libc/machine/configure: Generate.
2006-11-08 19:26:43 +00:00
Jeff Johnston
734e841435
2006-08-16 Joel Schopp <jschopp@austin.ibm.com>
...
* configure.host: Add spu support.
* libc/include/stdint.h: Ditto.
* libc/include/machine/ieeefp.h: Ditto.
* libc/include/machine/setjmp.h: Ditto.
* libc/include/sys/config.h: Ditto.
* libc/include/sys/types.h: Ditto.
* libc/machine/spu/Makefile.am: New file.
* libc/machine/spu/Makefile.in: Ditto.
* libc/machine/spu/aclocal.m4: Ditto.
* libc/machine/spu/configure: Ditto.
* libc/machine/spu/configure.in: Ditto.
* libc/machine/spu/memcpy.c: Ditto.
* libc/machine/spu/setjmp.S: Ditto.
2006-08-16 21:39:43 +00:00
Jeff Johnston
c8ba5c2205
2005-12-13 Nathan Sidwell <nathan@codesourcery.com>
...
* libc/include/machine/ieeefp.h (__mt__): Renamed from __ms1__.
* libc/include/machine/setjmp.h (__mt__): Likewise.
* libc/machine/mt/setjmp.S: Rename ms1 reference to mt.
* libc/machine/configure.in: Ditto.
2005-12-13 22:57:31 +00:00