diff options
Diffstat (limited to 'gcc/cfgexpand.c')
-rw-r--r-- | gcc/cfgexpand.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c index 3e1d24d..c9d8118 100644 --- a/gcc/cfgexpand.c +++ b/gcc/cfgexpand.c @@ -6480,6 +6480,11 @@ pass_expand::execute (function *fun) if (fun->eh->region_tree != NULL) finish_eh_generation (); + /* BB subdivision may have created basic blocks that are are only reachable + from unlikely bbs but not marked as such in the profile. */ + if (optimize) + propagate_unlikely_bbs_forward (); + /* Remove unreachable blocks, otherwise we cannot compute dominators which are needed for loop state verification. As a side-effect this also compacts blocks. |