MCPcopy Create free account
hub / github.com/bloomberg/pystack / CuDieRanges

Method CuDieRanges

src/pystack/_pystack/unwinder.cpp:19–36  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

17
18namespace pystack {
19ModuleCuDieRanges::CuDieRanges::CuDieRanges(Dwfl_Module* mod)
20{
21 if (!mod) {
22 return;
23 }
24
25 Dwarf_Die* die = nullptr;
26 Dwarf_Addr bias = 0;
27 while ((die = dwfl_module_nextcu(mod, die, &bias))) {
28 Dwarf_Addr low = 0;
29 Dwarf_Addr high = 0;
30 Dwarf_Addr base = 0;
31 ptrdiff_t offset = 0;
32 while ((offset = dwarf_ranges(die, offset, &base, &low, &high)) > 0) {
33 d_ranges.push_back(CuDieRange{die, bias, low + bias, high + bias});
34 }
35 }
36}
37
38Dwarf_Die*
39ModuleCuDieRanges::CuDieRanges::findDie(Dwarf_Addr addr, Dwarf_Addr* bias) const

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected