diff options
author | Jeffrey A Law <law@cygnus.com> | 1999-10-31 04:22:46 +0000 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 1999-10-30 22:22:46 -0600 |
commit | 0d19c2a1393340a3aea32e0a57d87141801020fe (patch) | |
tree | 27be06e7faea8aa15fe3f04d0f78027a76ce6e98 /gcc | |
parent | f6e8b583c4d79ce013c72d22b75d075c50c5e666 (diff) | |
download | gcc-0d19c2a1393340a3aea32e0a57d87141801020fe.zip gcc-0d19c2a1393340a3aea32e0a57d87141801020fe.tar.gz gcc-0d19c2a1393340a3aea32e0a57d87141801020fe.tar.bz2 |
fold-const.c (fold): Fix thinko when optimizing comparisons against -0.0.
* fold-const.c (fold): Fix thinko when optimizing comparisons
against -0.0.
From-SVN: r30282
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/fold-const.c | 3 |
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f77c788..1d60c3a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Sat Oct 30 22:19:26 1999 Jeffrey A Law (law@cygnus.com) + + * fold-const.c (fold): Fix thinko when optimizing comparisons + against -0.0. + Sat Oct 30 21:32:17 1999 David Starner <dstarner98@aasaa.ofe.org> * gcc.texi (Passes): Update front-end files to their current diff --git a/gcc/fold-const.c b/gcc/fold-const.c index f633fa8..49f61b8 100644 --- a/gcc/fold-const.c +++ b/gcc/fold-const.c @@ -5751,7 +5751,8 @@ fold (expr) REAL_VALUE_NEGATE (TREE_REAL_CST (arg1))))); /* IEEE doesn't distinguish +0 and -0 in comparisons. */ /* a CMP (-0) -> a CMP 0 */ - if (REAL_VALUE_MINUS_ZERO (TREE_REAL_CST (arg1))) + if (TREE_CODE (arg1) == REAL_CST + && REAL_VALUE_MINUS_ZERO (TREE_REAL_CST (arg1))) return fold (build (code, type, arg0, build_real (TREE_TYPE (arg1), dconst0))); } |