DWARF_DIEOFFSET(3)
π DWARF_DIEOFFSET(3) π
okay bestie, welcome to the Library Functions Manual page for DWARF_DIEOFFSET(3) β yes, the whole girliepop gang of libdwarf functions that return offsets for DWARF debugging information entries. slay. π
β¨ NAME β¨
The squad is:
dwarf_die_CU_offsetdwarf_die_CU_offset_rangedwarf_dieoffsetdwarf_get_cu_die_offset_given_cu_header_offsetdwarf_get_cu_die_offset_given_cu_header_offset_b
and their whole thing is returning offsets of DWARF debugging information entries. no cap. π
π¦ LIBRARY π¦
This lives in the DWARF Access Library β libdwarf, -ldwarf. iconique. β¨
πΈ SYNOPSIS πΈ
#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);
π DESCRIPTION π
okay so the whole vibe: these functions are used to retrieve offsets for DWARF debugging information entries. that's the assignment, and they ate. π₯
dwarf_die_CU_offset()β returns the offset of the debugging information entry referenced by argumentdierelative to the start of its containing compilation unit. Argumentret_offsetshould point to the location that is to hold the returned offset. If argumenterris non-NULL, it will be used to return an error descriptor in case of an error. π«Άdwarf_die_CU_offset_range()β returns the section-relative offset and length of the compilation unit containing the debugging information entry referenced by argumentdie. Argumentcu_offsetshould point to a location that will hold the returned offset. Argumentcu_lengthshould point to a location that will hold the returned length of the compilation unit. If argumenterris non-NULL, it will be used to return an error descriptor in case of an error. πdwarf_dieoffset()β retrieves the section-relative offset of the debugging information entry referenced by argumentdie. Argumentret_offsetshould point to a location that is to hold the returned section-relative offset. If argumenterris non-NULL, it will be used to return an error descriptor in case of an error. π«dwarf_get_cu_die_offset_given_cu_header_offset()β returns the offset for the first debugging information entry for a compilation unit, given an offset to the header of the compilation unit. Argumentdbgshould reference a valid debugging context allocated usingdwarf_init(3). Argumentin_cu_header_offsetcontains the offset to the start of a compilation unit. Argumentout_cu_die_offsetpoints to a location that will hold the returned offset. If argumenterris non-NULL, it will be used to return an error descriptor in case of an error. πdwarf_get_cu_die_offset_given_cu_header_offset_b()β behaves identically to the functiondwarf_get_cu_die_offset_given_cu_header_offset()when the argumentis_infois non-zero. When the argumentis_infois zero, functiondwarf_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 argumentin_cu_header_offset. Argumentout_cu_die_offsetpoints to a location that will hold the returned offset. If the argumenterris non-NULL, it will be used to return an error descriptor in case of an error. π¦
π RETURN VALUES π
On success, these functions return DW_DLV_OK. In case of an error, these functions return DW_DLV_ERROR and set argument err. periodt. π
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. not me getting emotional about a missing unit π
π ERRORS π
These functions may fail with the following errors:
[DW_DLE_ARGUMENT]β One of the argumentscu_length,cu_offset,dbg,die,out_cu_die_offsetorret_offsetwasNULL.[DW_DLE_NO_ENTRY]β Argumentin_cu_header_offsetspecified an unknown offset.
π SEE ALSO π
mwah π this cutie pie page is from the Debian edition, dated December 21, 2014, for DWARF_DIEOFFSET(3) β go read the source, bestie, iykyk. π
π¦ where this page comes from
- freebsd 14.5: base 14.5
- freebsd 15.1: base 15.1
- nixpkgs unstable: libdwarf 15.0.0
- Copyright (c) 2010,2014 Kai Wang
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms