diff options
author | Alexander Monakov <amonakov@ispras.ru> | 2018-04-12 18:40:44 +0300 |
---|---|---|
committer | Alexander Monakov <amonakov@gcc.gnu.org> | 2018-04-12 18:40:44 +0300 |
commit | 01496707301d09bfb32d03e7cbabef0d7ee032d7 (patch) | |
tree | ee77419c27cac68192e811e730bb2a113f8e4350 /gcc/sel-sched.c | |
parent | dc0e0c6b2e70e9d2b3bbf02664b3f5a670c5c2be (diff) | |
download | gcc-01496707301d09bfb32d03e7cbabef0d7ee032d7.zip gcc-01496707301d09bfb32d03e7cbabef0d7ee032d7.tar.gz gcc-01496707301d09bfb32d03e7cbabef0d7ee032d7.tar.bz2 |
sel-sched: move cleanup_cfg before calculate_dominance_info (PR 85354)
PR rtl-optimization/85354
* sel-sched-ir.c (sel_init_pipelining): Move cfg_cleanup call...
* sel-sched.c (sel_global_init): ... here.
From-SVN: r259348
Diffstat (limited to 'gcc/sel-sched.c')
-rw-r--r-- | gcc/sel-sched.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/sel-sched.c b/gcc/sel-sched.c index cd29df3..5976296 100644 --- a/gcc/sel-sched.c +++ b/gcc/sel-sched.c @@ -28,6 +28,7 @@ along with GCC; see the file COPYING3. If not see #include "tm_p.h" #include "regs.h" #include "cfgbuild.h" +#include "cfgcleanup.h" #include "insn-config.h" #include "insn-attr.h" #include "params.h" @@ -7661,6 +7662,10 @@ sel_sched_region (int rgn) static void sel_global_init (void) { + /* Remove empty blocks: their presence can break assumptions elsewhere, + e.g. the logic to invoke update_liveness_on_insn in sel_region_init. */ + cleanup_cfg (0); + calculate_dominance_info (CDI_DOMINATORS); alloc_sched_pools (); |