gnu/gcc/61b702d88c8e55affc2bdbd4fee0187a0d72e397 match: Use tree_expr_nonnegative_p instead of
TYPE_UNSIGNED for MAX (A, B) (==,!=) 0 -> (A|B) (==,!=) 0 [PR125749]
tree_expr_nonnegative_p covers non negative signed type variables,
unlike TYPE_UNSIGNED.
Bootstrapped and tested on x86_64-pc-linux-gnu
PR tree-optimization/125749
gcc/ChangeLog:
PR tree-optimization/125749
* match.pd: Use tree_expr_nonnegative_p for MAX (A, B) (==,!=) 0 ->
(A|B) (==,!=) 0.
gcc/testsuite/ChangeLog:
PR tree-optimization/125749
* gcc.dg/pr125749.c: New test.
Signed-off-by: Kael Franco <kaelfandrew@gmail.com>
2 files changed