Lines Matching refs:dwarf
35 Debug (1, "(cursor=%p, ip=0x%08x)\n", c, (unsigned) c->dwarf.ip); in unw_step()
40 unw_word_t old_ip = c->dwarf.ip; in unw_step()
41 unw_word_t old_cfa = c->dwarf.cfa; in unw_step()
45 ret = dwarf_step (&c->dwarf); in unw_step()
70 ret = dwarf_get (&c->dwarf, c->dwarf.loc[EBP], &c->dwarf.cfa); in unw_step()
77 Debug (13, "[EBP=0x%x] = 0x%x\n", DWARF_GET_LOC (c->dwarf.loc[EBP]), in unw_step()
78 c->dwarf.cfa); in unw_step()
80 ebp_loc = DWARF_LOC (c->dwarf.cfa, 0); in unw_step()
81 eip_loc = DWARF_LOC (c->dwarf.cfa + 4, 0); in unw_step()
82 c->dwarf.cfa += 8; in unw_step()
88 c->dwarf.loc[i] = DWARF_NULL_LOC; in unw_step()
90 c->dwarf.loc[EBP] = ebp_loc; in unw_step()
91 c->dwarf.loc[EIP] = eip_loc; in unw_step()
93 c->dwarf.ret_addr_column = EIP; in unw_step()
95 if (!DWARF_IS_NULL_LOC (c->dwarf.loc[EBP])) in unw_step()
97 ret = dwarf_get (&c->dwarf, c->dwarf.loc[EIP], &c->dwarf.ip); in unw_step()
100 Debug (13, "dwarf_get([EIP=0x%x]) failed\n", DWARF_GET_LOC (c->dwarf.loc[EIP])); in unw_step()
106 Debug (13, "[EIP=0x%x] = 0x%x\n", DWARF_GET_LOC (c->dwarf.loc[EIP]), in unw_step()
107 c->dwarf.ip); in unw_step()
111 c->dwarf.ip = 0; in unw_step()
117 if (c->dwarf.ip) in unw_step()
120 c->dwarf.ip--; in unw_step()
124 if (old_ip == c->dwarf.ip && old_cfa == c->dwarf.cfa) in unw_step()
126 c->dwarf.frame++; in unw_step()
129 ret = (c->dwarf.ip == 0) ? 0 : 1; in unw_step()