Message ID | 201205122331.30570.ebotcazou@adacore.com |
---|---|
State | New |
Headers | show |
Index: function.c =================================================================== --- function.c (revision 187393) +++ function.c (working copy) @@ -5316,6 +5316,10 @@ requires_stack_frame_p (rtx insn, HARD_R if (CALL_P (insn)) return !SIBLING_CALL_P (insn); + /* We need a frame to get the unique CFA expected by the unwinder. */ + if (cfun->can_throw_non_call_exceptions && can_throw_internal (insn)) + return true; + CLEAR_HARD_REG_SET (hardregs); for (df_rec = DF_INSN_DEFS (insn); *df_rec; df_rec++) {