match.pd: Add tcc_comparison...
authorRichard Biener <rguenther@suse.de>
Thu, 13 Nov 2014 13:58:59 +0000 (13:58 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Thu, 13 Nov 2014 13:58:59 +0000 (13:58 +0000)
commitf84e7fd6cb5091fa4eba373782f2a87dd449521f
treeb84b11303968c5b98e08de3b9e43e7f0e574316c
parent87b6c18c01a9e328ae9e4ef0929c40b9213be9f8
match.pd: Add tcc_comparison...

2014-11-13  Richard Biener  <rguenther@suse.de>

* match.pd: Add tcc_comparison, inverted_tcc_comparison
and inverted_tcc_comparison_with_nans operator lists.
Use tcc_comparison in the truth_valued_p predicate definition.
Restrict logical_inverted_value with bit_xor to integral types.
Build a boolean true for simplifying x |^ !x because of
vector types.  Implement patterns from forward_propagate_comparison
* tree-ssa-forwprop.c (forward_propagate_comparison): Remove.
(get_prop_dest_stmt): Likewise.
(pass_forwprop::execute): Do not call it.
* fold-const.c (fold_unary_loc): Remove the pattern here.

* gcc.dg/tree-ssa/forwprop-28.c: Adjust.

From-SVN: r217496
gcc/ChangeLog
gcc/fold-const.c
gcc/match.pd
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/tree-ssa/forwprop-28.c
gcc/tree-ssa-forwprop.c