Lines Matching refs:vr_die
168 static int convert_variable_location(Dwarf_Die *vr_die, Dwarf_Addr addr, in convert_variable_location() argument
182 if (dwarf_attr(vr_die, DW_AT_external, &attr) != NULL) in convert_variable_location()
186 if (dwarf_attr(vr_die, DW_AT_location, &attr) == NULL) in convert_variable_location()
191 dwarf_tag(vr_die) != DW_TAG_formal_parameter || in convert_variable_location()
215 ret = strlen(dwarf_diename(vr_die)); in convert_variable_location()
219 snprintf(tvar->value, ret + 2, "@%s", dwarf_diename(vr_die)); in convert_variable_location()
277 static int convert_variable_type(Dwarf_Die *vr_die, in convert_variable_type() argument
295 bsize = dwarf_bitsize(vr_die); in convert_variable_type()
298 boffs = dwarf_bitoffset(vr_die); in convert_variable_type()
299 total = dwarf_bytesize(vr_die); in convert_variable_type()
307 if (die_get_real_type(vr_die, &type) == NULL) { in convert_variable_type()
309 dwarf_diename(vr_die)); in convert_variable_type()
314 dwarf_diename(vr_die), dwarf_diename(&type)); in convert_variable_type()
322 dwarf_diename(vr_die), dwarf_diename(&type)); in convert_variable_type()
344 dwarf_diename(vr_die)); in convert_variable_type()
380 static int convert_variable_fields(Dwarf_Die *vr_die, const char *varname, in convert_variable_fields() argument
391 if (die_get_real_type(vr_die, &type) == NULL) { in convert_variable_fields()
422 memcpy(die_mem, vr_die, sizeof(*die_mem)); in convert_variable_fields()
464 if (field->ref && dwarf_diename(vr_die)) { in convert_variable_fields()
510 static int convert_variable(Dwarf_Die *vr_die, struct probe_finder *pf) in convert_variable() argument
516 dwarf_diename(vr_die)); in convert_variable()
518 ret = convert_variable_location(vr_die, pf->addr, pf->fb_ops, in convert_variable()
526 ret = convert_variable_fields(vr_die, pf->pvar->var, in convert_variable()
529 vr_die = &die_mem; in convert_variable()
532 ret = convert_variable_type(vr_die, pf->tvar, pf->pvar->type); in convert_variable()
540 Dwarf_Die vr_die; in find_variable() local
579 if (!die_find_variable_at(sc_die, pf->pvar->var, pf->addr, &vr_die)) { in find_variable()
582 0, &vr_die)) { in find_variable()
589 ret = convert_variable(&vr_die, pf); in find_variable()