2017-09-26 Richard Biener <rguenther@suse.de>
commit47cb76f97d09e1c390bb30941f38d533029cfb20
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 26 Sep 2017 10:16:40 +0000 (26 10:16 +0000)
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 26 Sep 2017 10:16:40 +0000 (26 10:16 +0000)
tree913f67e2ea963f7bd5bed7b0d1727f76d461e362
parentefcce5e2509ad83666edcf7eaf8b6133382ea85a
2017-09-26  Richard Biener  <rguenther@suse.de>

Backport from mainline
2017-09-19  Richard Biener  <rguenther@suse.de>

PR tree-optimization/82244
* tree-vrp.c (remove_range_assertions): Do not propagate
a constant to abnormals but replace the assert with a copy.

* gcc.dg/torture/pr82244.c: New testcase.

2017-09-21  Richard Biener  <rguenther@suse.de>

PR tree-optimization/82276
PR tree-optimization/82244
* tree-vrp.c (build_assert_expr_for): Set
SSA_NAME_OCCURS_IN_ABNORMAL_PHI if the variable we assert on
has it set.
(remove_range_assertions): Revert earlier change.

* gcc.dg/torture/pr82276.c: New testcase.

2017-09-20  Richard Biener  <rguenther@suse.de>

PR tree-optimization/82264
* tree-ssa-sccvn.c (vn_phi_eq): Use safe_dyn_cast to check
for GIMPLE_CONDs.
(vn_phi_lookup): Likewise.
(vn_phi_insert): Likewise.
* is-a.h (safe_dyn_cast): New.

* gcc.dg/torture/pr82264.c: New testcase.

2017-09-25  Richard Biener  <rguenther@suse.de>

PR tree-optimization/82285
* tree-vect-patterns.c (vect_recog_bool_pattern): Also handle
enumeral types.

* gcc.dg/torture/pr82285.c: New testcase.

2017-09-22  Richard Biener  <rguenther@suse.de>

PR tree-optimization/82291
* tree-if-conv.c (predicate_mem_writes): Make sure to
remove writes in blocks predicated with false.

* gcc.dg/torture/pr82291.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@253190 138bc75d-0d04-0410-961f-82ee72b054a4
12 files changed:
gcc/ChangeLog
gcc/is-a.h
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/torture/pr82244.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/torture/pr82264.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/torture/pr82276.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/torture/pr82285.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/torture/pr82291.c [new file with mode: 0644]
gcc/tree-if-conv.c
gcc/tree-ssa-sccvn.c
gcc/tree-vect-patterns.c
gcc/tree-vrp.c