DWARF_ADD_FRAME_CIE(3)

DWARF_ADD_FRAME_CIE(3) | Library Functions Manual | DWARF_ADD_FRAME_CIE(3)

# NAME

`dwarf_add_frame_cie` —
add a call frame common information entry to a DWARF producer instance

# LIBRARY

DWARF Access Library (libdwarf, -ldwarf)

# 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)

September 26, 2011 | NetBSD 9.3