diff options
author | janis <janis@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-09-10 20:44:08 +0000 |
---|---|---|
committer | janis <janis@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-09-10 20:44:08 +0000 |
commit | c8ac5d9a0464767d7091606c4d55aaaf8edc511a (patch) | |
tree | dc346951fedce72b616d1e6c4be76685c2e68c3a /libdecnumber/bid/host-ieee32.c | |
parent | a7835ede2329ad200c076f75edf493a4cb35e239 (diff) | |
download | gcc-c8ac5d9a0464767d7091606c4d55aaaf8edc511a.tar.gz |
2007-09-10 Janis Johnson <janis187@us.ibm.com>
Ben Elliston <bje@au.ibm.com>
libdecnumber/
* Makefile.in (libdecnumber_a_OBJS): Remove decUtility.o
(dependencies): Add Symbols headers.
* decContext.c: Upgrade to decNumber 3.53.
* decContext.h: Ditto.
* decDPD.h: Ditto.
* decNumber.c: Ditto.
* decNumber.h: Ditto.
* decNumberLocal.h: Ditto.
* decBasic.c: New file from decNumber 3.53.
* decCommon.c: Ditto.
* decDouble.c: Ditto.
* decDouble.h: Ditto.
* decQuad.c: Ditto.
* decQuad.h: Ditto.
* decSingle.c: Ditto.
* decSingle.h: Ditto.
* decPacked.c: Ditto.
* decPacked.h: Ditto.
* dpd/decimal128.c: Upgrade to decNumber 3.53.
* dpd/decimal128.h: Ditto.
* dpd/decimal32.c: Ditto.
* dpd/decimal32.h: Ditto.
* dpd/decimal64.c: Ditto.
* dpd/decimal64.h: Ditto.
* decLibrary.c (__dec_byte_swap): Remove.
* decContextSymbols.h: New file.
* decDoubleSymbols.h: New file.
* decNumberSymbols.h: New file.
* decPackedSymbols.h: New file.
* decQuadSymbols.h: New file.
* decSingleSymbols.h: New file.
* decUtility.c: Delete file.
* decUtility.h: Delete file.
* bid/decimal128Symbols.h: New file.
* bid/decimal128Local.h: New file.
* bid/decimal32Symbols.h: New file.
* bid/decimal64Symbols.h: New file.
* bid/host-ieee128.c (__swap128): Remove.
(__host_to_ieee_128, __ieee_to_host_128): Don't handle endianness.
* bid/host-ieee32.c (__dec_type_swap): Remove.
(__host_to_ieee_32, __ieee_to_host_32): Don't handle endianness.
* bid/host-ieee64.c (__swap64): Remove.
(__host_to_ieee_64, __ieee_to_host_64): Don't handle endianness.
* dpd/decimal32Symbols.h: New file.
* dpd/decimal64Symbols.h: New file.
* dpd/decimal128Symbols.h: New file.
* dpd/decimal128Local.h: New file.
libgcc/
* Makefile.in (dfp-filenames): Remove decUtility, add
decDouble, decPacked, decQuad, decSingle.
gcc/
* dfp.c: Include decimal128Local.h;
(dfp_byte_swap): Remove.
(encode_decimal32, decode_decimal32): Don't handle endianness.
(encode_decimal64, decode_decimal64): Ditto.
(encode_decimal128, decode_decimal128): Ditto.
* config/dfp-bit.c (host_to_ieee32, ieee_to_host_32): Ditto.
(__swap64): Remove.
(host_to_ieee_64, ieee_to_host_64): Don't handle endianness.
(__swap128): Remove
(host_to_ieee_128, ieee_to_host_128): Don't handle endianness.
* Makefile.in (DECNUM_H): Add decimal128Local.h.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128350 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libdecnumber/bid/host-ieee32.c')
-rw-r--r-- | libdecnumber/bid/host-ieee32.c | 52 |
1 files changed, 2 insertions, 50 deletions
diff --git a/libdecnumber/bid/host-ieee32.c b/libdecnumber/bid/host-ieee32.c index 639662edfee..9a59c938644 100644 --- a/libdecnumber/bid/host-ieee32.c +++ b/libdecnumber/bid/host-ieee32.c @@ -37,69 +37,21 @@ Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA /* The intended way to use this file is to make two copies, add `#define ' to one copy, then compile both copies and add them to libgcc.a. */ -#include <stdio.h> -#include <stdlib.h> #include <string.h> -#include <limits.h> - -#include "config.h" -#include "gstdint.h" #include "bid-dpd.h" #include "decimal32.h" -uint32_t __dec_byte_swap (uint32_t); void __host_to_ieee_32 (_Decimal32 in, decimal32 *out); void __ieee_to_host_32 (decimal32 in, _Decimal32 *out); -#ifndef WORDS_BIGENDIAN -#define WORDS_BIGENDIAN 0 -#endif - -uint32_t -__dec_byte_swap (uint32_t in) -{ - uint32_t out = 0; - unsigned char *p = (unsigned char *) &out; - union { - uint32_t i; - unsigned char b[4]; - } u; - - u.i = in; - p[0] = u.b[3]; - p[1] = u.b[2]; - p[2] = u.b[1]; - p[3] = u.b[0]; - - return out; -} - void __host_to_ieee_32 (_Decimal32 in, decimal32 *out) { - uint32_t t; - - if (!WORDS_BIGENDIAN) - { - memcpy (&t, &in, 4); - t = __dec_byte_swap (t); - memcpy (out, &t, 4); - } - else - memcpy (out, &in, 4); + memcpy ((char *) out, (char *) &in, 4); } void __ieee_to_host_32 (decimal32 in, _Decimal32 *out) { - uint32_t t; - - if (!WORDS_BIGENDIAN) - { - memcpy (&t, &in, 4); - t = __dec_byte_swap (t); - memcpy (out, &t, 4); - } - else - memcpy (out, &in, 4); + memcpy ((char *) out, (char *) &in, 4); } |