mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-30 00:52:16 +08:00
Yet another fix for -falign-loops problems.
* config/tc-ia64.c (ia64_flush_insns): In addition to prologue, body, and endp, allow unwind records which do not have a "t" (time/instruction) field.
This commit is contained in:
@ -1,3 +1,9 @@
|
|||||||
|
2004-02-18 David Mosberger <davidm@hpl.hp.com>
|
||||||
|
|
||||||
|
* config/tc-ia64.c (ia64_flush_insns): In addition to prologue,
|
||||||
|
body, and endp, allow unwind records which do not have a "t"
|
||||||
|
(time/instruction) field.
|
||||||
|
|
||||||
2004-02-17 Petko Manolov <petkan@nucleusys.com>
|
2004-02-17 Petko Manolov <petkan@nucleusys.com>
|
||||||
|
|
||||||
* config/tc-arm.c (do_mav_dspsc_1): Correct offset of CRn.
|
* config/tc-arm.c (do_mav_dspsc_1): Correct offset of CRn.
|
||||||
|
@ -1092,14 +1092,36 @@ ia64_flush_insns ()
|
|||||||
here. Give an error for others. */
|
here. Give an error for others. */
|
||||||
for (ptr = unwind.current_entry; ptr; ptr = ptr->next)
|
for (ptr = unwind.current_entry; ptr; ptr = ptr->next)
|
||||||
{
|
{
|
||||||
if (ptr->r.type == prologue || ptr->r.type == prologue_gr
|
switch (ptr->r.type)
|
||||||
|| ptr->r.type == body || ptr->r.type == endp)
|
|
||||||
{
|
{
|
||||||
|
case prologue:
|
||||||
|
case prologue_gr:
|
||||||
|
case body:
|
||||||
|
case endp:
|
||||||
ptr->slot_number = (unsigned long) frag_more (0);
|
ptr->slot_number = (unsigned long) frag_more (0);
|
||||||
ptr->slot_frag = frag_now;
|
ptr->slot_frag = frag_now;
|
||||||
|
break;
|
||||||
|
|
||||||
|
/* Allow any record which doesn't have a "t" field (i.e.,
|
||||||
|
doesn't relate to a particular instruction). */
|
||||||
|
case unwabi:
|
||||||
|
case br_gr:
|
||||||
|
case copy_state:
|
||||||
|
case fr_mem:
|
||||||
|
case frgr_mem:
|
||||||
|
case gr_gr:
|
||||||
|
case gr_mem:
|
||||||
|
case label_state:
|
||||||
|
case rp_br:
|
||||||
|
case spill_base:
|
||||||
|
case spill_mask:
|
||||||
|
/* nothing */
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
as_bad (_("Unwind directive not followed by an instruction."));
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
else
|
|
||||||
as_bad (_("Unwind directive not followed by an instruction."));
|
|
||||||
}
|
}
|
||||||
unwind.current_entry = NULL;
|
unwind.current_entry = NULL;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user