FreeBSD Manual Pages
DWARF_ADD_EXPR_GEN(3) BSD Library Functions Manual DWARF_ADD_EXPR_GEN(3) NAME dwarf_add_expr_gen -- add an operator to a location expression descriptor LIBRARY DWARF Access Library (libdwarf, -ldwarf) SYNOPSIS #include <libdwarf.h> Dwarf_Unsigned dwarf_add_expr_gen(Dwarf_P_Expr expr, Dwarf_Small opcode, Dwarf_Unsigned val1, Dwarf_Unsigned val2, Dwarf_Error *err); DESCRIPTION Function dwarf_add_expr_gen() adds a location expression operator to the location expression descriptor referenced by argument expr. Argument expr should reference a location expression descriptor allocated using the function dwarf_new_expr(3). Argument opcode specifies the operation code of the location expression operator. Valid values for this argument are those denoted by the DW_OP_* constants defined in <libdwarf.h>. To generate a DW_OP_addr operation, application code should instead use dwarf_add_expr_addr_b(3). Argument val1 specifies the first operand of the location expression op- erator. Argument val2 specifies the second operand of the location expression op- erator. 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_expr_gen() returns the size in bytes of the location expression byte stream generated. In case of an error, function dwarf_add_expr_gen() returns DW_DLV_NOCOUNT and sets the argu- ment err. ERRORS Function dwarf_add_expr_gen() can fail with: [DW_DLE_ARGUMENT] Argument expr was NULL. [DW_DLE_LOC_EXPR_BAD] The operation code specified in argument opcode was invalid. [DW_DLE_MEMORY] An out of memory condition was encountered during the execution of the function. SEE ALSO dwarf(3), dwarf_add_AT_location_expr(3), dwarf_add_expr_addr(3), dwarf_add_expr_addr_b(3), dwarf_expr_current_offset(3), dwarf_expr_into_block(3), dwarf_new_expr(3) BSD September 9, 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_expr_gen&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>