Backported from mainline
2017-02-21 Jakub Jelinek <jakub@redhat.com>
PR target/79570
* sel-sched.c (moveup_expr_cached): Don't call sel_bb_head
on temporarily removed DEBUG_INSNs.
* gcc.dg/pr79570.c: New test.
From-SVN: r248649
Backported from mainline
2017-02-21 Jakub Jelinek <jakub@redhat.com>
+ PR target/79570
+ * sel-sched.c (moveup_expr_cached): Don't call sel_bb_head
+ on temporarily removed DEBUG_INSNs.
+
PR target/79494
* config/i386/i386.c (ix86_expand_split_stack_prologue): Call
make_reg_eh_region_note_nothrow_nononlocal on call_insn.
}
if (DEBUG_INSN_P (EXPR_INSN_RTX (expr))
+ && BLOCK_FOR_INSN (EXPR_INSN_RTX (expr))
&& (sel_bb_head (BLOCK_FOR_INSN (EXPR_INSN_RTX (expr)))
== EXPR_INSN_RTX (expr)))
/* Don't use cached information for debug insns that are heads of
Backported from mainline
2017-02-21 Jakub Jelinek <jakub@redhat.com>
+ PR target/79570
+ * gcc.dg/pr79570.c: New test.
+
PR c++/79641
* c-c++-common/pr79641.c: New test.
--- /dev/null
+/* PR target/79570 */
+/* { dg-do compile { target powerpc*-*-* ia64-*-* i?86-*-* x86_64-*-* } } */
+/* { dg-options "-O2 -fselective-scheduling2 -fvar-tracking-assignments" } */
+/* { dg-warning "changes selective scheduling" "" { target *-*-* } 0 } */
+
+void
+fn1 (char *b, char *d, int *c, int i)
+{
+ for (; i; i++, d++)
+ if (b[i])
+ *d = c[i];
+}