Lines Matching refs:Offset
112 uint64_t Offset = getLSDAAddress() - LSDASectionAddress; in parseLSDA() local
113 assert(Data.isValidOffset(Offset) && "wrong LSDA address"); in parseLSDA()
115 uint8_t LPStartEncoding = Data.getU8(&Offset); in parseLSDA()
119 &Offset, LPStartEncoding, Offset + LSDASectionAddress)) in parseLSDA()
123 const uint8_t TTypeEncoding = Data.getU8(&Offset); in parseLSDA()
127 TTypeEnd = Data.getULEB128(&Offset); in parseLSDA()
142 const uint64_t TypeIndexTableStart = Offset + TTypeEnd; in parseLSDA()
152 const uint64_t TypeTableStart = Offset + TTypeEnd; in parseLSDA()
154 uint8_t CallSiteEncoding = Data.getU8(&Offset); in parseLSDA()
155 uint32_t CallSiteTableLength = Data.getULEB128(&Offset); in parseLSDA()
156 uint64_t CallSiteTableStart = Offset; in parseLSDA()
520 uint64_t Offset = Function.getFirstInstructionOffset(); in fillCFIInfoFor() local
530 auto decodeFrameInstruction = [&Function, &Offset, Address, CodeAlignment, in fillCFIInfoFor()
544 Offset += CodeAlignment * int64_t(Instr.Ops[0]); in fillCFIInfoFor()
548 Offset, in fillCFIInfoFor()
555 Offset, MCCFIInstruction::createOffset(nullptr, Instr.Ops[0], in fillCFIInfoFor()
561 Offset, MCCFIInstruction::createRestore(nullptr, Instr.Ops[0])); in fillCFIInfoFor()
567 Offset = Instr.Ops[0] - Address; in fillCFIInfoFor()
572 Offset, MCCFIInstruction::createUndefined(nullptr, Instr.Ops[0])); in fillCFIInfoFor()
576 Offset, MCCFIInstruction::createSameValue(nullptr, Instr.Ops[0])); in fillCFIInfoFor()
580 Offset, MCCFIInstruction::createRegister(nullptr, Instr.Ops[0], in fillCFIInfoFor()
585 Offset, MCCFIInstruction::createRememberState(nullptr)); in fillCFIInfoFor()
588 Function.addCFIInstruction(Offset, in fillCFIInfoFor()
593 Offset, in fillCFIInfoFor()
598 Offset, in fillCFIInfoFor()
603 Function.addCFIInstruction(Offset, MCCFIInstruction::createDefCfaRegister( in fillCFIInfoFor()
608 Offset, MCCFIInstruction::cfiDefCfaOffset(nullptr, Instr.Ops[0])); in fillCFIInfoFor()
612 Offset, MCCFIInstruction::cfiDefCfaOffset( in fillCFIInfoFor()
617 Offset, MCCFIInstruction::createGnuArgsSize(nullptr, Instr.Ops[0])); in fillCFIInfoFor()
639 Offset, MCCFIInstruction::createEscape(nullptr, OS.str())); in fillCFIInfoFor()
757 uint32_t Offset = 12; in generateEHFrameHeader() local
761 support::ulittle32_t::ref(Ptr + Offset) = InitialPCOffset; in generateEHFrameHeader()
762 Offset += 4; in generateEHFrameHeader()
765 support::ulittle32_t::ref(Ptr + Offset) = FDEOffset; in generateEHFrameHeader()
766 Offset += 4; in generateEHFrameHeader()
773 uint8_t Version = Data.getU8(&Offset); in parseCIE()
774 const char *Augmentation = Data.getCStr(&Offset); in parseCIE()
777 Version < 4 ? Data.getAddressSize() : Data.getU8(&Offset); in parseCIE()
781 Offset += 1; in parseCIE()
783 Data.getULEB128(&Offset); in parseCIE()
785 Data.getSLEB128(&Offset); in parseCIE()
788 Offset += 1; in parseCIE()
790 Data.getULEB128(&Offset); in parseCIE()
802 LSDAPointerEncoding = Data.getU8(&Offset); in parseCIE()
805 uint32_t PersonalityEncoding = Data.getU8(&Offset); in parseCIE()
807 Data.getEncodedPointer(&Offset, PersonalityEncoding, in parseCIE()
808 EHFrameAddress ? EHFrameAddress + Offset : 0); in parseCIE()
811 PatcherCallback(*Personality, Offset, PersonalityEncoding); in parseCIE()
815 FDEPointerEncoding = Data.getU8(&Offset); in parseCIE()
823 Data.getULEB128(&Offset); in parseCIE()
848 if (auto Val = Data.getEncodedPointer(&Offset, Cie->FDEPtrEncoding, in parseFDE()
849 EHFrameAddress + Offset)) { in parseFDE()
850 PatcherCallback(*Val, Offset, Cie->FDEPtrEncoding); in parseFDE()
853 Data.getEncodedPointer(&Offset, Cie->FDEPtrEncoding, 0); in parseFDE()
859 Data.getULEB128(&Offset); in parseFDE()
861 Data.getEncodedPointer(&Offset, Cie->LSDAPtrEncoding, in parseFDE()
862 EHFrameAddress ? Offset + EHFrameAddress : 0); in parseFDE()
864 PatcherCallback(*LSDAAddress, Offset, Cie->LSDAPtrEncoding); in parseFDE()
870 while (Data.isValidOffset(Offset)) { in parse()
871 const uint64_t StartOffset = Offset; in parse()
875 std::tie(Length, Format) = Data.getInitialLength(&Offset); in parse()
881 const uint64_t StartStructureOffset = Offset; in parse()
882 const uint64_t EndStructureOffset = Offset + Length; in parse()
885 const uint64_t Id = Data.getRelocatedValue(4, &Offset, in parse()
897 Offset = EndStructureOffset; in parse()