diff options
Diffstat (limited to 'gcc-4.9/gcc/cfgloop.c')
-rw-r--r-- | gcc-4.9/gcc/cfgloop.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/gcc-4.9/gcc/cfgloop.c b/gcc-4.9/gcc/cfgloop.c index e4b60f5d8..a23840585 100644 --- a/gcc-4.9/gcc/cfgloop.c +++ b/gcc-4.9/gcc/cfgloop.c @@ -1994,3 +1994,16 @@ bb_loop_depth (const_basic_block bb) { return bb->loop_father ? loop_depth (bb->loop_father) : 0; } + +/* Marks LOOP for removal and sets LOOPS_NEED_FIXUP. */ + +void +mark_loop_for_removal (loop_p loop) +{ + if (loop->header == NULL) + return; + loop->former_header = loop->header; + loop->header = NULL; + loop->latch = NULL; + loops_state_set (LOOPS_NEED_FIXUP); +} |