DWARF_SET_FRAME_CFA_VALUE(3)

DWARF_SET_FRAME_CFA_VALUE(3) | Library Functions Manual | DWARF_SET_FRAME_CFA_VALUE(3)

# NAME

dwarf_set_frame_cfa_value, dwarf_set_frame_rule_initial_value, dwarf_set_frame_rule_table_size, dwarf_set_frame_same_value, dwarf_set_frame_undefined_value — set internal register rule table parameters

# LIBRARY

DWARF Access Library (libdwarf, -ldwarf)

# SYNOPSIS

#include <libdwarf.h>
Dwarf_Half
dwarf_set_frame_cfa_value(Dwarf_Debug dbg, Dwarf_Half value);
Dwarf_Half
dwarf_set_frame_rule_initial_value(Dwarf_Debug dbg, Dwarf_Half value);
Dwarf_Half
dwarf_set_frame_rule_table_size(Dwarf_Debug dbg, Dwarf_Half value);
Dwarf_Half
dwarf_set_frame_same_value(Dwarf_Debug dbg, Dwarf_Half value);
Dwarf_Half
dwarf_set_frame_undefined_value(Dwarf_Debug dbg, Dwarf_Half value);

# DESCRIPTION

These functions set the parameters of the internal register rule table.
Argument dbg should reference a DWARF debug context allocated using dwarf_init(3).
Argument value should hold the parameter value to set.
Function dwarf_set_frame_cfa_value() sets the column number for the CFA register rule in the internal register rule table. The constant `DW_FRAME_CFA_COL` is the default CFA register column number for DWARF2-only interfaces, and the constant `DW_FRAME_CFA_COL3` is the default CFA column number for DWARF3-compatible interfaces.
Function dwarf_set_frame_rule_initial_value() sets the initial value of the register rules in the internal register rule table. The default initial value is the constant `DW_FRAME_REG_INITIAL_VALUE`, defined in the header file <libdwarf.h>.
Function dwarf_set_frame_rule_table_size() sets the maxmium number of columns of the internal register rule table. Argument value should be at least as large as the number of real registers in the ABI.
Function dwarf_set_frame_same_value() sets the register number representing the “same value” register rule. The default register number for the “same value” rule is the constant `DW_FRAME_SAME_VAL`, defined in the header file <libdwarf.h>.
Function dwarf_set_frame_undefined_value() sets the register number representing the “undefined” register rule. The default register number for the “undefined” rule is the constant `DW_FRAME_UNDEFINED_VAL`, defined in the header file <libdwarf.h>.

# RETURN VALUES

These functions return the previous value of the parameter being set.

# SEE ALSO

dwarf(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_n(3)

June 18, 2011 | NetBSD 8.0