+2014-11-11 Eric Botcazou <ebotcazou@adacore.com>
+
+ * reorg.c (fill_slots_from_thread): Do not copy frame-related insns.
+
2014-11-11 Eric Botcazou <ebotcazou@adacore.com>
PR target/61535
/* There are two ways we can win: If TRIAL doesn't set anything
needed at the opposite thread and can't trap, or if it can
- go into an annulled delay slot. */
+ go into an annulled delay slot. But we want neither to copy
+ nor to speculate frame-related insns. */
if (!must_annul
- && (condition == const_true_rtx
+ && ((condition == const_true_rtx
+ && (own_thread || !RTX_FRAME_RELATED_P (trial)))
|| (! insn_sets_resource_p (trial, &opposite_needed, true)
&& ! may_trap_or_fault_p (pat)
&& ! RTX_FRAME_RELATED_P (trial))))