mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-23 19:50:13 +08:00
* dw2gencfi.c (select_cie_for_fde): When separating CIE out
from FDE, treat a CFI_escape as we do a DW_CFA_advance_loc.
This commit is contained in:
@ -1,3 +1,8 @@
|
|||||||
|
2004-09-09 Alan Modra <amodra@bigpond.net.au>
|
||||||
|
|
||||||
|
* dw2gencfi.c (select_cie_for_fde): When separating CIE out
|
||||||
|
from FDE, treat a CFI_escape as we do a DW_CFA_advance_loc.
|
||||||
|
|
||||||
2004-09-08 Paul Brook <paul@codesourcery.com>
|
2004-09-08 Paul Brook <paul@codesourcery.com>
|
||||||
|
|
||||||
* config/obj-elf.c (obj_elf_section_type): Handle init_array,
|
* config/obj-elf.c (obj_elf_section_type): Handle init_array,
|
||||||
|
@ -975,8 +975,12 @@ select_cie_for_fde (struct fde_entry *fde, struct cfi_insn_data **pfirst)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Success if we reached the end of the CIE list, and we've either
|
/* Success if we reached the end of the CIE list, and we've either
|
||||||
run out of FDE entries or we've encountered an advance. */
|
run out of FDE entries or we've encountered an advance or
|
||||||
if (i == cie->last && (!j || j->insn == DW_CFA_advance_loc))
|
escape. */
|
||||||
|
if (i == cie->last
|
||||||
|
&& (!j
|
||||||
|
|| j->insn == DW_CFA_advance_loc
|
||||||
|
|| j->insn == CFI_escape))
|
||||||
{
|
{
|
||||||
*pfirst = j;
|
*pfirst = j;
|
||||||
return cie;
|
return cie;
|
||||||
@ -992,7 +996,8 @@ select_cie_for_fde (struct fde_entry *fde, struct cfi_insn_data **pfirst)
|
|||||||
cie->first = fde->data;
|
cie->first = fde->data;
|
||||||
|
|
||||||
for (i = cie->first; i ; i = i->next)
|
for (i = cie->first; i ; i = i->next)
|
||||||
if (i->insn == DW_CFA_advance_loc)
|
if (i->insn == DW_CFA_advance_loc
|
||||||
|
|| i->insn == CFI_escape)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
cie->last = i;
|
cie->last = i;
|
||||||
|
Reference in New Issue
Block a user