diff options
| -rw-r--r-- | gcc/ChangeLog | 5 | ||||
| -rw-r--r-- | gcc/config/rs6000/rs6000.c | 6 |
2 files changed, 8 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7efd318..258526b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2005-03-20 David Edelsohn <edelsohn@gnu.org> + + * config/rs6000/rs6000.c (rs6000_generate_compare): Test + flag_finite_math_only, not flag_unsafe_math_optimizations. + 2005-03-20 Kazu Hirata <kazu@cs.umass.edu> * builtins.c (fold_builtin_1): Update a call to diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index 602e83a..2dbe28f 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -10161,10 +10161,10 @@ rs6000_generate_compare (enum rtx_code code) } /* Some kinds of FP comparisons need an OR operation; - under flag_unsafe_math_optimizations we don't bother. */ + under flag_finite_math_only we don't bother. */ if (rs6000_compare_fp_p - && ! flag_unsafe_math_optimizations - && ! (TARGET_HARD_FLOAT && TARGET_E500 && !TARGET_FPRS) + && !flag_finite_math_only + && !(TARGET_HARD_FLOAT && TARGET_E500 && !TARGET_FPRS) && (code == LE || code == GE || code == UNEQ || code == LTGT || code == UNGT || code == UNLT)) |
