libdwarf
Extracting fde, cie lists.

Example Opening FDE and CIE lists.

*/
int exampleq(Dwarf_Debug dbg,Dwarf_Error *error)
{
Dwarf_Cie *cie_data = 0;
Dwarf_Signed cie_count = 0;
Dwarf_Fde *fde_data = 0;
Dwarf_Signed fde_count = 0;
int fres = 0;
fres = dwarf_get_fde_list(dbg,&cie_data,&cie_count,
&fde_data,&fde_count,error);
if (fres != DW_DLV_OK) {
return fres;
}
/* Do something with the lists*/
dwarf_dealloc_fde_cie_list(dbg, cie_data, cie_count,
fde_data,fde_count);
return fres;
}
struct Dwarf_Fde_s * Dwarf_Fde
Definition: libdwarf.h:654
struct Dwarf_Debug_s * Dwarf_Debug
Definition: libdwarf.h:586
struct Dwarf_Error_s * Dwarf_Error
Definition: libdwarf.h:580
struct Dwarf_Cie_s * Dwarf_Cie
Definition: libdwarf.h:659
signed long long Dwarf_Signed
Definition: libdwarf.h:197
void dwarf_dealloc_fde_cie_list(Dwarf_Debug dw_dbg, Dwarf_Cie *dw_cie_data, Dwarf_Signed dw_cie_element_count, Dwarf_Fde *dw_fde_data, Dwarf_Signed dw_fde_element_count)
Release storage associated with FDE and CIE arrays.
int dwarf_get_fde_list(Dwarf_Debug dw_dbg, Dwarf_Cie **dw_cie_data, Dwarf_Signed *dw_cie_element_count, Dwarf_Fde **dw_fde_data, Dwarf_Signed *dw_fde_element_count, Dwarf_Error *dw_error)
Get lists of .debug_frame FDEs and CIEs.