diff options
author | Vladimir Makarov <vmakarov@gcc.gnu.org> | 1999-01-19 12:03:01 +0000 |
---|---|---|
committer | Vladimir Makarov <vmakarov@gcc.gnu.org> | 1999-01-19 12:03:01 +0000 |
commit | eaa4b44cfc6743304718f03b61c8c3ef9ec91d0b (patch) | |
tree | ed369eff236e0ae27f442c15fba0966a72f573b4 /gcc/libgcc2.c | |
parent | 60409070a6daca63bbb2be39cefe8692e96ad952 (diff) | |
download | gcc-eaa4b44cfc6743304718f03b61c8c3ef9ec91d0b.zip gcc-eaa4b44cfc6743304718f03b61c8c3ef9ec91d0b.tar.gz gcc-eaa4b44cfc6743304718f03b61c8c3ef9ec91d0b.tar.bz2 |
[multiple changes]
1999-01-19 Vladimir N. Makarov <vmakarov@cygnus.com>
* invoke.texi (-mlong-double-64): New option description.
1999-01-19 Jim Wilson <wilson@cygnus.com>
* libgcc2.c: Change all uses of LONG_DOUBLE_TYPE_SIZE to
LIBGCC2_LONG_DOUBLE_TYPE_SIZE.
(LIBGCC2_LONG_DOUBLE_TYPE_SIZE): New. Set to LONG_DOUBLE_TYPE_SIZE
if not defined.
* i960/i960.h (MULTILIB_DEFAULTS): Define to mnumerics.
(CPP_SPECS): Add -mlong-double-64 support.
(TARGET_FLAG_LONG_DOUBLE_64, TARGET_LONG_DOUBLE_64): New.
(TARGET_SWITCHES): Add -mlong-double-64 support.
(LONG_DOUBLE_TYPE_SIZE): Likewise.
(LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Define.
* i960/vx960-coff.h (MULTILIB_DEFAULTS): Define to msoft-float.
(CPP_SPECS): Add -mlong-double-64 support.
* i960/t-960bare (MULTILIB_OPTIONS): Add mlong-double-64.
(MULTILIB_DIRNAMES): Add ld64.
* i960/t-vxworks960 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Likewise.
From-SVN: r24764
Diffstat (limited to 'gcc/libgcc2.c')
-rw-r--r-- | gcc/libgcc2.c | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/gcc/libgcc2.c b/gcc/libgcc2.c index 0275525..b06b771 100644 --- a/gcc/libgcc2.c +++ b/gcc/libgcc2.c @@ -72,6 +72,10 @@ Boston, MA 02111-1307, USA. */ #define LIBGCC2_WORDS_BIG_ENDIAN WORDS_BIG_ENDIAN #endif +#ifndef LIBGCC2_LONG_DOUBLE_TYPE_SIZE +#define LIBGCC2_LONG_DOUBLE_TYPE_SIZE LONG_DOUBLE_TYPE_SIZE +#endif + /* In the first part of this file, we are interfacing to calls generated by the compiler itself. These calls pass values into these routines which have very specific modes (rather than very specific types), and @@ -90,10 +94,10 @@ typedef unsigned int UDItype __attribute__ ((mode (DI))); typedef float SFtype __attribute__ ((mode (SF))); typedef float DFtype __attribute__ ((mode (DF))); -#if LONG_DOUBLE_TYPE_SIZE == 96 +#if LIBGCC2_LONG_DOUBLE_TYPE_SIZE == 96 typedef float XFtype __attribute__ ((mode (XF))); #endif -#if LONG_DOUBLE_TYPE_SIZE == 128 +#if LIBGCC2_LONG_DOUBLE_TYPE_SIZE == 128 typedef float TFtype __attribute__ ((mode (TF))); #endif @@ -144,10 +148,10 @@ typedef union extern DItype __fixunssfdi (SFtype a); extern DItype __fixunsdfdi (DFtype a); -#if LONG_DOUBLE_TYPE_SIZE == 96 +#if LIBGCC2_LONG_DOUBLE_TYPE_SIZE == 96 extern DItype __fixunsxfdi (XFtype a); #endif -#if LONG_DOUBLE_TYPE_SIZE == 128 +#if LIBGCC2_LONG_DOUBLE_TYPE_SIZE == 128 extern DItype __fixunstfdi (TFtype a); #endif @@ -768,7 +772,7 @@ __ucmpdi2 (DItype a, DItype b) } #endif -#if defined(L_fixunstfdi) && (LONG_DOUBLE_TYPE_SIZE == 128) +#if defined(L_fixunstfdi) && (LIBGCC2_LONG_DOUBLE_TYPE_SIZE == 128) #define WORD_SIZE (sizeof (SItype) * BITS_PER_UNIT) #define HIGH_WORD_COEFF (((UDItype) 1) << WORD_SIZE) @@ -800,7 +804,7 @@ __fixunstfdi (TFtype a) } #endif -#if defined(L_fixtfdi) && (LONG_DOUBLE_TYPE_SIZE == 128) +#if defined(L_fixtfdi) && (LIBGCC2_LONG_DOUBLE_TYPE_SIZE == 128) DItype __fixtfdi (TFtype a) { @@ -810,7 +814,7 @@ __fixtfdi (TFtype a) } #endif -#if defined(L_fixunsxfdi) && (LONG_DOUBLE_TYPE_SIZE == 96) +#if defined(L_fixunsxfdi) && (LIBGCC2_LONG_DOUBLE_TYPE_SIZE == 96) #define WORD_SIZE (sizeof (SItype) * BITS_PER_UNIT) #define HIGH_WORD_COEFF (((UDItype) 1) << WORD_SIZE) @@ -842,7 +846,7 @@ __fixunsxfdi (XFtype a) } #endif -#if defined(L_fixxfdi) && (LONG_DOUBLE_TYPE_SIZE == 96) +#if defined(L_fixxfdi) && (LIBGCC2_LONG_DOUBLE_TYPE_SIZE == 96) DItype __fixxfdi (XFtype a) { @@ -940,7 +944,7 @@ __fixsfdi (SFtype a) } #endif -#if defined(L_floatdixf) && (LONG_DOUBLE_TYPE_SIZE == 96) +#if defined(L_floatdixf) && (LIBGCC2_LONG_DOUBLE_TYPE_SIZE == 96) #define WORD_SIZE (sizeof (SItype) * BITS_PER_UNIT) #define HIGH_HALFWORD_COEFF (((UDItype) 1) << (WORD_SIZE / 2)) #define HIGH_WORD_COEFF (((UDItype) 1) << WORD_SIZE) @@ -959,7 +963,7 @@ __floatdixf (DItype u) } #endif -#if defined(L_floatditf) && (LONG_DOUBLE_TYPE_SIZE == 128) +#if defined(L_floatditf) && (LIBGCC2_LONG_DOUBLE_TYPE_SIZE == 128) #define WORD_SIZE (sizeof (SItype) * BITS_PER_UNIT) #define HIGH_HALFWORD_COEFF (((UDItype) 1) << (WORD_SIZE / 2)) #define HIGH_WORD_COEFF (((UDItype) 1) << WORD_SIZE) @@ -1065,7 +1069,7 @@ __floatdisf (DItype u) } #endif -#if defined(L_fixunsxfsi) && LONG_DOUBLE_TYPE_SIZE == 96 +#if defined(L_fixunsxfsi) && LIBGCC2_LONG_DOUBLE_TYPE_SIZE == 96 /* Reenable the normal types, in case limits.h needs them. */ #undef char #undef short |