diff options
author | amonakov <amonakov@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-12-24 14:19:23 +0000 |
---|---|---|
committer | amonakov <amonakov@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-12-24 14:19:23 +0000 |
commit | afd14b632516314fcc5392f234755b0d4010451e (patch) | |
tree | b24772c1516cd7beda2445712e3eb95b215c1519 /gcc/sel-sched.c | |
parent | b9dab37be7e38478a8c2768bb15dc78cdb38d312 (diff) |
PR rtl-optimization/47036
* sel-sched-ir.c (fallthru_bb_of_jump): Remove special support for
unconditional jumps.
* sel-sched.c (moveup_expr): Ditto.
testsuite:
* g++.dg/opt/pr47036.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168225 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/sel-sched.c')
-rw-r--r-- | gcc/sel-sched.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/gcc/sel-sched.c b/gcc/sel-sched.c index edd6cb9d3cd..791adf1f6a8 100644 --- a/gcc/sel-sched.c +++ b/gcc/sel-sched.c @@ -2171,10 +2171,8 @@ moveup_expr (expr_t expr, insn_t through_insn, bool inside_insn_group, || ! in_current_region_p (fallthru_bb)) return MOVEUP_EXPR_NULL; - /* And it should be mutually exclusive with through_insn, or - be an unconditional jump. */ - if (! any_uncondjump_p (insn) - && ! sched_insns_conditions_mutex_p (insn, through_insn) + /* And it should be mutually exclusive with through_insn. */ + if (! sched_insns_conditions_mutex_p (insn, through_insn) && ! DEBUG_INSN_P (through_insn)) return MOVEUP_EXPR_NULL; } |