diff options
author | rakdver <rakdver@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-07-18 22:52:05 +0000 |
---|---|---|
committer | rakdver <rakdver@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-07-18 22:52:05 +0000 |
commit | 7f42fe2449eeb85253e771f44f8f2a47be961d72 (patch) | |
tree | 97345dfea977f820d999cfa91b9565f89057e6f7 /gcc/cfgrtl.c | |
parent | 4e4ff25cca81ca35d333e94016289468eddcd555 (diff) | |
download | gcc-7f42fe2449eeb85253e771f44f8f2a47be961d72.tar.gz |
* Makefile.in (ifcvt.o): Add cfgloop.h.
* basic-block.h (EDGE_LOOP_EXIT): New flag.
* cfgrtl.c (rtl_verify_flow_info_1): Handle it correctly.
* ifcvt.c: Include cfgloop.h.
(mark_loop_exit_edges): New static function.
(if_convert): Call it.
(find_if_header): Ignore branches out of loops.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@69572 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cfgrtl.c')
-rw-r--r-- | gcc/cfgrtl.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/cfgrtl.c b/gcc/cfgrtl.c index 903f57eac3f..da629cb4e46 100644 --- a/gcc/cfgrtl.c +++ b/gcc/cfgrtl.c @@ -1907,7 +1907,10 @@ rtl_verify_flow_info_1 (void) if (e->flags & EDGE_FALLTHRU) n_fallthru++, fallthru = e; - if ((e->flags & ~(EDGE_DFS_BACK | EDGE_CAN_FALLTHRU | EDGE_IRREDUCIBLE_LOOP)) == 0) + if ((e->flags & ~(EDGE_DFS_BACK + | EDGE_CAN_FALLTHRU + | EDGE_IRREDUCIBLE_LOOP + | EDGE_LOOP_EXIT)) == 0) n_branch++; if (e->flags & EDGE_ABNORMAL_CALL) |