NAME
dwarf_get_fde_at_pc —
retrieve the FDE
descriptor for an address
LIBRARY
DWARF Access Library (libdwarf, -ldwarf)
SYNOPSIS
#include <libdwarf.h>
int
dwarf_get_fde_at_pc(
Dwarf_Fde *fdelist,
Dwarf_Addr pc,
Dwarf_Fde *ret_fde,
Dwarf_Addr *lopc,
Dwarf_Addr
*hipc,
Dwarf_Error *err);
DESCRIPTION
Function
dwarf_get_fde_at_pc() searches the provided array of
DWARF FDE descriptors for a descriptor covering a given program counter
address.
Argument
fdelist should point to an array of FDE
descriptors, as returned by the functions
dwarf_get_fde_list(3)
or
dwarf_get_fde_list_eh(3).
Argument
pc should contain the program counter address
being looked up.
Argument
ret_fde should point to a location that will hold
the returned FDE descriptor.
Argument
lopc should point to a location that will be set
to the lowest address covered by the returned FDE descriptor.
Argument
hipc should point to a location that will be set
to the highest address covered by the returned FDE descriptor.
If argument
err is not NULL, it will be used to store
error information in case of an error.
RETURN VALUES
Function
dwarf_get_fde_at_pc() returns
DW_DLV_OK
when it succeeds. It returns
DW_DLV_NO_ENTRY
if a FDE descriptor that covers the
address specified by argument
pc is not found. In case
of an error, it returns
DW_DLV_ERROR
and sets the
argument
err.
ERRORS
Function
dwarf_get_fde_at_pc() can fail with:
-
-
- [
DW_DLE_ARGUMENT
]
- One of the arguments fdelist,
ret_fde, lopc, or
hipc was NULL.
-
-
- [
DW_DLE_NO_ENTRY
]
- These was no FDE descriptor covering the address specified
by argument pc.
SEE ALSO
dwarf(3),
dwarf_get_cie_of_fde(3),
dwarf_get_fde_info_for_all_regs(3),
dwarf_get_fde_info_for_all_regs3(3),
dwarf_get_fde_info_for_cfa_reg3(3),
dwarf_get_fde_info_for_reg(3),
dwarf_get_fde_info_for_reg3(3),
dwarf_get_fde_instr_bytes(3),
dwarf_get_fde_list(3),
dwarf_get_fde_list_eh(3),
dwarf_get_fde_n(3),
dwarf_get_fde_range(3)