DWARF_ADD_FRAME_CIE(3)

NAME
dwarf_add_frame_cie - add a call frame common information entry to a DWARF producer instance

LIBRARY
libdwarf

SYNOPSIS
#include <libdwarf.h>
Dwarf_Unsigned
dwarf_add_frame_cie(Dwarf_P_Debug dbg, char *augmenter, Dwarf_Small caf, Dwarf_Small daf, Dwarf_Small ra, Dwarf_Ptr initinst, Dwarf_Unsigned initlen, Dwarf_Error *err);

DESCRIPTION
Function dwarf_add_frame_cie() adds a DWARF call frame common information entry (CIE) to a producer instance.

Argument dbg should reference a DWARF producer instance allocated using dwarf_producer_init(3) or dwarf_producer_init_b(3).

Argument augmenter should point to a NUL-terminated augmentation string for the common information entry.

Argument caf specifies the code alignment factor.

Argument daf specifies the data alignment factor.

Argument ra specifies the column number used for the return address register.

Argument initinst should point to a byte stream containing the initial instructions for the common information entry.

Argument initlen should hold the length in bytes of the byte stream pointed to by argument initinst.

If argument err is not NULL, it will be used to store error information in case of an error.

RETURN VALUES
On success, function dwarf_add_frame_cie() returns the index value of the created common information entry. In case of an error, function dwarf_add_frame_cie() returns DW_DLV_NOCOUNT and sets the argument err.

ERRORS
Function dwarf_add_frame_cie() can fail with:

[DW_DLE_ARGUMENT]
    Argument dbg was NULL.

[DW_DLE_MEMORY]
    An out of memory condition was encountered during the execution of the function.

SEE ALSO
dwarf(3), dwarf_add_fde_inst(3), dwarf_add_frame_fde(3), dwarf_add_frame_fde_b(3), dwarf_fde_cfa_offset(3), dwarf_new_fde(3), dwarf_producer_init(3), dwarf_producer_init_b(3)