diff options
author | Richard Biener <rguenther@suse.de> | 2014-09-05 13:04:40 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2014-09-05 13:04:40 +0000 |
commit | e4ca2139f2fd864316e6fd4e76dea933c67621ab (patch) | |
tree | 90b86e5c02c302902763114e914e357c26422e94 /gcc/cfgloop.h | |
parent | c3212d53df65a17e11cdd9917e433f5b94b37174 (diff) | |
download | gcc-e4ca2139f2fd864316e6fd4e76dea933c67621ab.zip gcc-e4ca2139f2fd864316e6fd4e76dea933c67621ab.tar.gz gcc-e4ca2139f2fd864316e6fd4e76dea933c67621ab.tar.bz2 |
cfgloop.c (mark_loop_for_removal): Record former header when ENABLE_CHECKING.
2014-09-05 Richard Biener <rguenther@suse.de>
* cfgloop.c (mark_loop_for_removal): Record former header
when ENABLE_CHECKING.
* cfgloop.h (strut loop): Add former_header member when
ENABLE_CHECKING.
* loop-init.c (fix_loop_structure): Sanity check loops
marked for removal if they re-appeared.
From-SVN: r214957
Diffstat (limited to 'gcc/cfgloop.h')
-rw-r--r-- | gcc/cfgloop.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/cfgloop.h b/gcc/cfgloop.h index e868f5d..d62a415 100644 --- a/gcc/cfgloop.h +++ b/gcc/cfgloop.h @@ -193,6 +193,14 @@ struct GTY ((chain_next ("%h.next"))) loop { /* Number of iteration analysis data for RTL. */ struct niter_desc *simple_loop_desc; + +#ifdef ENABLE_CHECKING + /* For sanity checking during loop fixup we record here the former + loop header for loops marked for removal. Note that this prevents + the basic-block from being collected but its index can still be + reused. */ + basic_block former_header; +#endif }; /* Flags for state of loop structure. */ |