mirror of
https://github.com/autc04/Retro68.git
synced 2024-11-23 15:32:26 +00:00
remove one more assert from expr.c:fixup_args_size_notes which got tripped by earlier hacks.
This commit is contained in:
parent
aa1c71d17e
commit
025ebb6397
@ -3975,15 +3975,29 @@ fixup_args_size_notes (rtx prev, rtx last, int end_args_size)
|
|||||||
continue;
|
continue;
|
||||||
|
|
||||||
this_delta = find_args_size_adjust (insn);
|
this_delta = find_args_size_adjust (insn);
|
||||||
/* if (this_delta == 0)
|
|
||||||
|
/* **** HALF-UNDERSTOOD HACK:
|
||||||
|
|
||||||
|
The original code here leaves out REG_ARGS_SIZE annotations for
|
||||||
|
instructions that don't adjust the stack under some circumstances.
|
||||||
|
|
||||||
|
In some situations, involving both m68k mac pascal functions
|
||||||
|
and exception handling, this leads to a failure in dwarf2cfi.c:combine_traces.
|
||||||
|
|
||||||
|
Disabling the if (this_delta == 0) fixes this, but causes the subsequent gcc_assert
|
||||||
|
to trip sometimes. Disabling both hasn't caused any observable problems... YET.
|
||||||
|
|
||||||
|
if (this_delta == 0)
|
||||||
{
|
{
|
||||||
if (!CALL_P (insn)
|
if (!CALL_P (insn)
|
||||||
|| ACCUMULATE_OUTGOING_ARGS
|
|| ACCUMULATE_OUTGOING_ARGS
|
||||||
|| find_reg_note (insn, REG_NORETURN, NULL_RTX) == NULL_RTX)
|
|| find_reg_note (insn, REG_NORETURN, NULL_RTX) == NULL_RTX)
|
||||||
continue;
|
continue;
|
||||||
}*/
|
}
|
||||||
|
|
||||||
gcc_assert (!saw_unknown);
|
gcc_assert (!saw_unknown);
|
||||||
|
|
||||||
|
*/
|
||||||
if (this_delta == HOST_WIDE_INT_MIN)
|
if (this_delta == HOST_WIDE_INT_MIN)
|
||||||
saw_unknown = true;
|
saw_unknown = true;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user