aboutsummaryrefslogtreecommitdiff
path: root/gcc/ifcvt.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2016-01-12 14:19:49 +0100
committerJakub Jelinek <jakub@gcc.gnu.org>2016-01-12 14:19:49 +0100
commit5664cea1cd17a11eacb3f33d53547687c19c1ade (patch)
tree1cf5d8560b9863956ac09c4cf231554d24f378ab /gcc/ifcvt.c
parent5cc2af593f43d240161fd98cfbc1a06fc9bb96fa (diff)
downloadgcc-5664cea1cd17a11eacb3f33d53547687c19c1ade.zip
gcc-5664cea1cd17a11eacb3f33d53547687c19c1ade.tar.gz
gcc-5664cea1cd17a11eacb3f33d53547687c19c1ade.tar.bz2
re PR target/69175 (ICE in haifa_luid_for_non_insn, at haifa-sched.c:7895)
PR target/69175 * ifcvt.c (cond_exec_process_if_block): When removing the last insn from then_bb, remove also any possible barriers that follow it. * g++.dg/opt/pr69175.C: New test. From-SVN: r232267
Diffstat (limited to 'gcc/ifcvt.c')
-rw-r--r--gcc/ifcvt.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/ifcvt.c b/gcc/ifcvt.c
index 7d94e75..ec6c3de 100644
--- a/gcc/ifcvt.c
+++ b/gcc/ifcvt.c
@@ -740,7 +740,7 @@ cond_exec_process_if_block (ce_if_block * ce_info,
rtx_insn *from = then_first_tail;
if (!INSN_P (from))
from = find_active_insn_after (then_bb, from);
- delete_insn_chain (from, BB_END (then_bb), false);
+ delete_insn_chain (from, get_last_bb_insn (then_bb), false);
}
if (else_last_head)
delete_insn_chain (first_active_insn (else_bb), else_last_head, false);