diff options
author | Roger Sayle <roger@eyesopen.com> | 2005-06-20 02:33:52 +0000 |
---|---|---|
committer | Roger Sayle <sayle@gcc.gnu.org> | 2005-06-20 02:33:52 +0000 |
commit | 09b2f9e8c91f9a245330f49cfee65d3642b98114 (patch) | |
tree | d643478192e3bd2111176dee180dc26f4b51715b /gcc/fold-const.c | |
parent | 115766b691bab20c8c9748fae898dc93246c1e18 (diff) | |
download | gcc-09b2f9e8c91f9a245330f49cfee65d3642b98114.zip gcc-09b2f9e8c91f9a245330f49cfee65d3642b98114.tar.gz gcc-09b2f9e8c91f9a245330f49cfee65d3642b98114.tar.bz2 |
fold-const.c (swap_tree_comparison): Add support for unordered floating point comparisons.
* fold-const.c (swap_tree_comparison): Add support for unordered
floating point comparisons.
* tree-vrp.c (opposite_comparison): Delete.
(extract_range_from_assert): Replace calls to opposite_comparison
with calls to swap_tree_comparison.
(register_edge_assert_for): Likewise.
(vrp_evaluate_conditional): Likewise.
From-SVN: r101201
Diffstat (limited to 'gcc/fold-const.c')
-rw-r--r-- | gcc/fold-const.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/gcc/fold-const.c b/gcc/fold-const.c index 335e556..5d25cb9 100644 --- a/gcc/fold-const.c +++ b/gcc/fold-const.c @@ -2169,6 +2169,10 @@ swap_tree_comparison (enum tree_code code) { case EQ_EXPR: case NE_EXPR: + case ORDERED_EXPR: + case UNORDERED_EXPR: + case LTGT_EXPR: + case UNEQ_EXPR: return code; case GT_EXPR: return LT_EXPR; @@ -2178,6 +2182,14 @@ swap_tree_comparison (enum tree_code code) return GT_EXPR; case LE_EXPR: return GE_EXPR; + case UNGT_EXPR: + return UNLT_EXPR; + case UNGE_EXPR: + return UNLE_EXPR; + case UNLT_EXPR: + return UNGT_EXPR; + case UNLE_EXPR: + return UNGE_EXPR; default: gcc_unreachable (); } |