diff options
| -rw-r--r-- | optimize.c | 4 | ||||
| -rw-r--r-- | validation/optim/dup-cond0.c | 1 | ||||
| -rw-r--r-- | validation/optim/phi-ret.c | 1 |
3 files changed, 4 insertions, 2 deletions
@@ -80,6 +80,8 @@ repeat: simplify_memops(ep); } while (repeat_phase & REPEAT_CSE); pack_basic_blocks(ep); + if (repeat_phase & REPEAT_CFG_CLEANUP) + kill_unreachable_bbs(ep); } while (repeat_phase & REPEAT_CSE); kill_unreachable_bbs(ep); @@ -99,6 +101,8 @@ repeat: */ if (simplify_flow(ep)) { clear_liveness(ep); + if (repeat_phase & REPEAT_CFG_CLEANUP) + kill_unreachable_bbs(ep); goto repeat; } diff --git a/validation/optim/dup-cond0.c b/validation/optim/dup-cond0.c index dc4991cb..0525250c 100644 --- a/validation/optim/dup-cond0.c +++ b/validation/optim/dup-cond0.c @@ -13,7 +13,6 @@ static int foo(struct s *s) /* * check-name: dup-cond0 * check-command: test-linearize -Wno-decl $file - * check-known-to-fail * * check-output-ignore * check-output-contains: select diff --git a/validation/optim/phi-ret.c b/validation/optim/phi-ret.c index 204366a9..bc3e0474 100644 --- a/validation/optim/phi-ret.c +++ b/validation/optim/phi-ret.c @@ -15,7 +15,6 @@ int foo(int p, int q, int v) /* * check-name: phi-ret * check-command: test-linearize -Wno-decl $file - * check-known-to-fail * * check-output-ignore * check-output-excludes: phi\\. |
