Lines Matching refs:Offset
70 &LS](uint32_t Offset, DWARFSectionKind SectionKind, in addUnitsImpl()
76 if (!Data.isValidOffset(Offset)) in addUnitsImpl()
82 if (!Header.extract(Context, Data, &Offset, SectionKind, Index, in addUnitsImpl()
105 uint32_t Offset = 0; in addUnitsImpl() local
106 while (Data.isValidOffset(Offset)) { in addUnitsImpl()
108 (&(*I)->getInfoSection() != &Section || (*I)->getOffset() == Offset)) { in addUnitsImpl()
112 auto U = Parser(Offset, SectionKind, &Section, nullptr); in addUnitsImpl()
116 Offset = U->getNextUnitOffset(); in addUnitsImpl()
130 DWARFUnit *DWARFUnitVector::getUnitForOffset(uint32_t Offset) const { in getUnitForOffset()
133 std::upper_bound(begin(), end, Offset, in getUnitForOffset()
137 if (CU != end && (*CU)->getOffset() <= Offset) in getUnitForOffset()
148 auto Offset = CUOff->Offset; in getUnitForIndexEntry() local
152 std::upper_bound(begin(), end, CUOff->Offset, in getUnitForIndexEntry()
156 if (CU != end && (*CU)->getOffset() <= Offset) in getUnitForIndexEntry()
162 auto U = Parser(Offset, DW_SECT_INFO, nullptr, &E); in getUnitForIndexEntry()
190 LocSectionData = LocSectionData.substr(C->Offset, C->Length); in DWARFUnit()
213 uint32_t Offset = AddrOffsetSectionBase + Index * getAddressByteSize(); in getAddrOffsetSectionItem() local
214 if (AddrOffsetSection->Data.size() < Offset + getAddressByteSize()) in getAddrOffsetSectionItem()
219 uint64_t Address = DA.getRelocatedAddress(&Offset, &Section); in getAddrOffsetSectionItem()
227 uint32_t Offset = getStringOffsetsBase() + Index * ItemSize; in getStringOffsetSectionItem() local
228 if (StringOffsetSection.Data.size() < Offset + ItemSize) in getStringOffsetSectionItem()
232 return DA.getRelocatedValue(ItemSize, &Offset); in getStringOffsetSectionItem()
241 Offset = *offset_ptr; in extract()
273 AbbrOffset = AbbrEntry->Offset; in extract()
282 assert(*offset_ptr - Offset <= 255 && "unexpected header size"); in extract()
283 Size = uint8_t(*offset_ptr - Offset); in extract()
306 parseRngListTableHeader(DWARFDataExtractor &DA, uint32_t Offset) { in parseRngListTableHeader() argument
310 if (Offset > 0) { in parseRngListTableHeader()
311 if (Offset < 12U) in parseRngListTableHeader()
314 Offset); in parseRngListTableHeader()
315 Offset -= 12U; in parseRngListTableHeader()
318 if (Error E = Table.extractHeaderAndOffsets(DA, &Offset)) in parseRngListTableHeader()
536 DWARFUnit::findRnglistFromOffset(uint32_t Offset) { in findRnglistFromOffset() argument
539 if (Error E = extractRangeList(Offset, RangeList)) in findRnglistFromOffset()
546 auto RangeListOrError = RngListTable->findList(RangesData, Offset); in findRnglistFromOffset()
558 if (auto Offset = getRnglistOffset(Index)) in findRnglistFromIndex() local
559 return findRnglistFromOffset(*Offset + RangeSectionBase); in findRnglistFromIndex()
775 parseDWARF64StringOffsetsTableHeader(DWARFDataExtractor &DA, uint32_t Offset) { in parseDWARF64StringOffsetsTableHeader() argument
776 if (!DA.isValidOffsetForDataOfSize(Offset, 16)) in parseDWARF64StringOffsetsTableHeader()
779 if (DA.getU32(&Offset) != 0xffffffff) in parseDWARF64StringOffsetsTableHeader()
782 uint64_t Size = DA.getU64(&Offset); in parseDWARF64StringOffsetsTableHeader()
783 uint8_t Version = DA.getU16(&Offset); in parseDWARF64StringOffsetsTableHeader()
784 (void)DA.getU16(&Offset); // padding in parseDWARF64StringOffsetsTableHeader()
787 return {{Offset, Size - 4, Version, DWARF64}}; in parseDWARF64StringOffsetsTableHeader()
793 parseDWARF32StringOffsetsTableHeader(DWARFDataExtractor &DA, uint32_t Offset) { in parseDWARF32StringOffsetsTableHeader() argument
794 if (!DA.isValidOffsetForDataOfSize(Offset, 8)) in parseDWARF32StringOffsetsTableHeader()
796 uint32_t ContributionSize = DA.getU32(&Offset); in parseDWARF32StringOffsetsTableHeader()
799 uint8_t Version = DA.getU16(&Offset); in parseDWARF32StringOffsetsTableHeader()
800 (void)DA.getU16(&Offset); // padding in parseDWARF32StringOffsetsTableHeader()
803 return {{Offset, ContributionSize - 4, Version, DWARF32}}; in parseDWARF32StringOffsetsTableHeader()
808 auto Offset = toSectionOffset(getUnitDIE().find(DW_AT_str_offsets_base), 0); in determineStringOffsetsTableContribution() local
811 if (Offset >= 16) in determineStringOffsetsTableContribution()
813 parseDWARF64StringOffsetsTableHeader(DA, (uint32_t)Offset - 16); in determineStringOffsetsTableContribution()
815 if (!Descriptor && Offset >= 8) in determineStringOffsetsTableContribution()
816 Descriptor = parseDWARF32StringOffsetsTableHeader(DA, (uint32_t)Offset - 8); in determineStringOffsetsTableContribution()
822 uint64_t Offset = 0; in determineStringOffsetsTableContributionDWO() local
827 Offset = C->Offset; in determineStringOffsetsTableContributionDWO()
831 parseDWARF64StringOffsetsTableHeader(DA, (uint32_t)Offset); in determineStringOffsetsTableContributionDWO()
833 Descriptor = parseDWARF32StringOffsetsTableHeader(DA, (uint32_t)Offset); in determineStringOffsetsTableContributionDWO()
842 return {{C->Offset, C->Length, 4, DWARF32}}; in determineStringOffsetsTableContributionDWO()