Lines Matching refs:fdes
734 void DwarfSectionImpl<AddressType>::GetFdes(std::vector<const DwarfFde*>* fdes) { in GetFdes() argument
739 fdes->push_back(GetFdeFromOffset(it.second)); in GetFdes()
772 std::vector<FdeInfo> fdes; in BuildFdeIndex() local
780 fdes.push_back({fde->pc_start, fde->pc_end, initial_offset}); in BuildFdeIndex()
786 std::sort(fdes.begin(), fdes.end(), [](const FdeInfo& a, const FdeInfo& b) { in BuildFdeIndex()
794 if (!fdes.empty()) { in BuildFdeIndex()
795 FdeInfo filling = fdes.back(); // Entry with the minimal pc_start seen so far. in BuildFdeIndex()
796 for (ssize_t i = fdes.size() - 1; i >= 0; i--) { // Iterate backwards. in BuildFdeIndex()
797 uint64_t prev_pc_end = (i > 0) ? fdes[i - 1].pc_end : 0; in BuildFdeIndex()
799 if (prev_pc_end < fdes[i].pc_start && filling.pc_start < fdes[i].pc_start) { in BuildFdeIndex()
800 fdes.push_back({filling.pc_start, fdes[i].pc_start, filling.fde_offset}); in BuildFdeIndex()
802 if (fdes[i].pc_start < filling.pc_start) { in BuildFdeIndex()
803 filling = fdes[i]; in BuildFdeIndex()
809 fde_index_.reserve(fdes.size()); in BuildFdeIndex()
810 for (const FdeInfo& it : fdes) { in BuildFdeIndex()