Lines Matching refs:Offset
35 FrameEntry(FrameKind K, uint64_t Offset, uint64_t Length) in FrameEntry() argument
36 : Kind(K), Offset(Offset), Length(Length) {} in FrameEntry()
42 virtual uint64_t getOffset() const { return Offset; } in getOffset()
48 virtual void parseInstructions(DataExtractor Data, uint32_t *Offset,
61 uint64_t Offset; member in llvm::FrameEntry
103 void FrameEntry::parseInstructions(DataExtractor Data, uint32_t *Offset, in parseInstructions() argument
105 while (*Offset < EndOffset) { in parseInstructions()
106 uint8_t Opcode = Data.getU8(Offset); in parseInstructions()
121 addInstruction(Primary, Op1, Data.getULEB128(Offset)); in parseInstructions()
137 addInstruction(Opcode, Data.getAddress(Offset)); in parseInstructions()
141 addInstruction(Opcode, Data.getU8(Offset)); in parseInstructions()
145 addInstruction(Opcode, Data.getU16(Offset)); in parseInstructions()
149 addInstruction(Opcode, Data.getU32(Offset)); in parseInstructions()
157 addInstruction(Opcode, Data.getULEB128(Offset)); in parseInstructions()
161 addInstruction(Opcode, Data.getSLEB128(Offset)); in parseInstructions()
171 auto op1 = Data.getULEB128(Offset); in parseInstructions()
172 auto op2 = Data.getULEB128(Offset); in parseInstructions()
181 auto op1 = Data.getULEB128(Offset); in parseInstructions()
182 auto op2 = (uint64_t)Data.getSLEB128(Offset); in parseInstructions()
202 CIE(uint64_t Offset, uint64_t Length, uint8_t Version, in CIE() argument
208 : FrameEntry(FK_CIE, Offset, Length), Version(Version), in CIE()
232 (uint32_t)Offset, (uint32_t)Length, DW_CIE_ID) in dumpHeader()
284 FDE(uint64_t Offset, uint64_t Length, int64_t LinkedCIEOffset, in FDE() argument
287 : FrameEntry(FK_FDE, Offset, Length), LinkedCIEOffset(LinkedCIEOffset), in FDE()
297 (uint32_t)Offset, (uint32_t)Length, (int32_t)LinkedCIEOffset); in dumpHeader()
466 uint32_t Offset, int Length) { in dumpDataAux() argument
469 uint8_t c = Data.getU8(&Offset); in dumpDataAux()
495 static uint64_t readPointer(const DataExtractor &Data, uint32_t &Offset, in readPointer() argument
499 return Data.getU16(&Offset); in readPointer()
501 return Data.getU32(&Offset); in readPointer()
503 return Data.getU64(&Offset); in readPointer()
510 uint32_t Offset = 0; in parse() local
513 while (Data.isValidOffset(Offset)) { in parse()
514 uint32_t StartOffset = Offset; in parse()
525 uint64_t Length = Data.getU32(&Offset); in parse()
533 Length = Data.getU64(&Offset); in parse()
542 uint32_t StartStructureOffset = Offset; in parse()
543 uint32_t EndStructureOffset = Offset + static_cast<uint32_t>(Length); in parse()
546 Id = Data.getUnsigned(&Offset, (IsDWARF64 && !IsEH) ? 8 : 4); in parse()
552 uint8_t Version = Data.getU8(&Offset); in parse()
553 const char *Augmentation = Data.getCStr(&Offset); in parse()
556 Data.getU8(&Offset); in parse()
558 uint8_t SegmentDescriptorSize = Version < 4 ? 0 : Data.getU8(&Offset); in parse()
559 uint64_t CodeAlignmentFactor = Data.getULEB128(&Offset); in parse()
560 int64_t DataAlignmentFactor = Data.getSLEB128(&Offset); in parse()
561 uint64_t ReturnAddressRegister = Data.getULEB128(&Offset); in parse()
581 LSDAPointerEncoding = Data.getU8(&Offset); in parse()
586 PersonalityEncoding = Data.getU8(&Offset); in parse()
587 Personality = readPointer(Data, Offset, *PersonalityEncoding); in parse()
591 FDEPointerEncoding = Data.getU8(&Offset); in parse()
598 AugmentationLength = Data.getULEB128(&Offset); in parse()
599 StartAugmentationOffset = Offset; in parse()
600 EndAugmentationOffset = Offset + in parse()
606 if (Offset != EndAugmentationOffset) in parse()
634 InitialLocation = readPointer(Data, Offset, in parse()
636 AddressRange = readPointer(Data, Offset, in parse()
642 uint64_t AugmentationLength = Data.getULEB128(&Offset); in parse()
645 Offset + static_cast<uint32_t>(AugmentationLength); in parse()
649 readPointer(Data, Offset, Cie->getLSDAPointerEncoding()); in parse()
651 if (Offset != EndAugmentationOffset) in parse()
655 InitialLocation = Data.getAddress(&Offset); in parse()
656 AddressRange = Data.getAddress(&Offset); in parse()
664 Entries.back()->parseInstructions(Data, &Offset, EndStructureOffset); in parse()
666 if (Offset != EndStructureOffset) in parse()