diff options
author | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-09-11 12:20:07 +0000 |
---|---|---|
committer | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-09-11 12:20:07 +0000 |
commit | 13089d2ba573caee1ba108afa6ea7822d7255324 (patch) | |
tree | be8cec824a00db79a4fe6fbc29e2397d2ce351a1 /gcc/passes.def | |
parent | 6b960911712a94dbe6693bf43839d987f73e0192 (diff) | |
download | gcc-13089d2ba573caee1ba108afa6ea7822d7255324.tar.gz |
2013-09-11 Richard Biener <rguenther@suse.de>
PR middle-end/58377
* passes.def: Split critical edges before late uninit warning passes.
* tree-cfg.c (pass_split_crit_edges): Implement clone method.
* g++.dg/uninit-pred-4.C: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@202496 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/passes.def')
-rw-r--r-- | gcc/passes.def | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/passes.def b/gcc/passes.def index 736a28b64dc..635b4c464e8 100644 --- a/gcc/passes.def +++ b/gcc/passes.def @@ -249,6 +249,9 @@ along with GCC; see the file COPYING3. If not see account for the predicates protecting the set and the use of each variable. Using a representation like Gated Single Assignment may help. */ + /* Split critical edges before late uninit warning to reduce the + number of false positives from it. */ + NEXT_PASS (pass_split_crit_edges); NEXT_PASS (pass_late_warn_uninitialized); NEXT_PASS (pass_dse); NEXT_PASS (pass_forwprop); @@ -282,6 +285,9 @@ along with GCC; see the file COPYING3. If not see /* ??? We do want some kind of loop invariant motion, but we possibly need to adjust LIM to be more friendly towards preserving accurate debug information here. */ + /* Split critical edges before late uninit warning to reduce the + number of false positives from it. */ + NEXT_PASS (pass_split_crit_edges); NEXT_PASS (pass_late_warn_uninitialized); NEXT_PASS (pass_uncprop); NEXT_PASS (pass_local_pure_const); |