Lines Matching refs:fdes
718 void DwarfSectionImpl<AddressType>::GetFdes(std::vector<const DwarfFde*>* fdes) { in GetFdes() argument
723 fdes->push_back(GetFdeFromOffset(it.second)); in GetFdes()
756 std::vector<FdeInfo> fdes; in BuildFdeIndex() local
764 fdes.push_back({fde->pc_start, fde->pc_end, initial_offset}); in BuildFdeIndex()
770 std::sort(fdes.begin(), fdes.end(), [](const FdeInfo& a, const FdeInfo& b) { in BuildFdeIndex()
778 if (!fdes.empty()) { in BuildFdeIndex()
779 FdeInfo filling = fdes.back(); // Entry with the minimal pc_start seen so far. in BuildFdeIndex()
780 for (ssize_t i = fdes.size() - 1; i >= 0; i--) { // Iterate backwards. in BuildFdeIndex()
781 uint64_t prev_pc_end = (i > 0) ? fdes[i - 1].pc_end : 0; in BuildFdeIndex()
783 if (prev_pc_end < fdes[i].pc_start && filling.pc_start < fdes[i].pc_start) { in BuildFdeIndex()
784 fdes.push_back({filling.pc_start, fdes[i].pc_start, filling.fde_offset}); in BuildFdeIndex()
786 if (fdes[i].pc_start < filling.pc_start) { in BuildFdeIndex()
787 filling = fdes[i]; in BuildFdeIndex()
793 fde_index_.reserve(fdes.size()); in BuildFdeIndex()
794 for (const FdeInfo& it : fdes) { in BuildFdeIndex()