match.pd: Add patterns for POINTER_PLUS_EXPR association and special patterns from...
authorRichard Biener <rguenther@suse.de>
Fri, 7 Nov 2014 09:00:32 +0000 (09:00 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Fri, 7 Nov 2014 09:00:32 +0000 (09:00 +0000)
commita499aac5dfa5d9be4945c162167d13cfc07b2a81
tree696202c55daf649efb88070f8b62853e03d748c2
parenta8cfbbdc7413f05278fa54d4c4644ec6eb5d943b
match.pd: Add patterns for POINTER_PLUS_EXPR association and special patterns from...

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

* match.pd: Add patterns for POINTER_PLUS_EXPR association
and special patterns from tree-ssa-forwprop.c
* fold-const.c (fold_binary_loc): Remove them here.
* tree-ssa-forwprop.c (to_purge): New global bitmap.
(fwprop_set_lattice_val): New function.
(fwprop_invalidate_lattice): Likewise.
(remove_prop_source_from_use): Instead of purging dead EH
edges record blocks to do that in to_purge.
(tidy_after_forward_propagate_addr): Likewise.
(forward_propagate_addr_expr): Invalidate the lattice for
SSA names we release.
(simplify_conversion_from_bitmask): Likewise.
(simplify_builtin_call): Likewise.
(associate_pointerplus_align): Remove.
(associate_pointerplus_diff): Likewise.
(associate_pointerplus): Likewise.
(fold_all_stmts): Merge with ...
(pass_forwprop::execute): ... the original loop over all
basic-blocks.  Delay purging dead EH edges and invalidate
the lattice for SSA names we release.

From-SVN: r217213
gcc/ChangeLog
gcc/fold-const.c
gcc/match.pd
gcc/tree-ssa-forwprop.c