summaryrefslogtreecommitdiff
path: root/gcc/cfgloopmanip.h
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2016-11-24 12:25:22 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2016-11-24 12:25:22 +0000
commiteb2afa1a80613d37aa12fdd5a0624b45fdef9377 (patch)
treee719b1da7d230192f4964664cd374d04f8b94006 /gcc/cfgloopmanip.h
parent2d8fec87b11ecfad75f8cae7910e60e1a61ec61b (diff)
re PR tree-optimization/71595 (ICE on valid code at -O2 and -O3 on x86_64-linux-gnu: in check_loop_closed_ssa_use, at tree-ssa-loop-manip.c:704)
2016-11-24 Richard Biener <rguenther@suse.de> PR tree-optimization/71595 * cfgloopmanip.h (remove_path): Add irred_invalidated and loop_closed_ssa_invalidated parameters, defaulted to NULL. * cfgloopmanip.c (remove_path): Likewise, pass them along to called functions. Only fix irred flags if the caller didn't request state. * tree-ssa-loop-ivcanon.c (unloop_loops): Use add_bb_to_loop. (unloop_loops): Pass irred_invalidated and loop_closed_ssa_invalidated to remove_path. * gcc.dg/torture/pr71595.c: New testcase. From-SVN: r242835
Diffstat (limited to 'gcc/cfgloopmanip.h')
-rw-r--r--gcc/cfgloopmanip.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/cfgloopmanip.h b/gcc/cfgloopmanip.h
index 0e7dc7aa617..5c4552c5c43 100644
--- a/gcc/cfgloopmanip.h
+++ b/gcc/cfgloopmanip.h
@@ -34,7 +34,7 @@ enum
a complete peeling. */
extern edge mfb_kj_edge;
-extern bool remove_path (edge);
+extern bool remove_path (edge, bool * = NULL, bitmap = NULL);
extern void place_new_loop (struct function *, struct loop *);
extern void add_loop (struct loop *, struct loop *);
extern void scale_loop_frequencies (struct loop *, int, int);