diff options
author | David S. Miller <davem@redhat.com> | 2002-05-23 08:22:05 -0700 |
---|---|---|
committer | David S. Miller <davem@gcc.gnu.org> | 2002-05-23 08:22:05 -0700 |
commit | 9547983155087b81454e9149ad37c2945f8137b9 (patch) | |
tree | 40fccab8e687849f2b4ac8156c613c1dd0531a4a /gcc/cfgcleanup.c | |
parent | a97d1398381199317a5627d7a24e407284ef1e2e (diff) | |
download | gcc-9547983155087b81454e9149ad37c2945f8137b9.zip gcc-9547983155087b81454e9149ad37c2945f8137b9.tar.gz gcc-9547983155087b81454e9149ad37c2945f8137b9.tar.bz2 |
basic-block.h (CLEANUP_NO_INSN_DEL): Define it.
2002-05-23 David S. Miller <davem@redhat.com>
* basic-block.h (CLEANUP_NO_INSN_DEL): Define it.
* cfgcleanup.c (cleanup_cfg): If it is set do not
attempt to delete trivially dead insns.
* except.c (finish_eh_generation): Pass it to cleanup_cfg.
* toplev.c (rest_of_compilation): Document non-trivial aspect
the RTL before optimize_save_area_alloca is run.
From-SVN: r53789
Diffstat (limited to 'gcc/cfgcleanup.c')
-rw-r--r-- | gcc/cfgcleanup.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/cfgcleanup.c b/gcc/cfgcleanup.c index d5f6de1..1e4056a 100644 --- a/gcc/cfgcleanup.c +++ b/gcc/cfgcleanup.c @@ -1800,7 +1800,8 @@ cleanup_cfg (mode) changed = true; /* We've possibly created trivially dead code. Cleanup it right now to introduce more oppurtunities for try_optimize_cfg. */ - if (!(mode & (CLEANUP_UPDATE_LIFE | CLEANUP_PRE_SIBCALL)) + if (!(mode & (CLEANUP_NO_INSN_DEL + | CLEANUP_UPDATE_LIFE | CLEANUP_PRE_SIBCALL)) && !reload_completed) delete_trivially_dead_insns (get_insns(), max_reg_num ()); } @@ -1819,7 +1820,8 @@ cleanup_cfg (mode) | PROP_LOG_LINKS)) break; } - else if (!(mode & CLEANUP_PRE_SIBCALL) && !reload_completed) + else if (!(mode & (CLEANUP_NO_INSN_DEL | CLEANUP_PRE_SIBCALL)) + && !reload_completed) { if (!delete_trivially_dead_insns (get_insns(), max_reg_num ())) break; |