diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2015-05-26 20:19:55 +0000 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2015-05-26 20:19:55 +0000 |
commit | c68cdfac5b85560441d585d4151f65812180821b (patch) | |
tree | 296159a0889b88fc3421b965557c6fc40d9370e2 /gcc/ada/gcc-interface/misc.c | |
parent | 241125b2a1e4d1a694cd54c20ce2d7d5304448b3 (diff) | |
download | gcc-c68cdfac5b85560441d585d4151f65812180821b.zip gcc-c68cdfac5b85560441d585d4151f65812180821b.tar.gz gcc-c68cdfac5b85560441d585d4151f65812180821b.tar.bz2 |
trans.c (Attribute_to_gnu): Do not apply extra-precision trick to literals.
* gcc-interface/trans.c (Attribute_to_gnu) <Attr_Machine>: Do not apply
extra-precision trick to literals. Build SAVE_EXPR manually.
* gcc-interface/misc.c (enumerate_modes): Add bypass for x86/x86-64.
From-SVN: r223715
Diffstat (limited to 'gcc/ada/gcc-interface/misc.c')
-rw-r--r-- | gcc/ada/gcc-interface/misc.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/gcc/ada/gcc-interface/misc.c b/gcc/ada/gcc-interface/misc.c index cdd5466..9f931dc 100644 --- a/gcc/ada/gcc-interface/misc.c +++ b/gcc/ada/gcc-interface/misc.c @@ -847,7 +847,12 @@ enumerate_modes (void (*f) (const char *, int, int, int, int, int, int, int)) || fmt == &ieee_extended_intel_96_format || fmt == &ieee_extended_intel_96_round_53_format || fmt == &ieee_extended_intel_128_format) - fp_arith_may_widen = true; + { +#ifdef TARGET_FPMATH_DEFAULT + if (TARGET_FPMATH_DEFAULT == FPMATH_387) +#endif + fp_arith_may_widen = true; + } if (fmt->b == 2) digs = (fmt->p - 1) * 1233 / 4096; /* scale by log (2) */ |