Lines Matching refs:Offset
53 UnwindLocation UnwindLocation::createIsCFAPlusOffset(int32_t Offset) { in createIsCFAPlusOffset() argument
54 return {CFAPlusOffset, InvalidRegisterNumber, Offset, std::nullopt, false}; in createIsCFAPlusOffset()
57 UnwindLocation UnwindLocation::createAtCFAPlusOffset(int32_t Offset) { in createAtCFAPlusOffset() argument
58 return {CFAPlusOffset, InvalidRegisterNumber, Offset, std::nullopt, true}; in createAtCFAPlusOffset()
62 UnwindLocation::createIsRegisterPlusOffset(uint32_t RegNum, int32_t Offset, in createIsRegisterPlusOffset() argument
64 return {RegPlusOffset, RegNum, Offset, AddrSpace, false}; in createIsRegisterPlusOffset()
68 UnwindLocation::createAtRegisterPlusOffset(uint32_t RegNum, int32_t Offset, in createAtRegisterPlusOffset() argument
70 return {RegPlusOffset, RegNum, Offset, AddrSpace, true}; in createAtRegisterPlusOffset()
96 if (Offset == 0) in dump()
98 if (Offset > 0) in dump()
100 OS << Offset; in dump()
104 if (Offset == 0 && !AddrSpace) in dump()
106 if (Offset >= 0) in dump()
108 OS << Offset; in dump()
117 OS << Offset; in dump()
140 return Offset == RHS.Offset && Dereference == RHS.Dereference; in operator ==()
142 return RegNum == RHS.RegNum && Offset == RHS.Offset && in operator ==()
147 return Offset == RHS.Offset; in operator ==()
255 Error CFIProgram::parse(DWARFDataExtractor Data, uint64_t *Offset, in parse() argument
257 DataExtractor::Cursor C(*Offset); in parse()
389 *Offset = C.tell(); in parse()
555 llvm::Expected<uint64_t> Offset = Inst.getOperandAsUnsigned(CFIP, 0); in parseRows() local
556 if (!Offset) in parseRows()
557 return Offset.takeError(); in parseRows()
558 Row.slideAddress(*Offset); in parseRows()
589 llvm::Expected<int64_t> Offset = Inst.getOperandAsSigned(CFIP, 1); in parseRows() local
590 if (!Offset) in parseRows()
591 return Offset.takeError(); in parseRows()
593 *RegNum, UnwindLocation::createAtCFAPlusOffset(*Offset)); in parseRows()
705 llvm::Expected<int64_t> Offset = Inst.getOperandAsSigned(CFIP, 1); in parseRows() local
706 if (!Offset) in parseRows()
707 return Offset.takeError(); in parseRows()
709 *RegNum, UnwindLocation::createIsCFAPlusOffset(*Offset)); in parseRows()
745 llvm::Expected<int64_t> Offset = Inst.getOperandAsSigned(CFIP, 0); in parseRows() local
746 if (!Offset) in parseRows()
747 return Offset.takeError(); in parseRows()
754 Row.getCFAValue().setOffset(*Offset); in parseRows()
763 llvm::Expected<int64_t> Offset = Inst.getOperandAsSigned(CFIP, 1); in parseRows() local
764 if (!Offset) in parseRows()
765 return Offset.takeError(); in parseRows()
767 UnwindLocation::createIsRegisterPlusOffset(*RegNum, *Offset); in parseRows()
776 llvm::Expected<int64_t> Offset = Inst.getOperandAsSigned(CFIP, 1); in parseRows() local
777 if (!Offset) in parseRows()
778 return Offset.takeError(); in parseRows()
784 *RegNum, *Offset, *CFAAddrSpace); in parseRows()
947 OS << format("%08" PRIx64, Offset) << " ZERO terminator\n"; in dump()
951 OS << format("%08" PRIx64, Offset) in dump()
993 OS << format("%08" PRIx64, Offset) in dump()
1027 uint64_t Offset, int Length) { in dumpDataAux() argument
1030 uint8_t c = Data.getU8(&Offset); in dumpDataAux()
1037 uint64_t Offset = 0; in parse() local
1040 while (Data.isValidOffset(Offset)) { in parse()
1041 uint64_t StartOffset = Offset; in parse()
1045 std::tie(Length, Format) = Data.getInitialLength(&Offset); in parse()
1064 uint64_t StartStructureOffset = Offset; in parse()
1065 uint64_t EndStructureOffset = Offset + Length; in parse()
1069 uint64_t Id = Data.getRelocatedValue((IsDWARF64 && !IsEH) ? 8 : 4, &Offset, in parse()
1075 uint8_t Version = Data.getU8(&Offset); in parse()
1076 const char *Augmentation = Data.getCStr(&Offset); in parse()
1079 Data.getU8(&Offset); in parse()
1081 uint8_t SegmentDescriptorSize = Version < 4 ? 0 : Data.getU8(&Offset); in parse()
1082 uint64_t CodeAlignmentFactor = Data.getULEB128(&Offset); in parse()
1083 int64_t DataAlignmentFactor = Data.getSLEB128(&Offset); in parse()
1085 Version == 1 ? Data.getU8(&Offset) : Data.getULEB128(&Offset); in parse()
1107 LSDAPointerEncoding = Data.getU8(&Offset); in parse()
1114 PersonalityEncoding = Data.getU8(&Offset); in parse()
1116 &Offset, *PersonalityEncoding, in parse()
1117 EHFrameAddress ? EHFrameAddress + Offset : 0); in parse()
1121 FDEPointerEncoding = Data.getU8(&Offset); in parse()
1133 AugmentationLength = Data.getULEB128(&Offset); in parse()
1134 StartAugmentationOffset = Offset; in parse()
1135 EndAugmentationOffset = Offset + *AugmentationLength; in parse()
1149 if (Offset != EndAugmentationOffset) in parse()
1183 Data.getEncodedPointer(&Offset, Cie->getFDEPointerEncoding(), in parse()
1184 EHFrameAddress + Offset)) { in parse()
1188 &Offset, Cie->getFDEPointerEncoding(), 0)) { in parse()
1195 uint64_t AugmentationLength = Data.getULEB128(&Offset); in parse()
1197 uint64_t EndAugmentationOffset = Offset + AugmentationLength; in parse()
1202 &Offset, Cie->getLSDAPointerEncoding(), in parse()
1203 EHFrameAddress ? Offset + EHFrameAddress : 0); in parse()
1206 if (Offset != EndAugmentationOffset) in parse()
1213 InitialLocation = Data.getRelocatedAddress(&Offset); in parse()
1214 AddressRange = Data.getRelocatedAddress(&Offset); in parse()
1223 Entries.back()->cfis().parse(Data, &Offset, EndStructureOffset)) in parse()
1226 if (Offset != EndStructureOffset) in parse()
1235 FrameEntry *DWARFDebugFrame::getEntryAtOffset(uint64_t Offset) const { in getEntryAtOffset()
1237 return E->getOffset() < Offset; in getEntryAtOffset()
1239 if (It != Entries.end() && (*It)->getOffset() == Offset) in getEntryAtOffset()
1245 std::optional<uint64_t> Offset) const { in dump()
1247 if (Offset) { in dump()
1248 if (auto *Entry = getEntryAtOffset(*Offset)) in dump()