From: Richard Biener Date: Tue, 28 Jul 2015 11:52:55 +0000 (+0000) Subject: match.pd: Re-order two cases in comparison with max/min value simplification to make... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=9bc22d19f1fa7f65d5d50d3c44e8c9fbf7a8760b;p=gcc.git match.pd: Re-order two cases in comparison with max/min value simplification to make it... 2015-07-28 Richard Biener * match.pd: Re-order two cases in comparison with max/min value simplification to make it apply for bools. From-SVN: r226311 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 54a0da3237f..d81551f6968 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2015-07-28 Richard Biener + + * match.pd: Re-order two cases in comparison with max/min + value simplification to make it apply for bools. + 2015-07-28 Kyrylo Tkachov * config/aarch64/aarch64.c (aarch64_rtx_arith_op_extract_p): diff --git a/gcc/match.pd b/gcc/match.pd index f431df56764..5aaa8e119aa 100644 --- a/gcc/match.pd +++ b/gcc/match.pd @@ -1856,12 +1856,6 @@ along with GCC; see the file COPYING3. If not see { constant_boolean_node (true, type); }) (if (cmp == LT_EXPR) (ne @2 @1)))) - (if (wi::eq_p (@1, max - 1)) - (switch - (if (cmp == GT_EXPR) - (eq @2 { wide_int_to_tree (TREE_TYPE (@1), wi::add (@1, 1)); })) - (if (cmp == LE_EXPR) - (ne @2 { wide_int_to_tree (TREE_TYPE (@1), wi::add (@1, 1)); })))) (if (wi::eq_p (@1, min)) (switch (if (cmp == LT_EXPR) @@ -1872,6 +1866,12 @@ along with GCC; see the file COPYING3. If not see { constant_boolean_node (true, type); }) (if (cmp == GT_EXPR) (ne @2 @1)))) + (if (wi::eq_p (@1, max - 1)) + (switch + (if (cmp == GT_EXPR) + (eq @2 { wide_int_to_tree (TREE_TYPE (@1), wi::add (@1, 1)); })) + (if (cmp == LE_EXPR) + (ne @2 { wide_int_to_tree (TREE_TYPE (@1), wi::add (@1, 1)); })))) (if (wi::eq_p (@1, min + 1)) (switch (if (cmp == GE_EXPR)