Lines Matching refs:fde

353 	struct dwarf_fde *fde = NULL;  in dwarf_lookup_fde()  local
372 fde = fde_tmp; in dwarf_lookup_fde()
382 return fde; in dwarf_lookup_fde()
402 struct dwarf_fde *fde, in dwarf_cfa_execute_insns() argument
582 struct dwarf_fde *fde; in dwarf_unwind_stack() local
636 fde = dwarf_lookup_fde(pc); in dwarf_unwind_stack()
637 if (!fde) { in dwarf_unwind_stack()
656 cie = dwarf_lookup_cie(fde->cie_pointer); in dwarf_unwind_stack()
658 frame->pc = fde->initial_location; in dwarf_unwind_stack()
662 cie->instructions_end, cie, fde, in dwarf_unwind_stack()
666 dwarf_cfa_execute_insns(fde->instructions, fde->end, cie, in dwarf_unwind_stack()
667 fde, frame, pc); in dwarf_unwind_stack()
873 struct dwarf_fde *fde; in dwarf_parse_fde() local
879 fde = kzalloc(sizeof(*fde), GFP_KERNEL); in dwarf_parse_fde()
880 if (!fde) in dwarf_parse_fde()
883 fde->length = len; in dwarf_parse_fde()
889 fde->cie_pointer = (unsigned long)(p - entry_type - 4); in dwarf_parse_fde()
891 cie = dwarf_lookup_cie(fde->cie_pointer); in dwarf_parse_fde()
892 fde->cie = cie; in dwarf_parse_fde()
895 count = dwarf_read_encoded_value(p, &fde->initial_location, in dwarf_parse_fde()
898 count = dwarf_read_addr(p, &fde->initial_location); in dwarf_parse_fde()
903 count = dwarf_read_encoded_value(p, &fde->address_range, in dwarf_parse_fde()
906 count = dwarf_read_addr(p, &fde->address_range); in dwarf_parse_fde()
910 if (fde->cie->flags & DWARF_CIE_Z_AUGMENTATION) { in dwarf_parse_fde()
917 fde->instructions = p; in dwarf_parse_fde()
918 fde->end = end; in dwarf_parse_fde()
930 start = fde->initial_location; in dwarf_parse_fde()
931 end = fde->initial_location + fde->address_range; in dwarf_parse_fde()
946 rb_link_node(&fde->node, parent, rb_node); in dwarf_parse_fde()
947 rb_insert_color(&fde->node, &fde_root); in dwarf_parse_fde()
951 list_add_tail(&fde->link, &mod->arch.fde_list); in dwarf_parse_fde()
998 struct dwarf_fde *fde, *next_fde; in dwarf_unwinder_cleanup() local
1006 rbtree_postorder_for_each_entry_safe(fde, next_fde, &fde_root, node) in dwarf_unwinder_cleanup()
1007 kfree(fde); in dwarf_unwinder_cleanup()
1136 struct dwarf_fde *fde, *ftmp; in module_dwarf_cleanup() local
1152 list_for_each_entry_safe(fde, ftmp, &mod->arch.fde_list, link) { in module_dwarf_cleanup()
1153 list_del(&fde->link); in module_dwarf_cleanup()
1154 rb_erase(&fde->node, &fde_root); in module_dwarf_cleanup()
1155 kfree(fde); in module_dwarf_cleanup()