FreeBSD Manual Pages
DWARF_ADD_AT_LOCATION... BSD Library Functions Manual DWARF_ADD_AT_LOCATION... NAME dwarf_add_AT_location_expr -- create an attribute descriptor for a loca- tion expression LIBRARY DWARF Access Library (libdwarf, -ldwarf) SYNOPSIS #include <libdwarf.h> Dwarf_P_Attribute dwarf_add_AT_location_expr(Dwarf_P_Debug dbg, Dwarf_P_Die die, Dwarf_Half attr, Dwarf_P_Expr loc_expr, Dwarf_Error *err); DESCRIPTION Function dwarf_add_AT_location_expr() creates an attribute descriptor for a location expression and attaches it to the debugging information entry referenced by argument die. Argument dbg should reference a DWARF producer instance allocated using dwarf_producer_init(3) or dwarf_producer_init_b(3). Argument die should reference a debugging information entry allocated us- ing dwarf_new_die(3). Argument attr specifies the attribute code of the created attribute de- scriptor. Argument loc_expr should reference a location expression descriptor allo- cated using dwarf_new_expr(3). The attribute created by function dwarf_add_AT_location_expr() will have one of the DWARF forms DW_FORM_block, DW_FORM_block1, DW_FORM_block2 or DW_FORM_block4, depending on the size of the byte stream generated by the location expression descriptor referenced by argument loc_expr. If argument err is not NULL, it will be used by to store error informa- tion in case of an error. RETURN VALUES On success, function dwarf_add_AT_location_expr() returns the created at- tribute descriptor. In case of an error, function dwarf_add_AT_location_expr() returns DW_DLV_BADADDR and sets the argument err. ERRORS Function dwarf_add_AT_location_expr() can fail with: [DW_DLE_ARGUMENT] One of the arguments dbg, die or loc_expr was NULL. [DW_DLE_MEMORY] An out of memory condition was encountered during the execution of the function. SEE ALSO dwarf(3), dwarf_new_die(3), dwarf_new_expr(3), dwarf_producer_init(3), dwarf_producer_init_b(3) BSD September 5, 2011 BSD
NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUES | ERRORS | SEE ALSO
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=dwarf_add_AT_location_expr&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>