diff options
author | Richard Stallman <rms@gnu.org> | 1993-03-31 05:46:40 +0000 |
---|---|---|
committer | Richard Stallman <rms@gnu.org> | 1993-03-31 05:46:40 +0000 |
commit | 4b438c9e617a7e48e49c10e4522ea7fddb1dfbab (patch) | |
tree | e6c88132acf9a28c8ccfe3d55e77016f3d5103aa | |
parent | 1454a5ba185887d58409c98864f4ad0d87e3a3fc (diff) | |
download | gcc-4b438c9e617a7e48e49c10e4522ea7fddb1dfbab.zip gcc-4b438c9e617a7e48e49c10e4522ea7fddb1dfbab.tar.gz gcc-4b438c9e617a7e48e49c10e4522ea7fddb1dfbab.tar.bz2 |
(split_double) : Use REAL_VALUE macros to extract ints
from float mode CONST_DOUBLEs.
From-SVN: r3937
-rw-r--r-- | gcc/final.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/final.c b/gcc/final.c index 1c1080f..cd21940 100644 --- a/gcc/final.c +++ b/gcc/final.c @@ -2524,6 +2524,13 @@ split_double (value, first, second) } else { +#ifdef REAL_ARITHMETIC + REAL_VALUE_TYPE r; HOST_WIDE_INT l[2]; + REAL_VALUE_FROM_CONST_DOUBLE (r, value); + REAL_VALUE_TO_TARGET_DOUBLE (r, l); + *first = GEN_INT (l[0]); + *second = GEN_INT (l[1]); +#else if ((HOST_FLOAT_FORMAT != TARGET_FLOAT_FORMAT || HOST_BITS_PER_WIDE_INT != BITS_PER_WORD) && ! flag_pretend_float) @@ -2537,6 +2544,7 @@ split_double (value, first, second) *second = GEN_INT (CONST_DOUBLE_LOW (value)); *first = GEN_INT (CONST_DOUBLE_HIGH (value)); #endif +#endif /* no REAL_ARITHMETIC */ } } |