| DWARF_ADD_EXPR_GEN(3) | Library Functions Manual | DWARF_ADD_EXPR_GEN(3) | 
dwarf_add_expr_gen —
#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);
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 operator.
Argument val2 specifies the second operand of the location expression operator.
If argument err is not NULL, it will be used to store error information in case of an error.
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 argument
  err.
dwarf_add_expr_gen() can fail with:
DW_DLE_ARGUMENT]DW_DLE_LOC_EXPR_BAD]DW_DLE_MEMORY]| September 9, 2011 | NetBSD 9.4 |