DWARF_GET_CIE_INFO(3) Library Functions Manual SourceForge Logo

NAME

dwarf_get_cie_inforetrieve information associated with a CIE descriptor

LIBRARY

DWARF Access Library (libdwarf, -ldwarf)

SYNOPSIS

#include <libdwarf.h>
int
dwarf_get_cie_info(Dwarf_Cie cie, Dwarf_Unsigned *cie_byte_len, Dwarf_Small *version, char **augmentation, Dwarf_Unsigned *caf, Dwarf_Unsigned *daf, Dwarf_Half *ra, Dwarf_Ptr *init_inst, Dwarf_Unsigned *inst_len, Dwarf_Error *err);

DESCRIPTION

Function dwarf_get_cie_info() retrieves the information associated with a given CIE descriptor.
Argument cie should reference a valid DWARF CIE descriptor, such as would be returned by function dwarf_get_cie_of_fde(3).
Argument cie_byte_len should point to a location that will hold the length in bytes of the CIE descriptor itself.
Argument version should point to a location that will hold the version number of the CIE descriptor.
Arugment augmentation should point to a location that will be set to a pointer to a NUL-terminated string containing augmentation data encoded as UTF-8.
Argument caf should point to a location that will hold the code alignment factor recorded in the CIE descriptor.
Arugment daf should point to a location that will hold the data alignment factor recorded in the CIE descriptor.
Argument ra should point to a location that will hold the return address recorded in the CIE descriptor.
Argument init_inst should point to a location that will be set to a pointer to an array of bytes containing the initial instructions associated with the CIE descriptor.
Argument inst_len should point to a location that will hold the length in bytes of the initial instructions returned in argument init_inst.
If argument err is not NULL, it will be used to store error information in case of an error.

RETURN VALUES

Function dwarf_get_cie_info() returns DW_DLV_OK when it succeeds. In case of an error, it returns DW_DLV_ERROR and sets the argument err.

ERRORS

Function dwarf_get_cie_info() can fail with:
 
 
[DW_DLE_ARGUMENT]
One of the arguments cie, cie_byte_len, version, augmentation, caf, daf, ra, init_inst or inst_len was NULL.

SEE ALSO

dwarf(3), dwarf_get_cie_index(3), dwarf_get_cie_of_fde(3), dwarf_get_fde_at_pc(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)
May 29, 2011 The Elftoolchain Project