man.bsd.lv manual page server

Manual Page Search Parameters

DWARF_DIEOFFSET(3) Library Functions Manual DWARF_DIEOFFSET(3)

dwarf_die_CU_offset, dwarf_die_CU_offset_range, dwarf_dieoffset, dwarf_get_cu_die_offset_given_cu_header_offset, dwarf_get_cu_die_offset_given_cu_header_offset_breturn offsets of DWARF debugging information entries

library “libdwarf”

#include <libdwarf.h>

int
dwarf_die_CU_offset(Dwarf_Die die, Dwarf_Off *ret_offset, Dwarf_Error *err);

int
dwarf_die_CU_offset_range(Dwarf_Die die, Dwarf_Off *cu_offset, Dwarf_Off *cu_length, Dwarf_Error *err);

int
dwarf_dieoffset(Dwarf_Die die, Dwarf_Off *ret_offset, Dwarf_Error *err);

int
dwarf_get_cu_die_offset_given_cu_header_offset(Dwarf_Debug dbg, Dwarf_Off in_cu_header_offset, Dwarf_Off *out_cu_die_offset, Dwarf_Error *err);

int
dwarf_get_cu_die_offset_given_cu_header_offset_b(Dwarf_Debug dbg, Dwarf_Off in_cu_header_offset, Dwarf_Bool is_info, Dwarf_Off *out_cu_die_offset, Dwarf_Error *err);

These functions are used to retrieve offsets for DWARF debugging information entries.

Function () returns the offset of the debugging information entry referenced by argument die relative to the start of its containing compilation unit. Argument ret_offset should point to the location that is to hold the returned offset. If argument err is non-NULL, it will be used to return an error descriptor in case of an error.

Function () returns the section-relative offset and length of the compilation unit containing the debugging information entry referenced by argument die. Argument cu_offset should point to a location that will hold the returned offset. Argument cu_length should point to a location that will hold the returned length of the compilation unit. If argument err is non-NULL, it will be used to return an error descriptor in case of an error.

Function () retrieves the section-relative offset of the debugging information entry referenced by argument die. Argument ret_offset should point to a location that is to hold the returned section-relative offset. If argument err is non-NULL, it will be used to return an error descriptor in case of an error.

Function () returns the offset for the first debugging information entry for a compilation unit, given an offset to the header of the compilation unit. Argument dbg should reference a valid debugging context allocated using dwarf_init(3). Argument in_cu_header_offset contains the offset to the start of a compilation unit. Argument out_cu_die_offset points to a location that will hold the returned offset. If argument err is non-NULL, it will be used to return an error descriptor in case of an error.

Function () behaves identically to the function dwarf_get_cu_die_offset_given_cu_header_offset() when the argument is_info is non-zero. When the argument is_info is zero, function dwarf_get_cu_die_offset_given_cu_header_offset_b() returns the offset for the first debugging information entry for a type unit, given an offset to the header of the type unit in argument in_cu_header_offset. Argument out_cu_die_offset points to a location that will hold the returned offset. If the argument err is non-NULL, it will be used to return an error descriptor in case of an error.

On success, these functions return DW_DLV_OK. In case of an error, these functions return DW_DLV_ERROR and set argument err.

Function dwarf_get_cu_die_offset_given_cu_header_offset() and dwarf_get_cu_die_offset_given_cu_header_offset_b() returns DW_DLV_NO_ENTRY and sets argument err if there is no compilation or type unit located at the offset specified in argument in_cu_header_offset.

These functions may fail with the following errors:

[]
One of the arguments cu_length, cu_offset, dbg, die, out_cu_die_offset or ret_offset was NULL.
[]
Argument in_cu_header_offset specified an unknown offset.

dwarf(3), dwarf_next_cu_header(3), dwarf_offdie(3), dwarf_offdie_b(3)

December 21, 2014 FreeBSD-13.0