+2009-04-03 Roland McGrath <roland@redhat.com>
+
+ * libdwP.h (IDX_eh_frame): Remove it.
+ * dwarf_begin_elf.c (dwarf_scnnames): Remove its element.
+
2009-04-01 Roland McGrath <roland@redhat.com>
* dwarf.h: Add DW_CFA_GNU_negative_offset_extended.
/* Create descriptor from ELF descriptor for processing file.
- Copyright (C) 2002, 2003, 2004, 2005, 2007 Red Hat, Inc.
+ Copyright (C) 2002, 2003, 2004, 2005, 2007, 2009 Red Hat, Inc.
This file is part of Red Hat elfutils.
Written by Ulrich Drepper <drepper@redhat.com>, 2002.
[IDX_debug_aranges] = ".debug_aranges",
[IDX_debug_line] = ".debug_line",
[IDX_debug_frame] = ".debug_frame",
- [IDX_eh_frame] = ".eh_frame",
[IDX_debug_loc] = ".debug_loc",
[IDX_debug_pubnames] = ".debug_pubnames",
[IDX_debug_str] = ".debug_str",
if (dbg == NULL)
return NULL;
- if (dbg->cfi == NULL && (dbg->sectiondata[IDX_debug_frame] != NULL
- || dbg->sectiondata[IDX_eh_frame] != NULL))
+ if (dbg->cfi == NULL && dbg->sectiondata[IDX_debug_frame] != NULL)
{
Dwarf_CFI *cfi = libdw_typed_alloc (dbg, Dwarf_CFI);
- cfi->eh_frame = dbg->sectiondata[IDX_debug_frame] == NULL;
- cfi->data = (Elf_Data_Scn *) dbg->sectiondata[cfi->eh_frame ? IDX_eh_frame
- : IDX_debug_frame];
+ cfi->eh_frame = false;
+ cfi->data = (Elf_Data_Scn *) dbg->sectiondata[IDX_debug_frame];
cfi->search_table = NULL;
cfi->search_table_vaddr = 0;
cfi->frame_vaddr = 0;
cfi->textrel = 0;
cfi->datarel = 0;
- if (cfi->eh_frame)
- cfi->frame_vaddr = -1; // XXX .eh_frame sh_addr
cfi->e_ident = (unsigned char *) elf_getident (dbg->elf, NULL);
cfi->other_byte_order = dbg->other_byte_order;
IDX_debug_aranges,
IDX_debug_line,
IDX_debug_frame,
- IDX_eh_frame,
IDX_debug_loc,
IDX_debug_pubnames,
IDX_debug_str,
/* Opaque type representing a CFI section found in a DWARF or ELF file. */
typedef struct Dwarf_CFI_s Dwarf_CFI;
-/* Use the CFI in the DWARF .debug_frame or .eh_frame section.
- Returns NULL if there is no such section.
+/* Use the CFI in the DWARF .debug_frame section.
+ Returns NULL if there is no such section (not an error).
The pointer returned can be used until dwarf_end is called on DWARF,
and must not be passed to dwarf_cfi_end.
Calling this more than once returns the same pointer. */