Lines Matching full:addend
228 uint32_t Type, int64_t Addend, in resolveX86_64Relocation() argument
236 Value + Addend; in resolveX86_64Relocation()
237 DEBUG(dbgs() << "Writing " << format("%p", (Value + Addend)) << " at " in resolveX86_64Relocation()
243 Value += Addend; in resolveX86_64Relocation()
256 int64_t RealOffset = Value + Addend - FinalAddress; in resolveX86_64Relocation()
264 int64_t RealOffset = Value + Addend - FinalAddress; in resolveX86_64Relocation()
273 int64_t RealOffset = Value + Addend - FinalAddress; in resolveX86_64Relocation()
283 uint32_t Type, int32_t Addend) { in resolveX86Relocation() argument
287 Value + Addend; in resolveX86Relocation()
293 uint32_t RealOffset = Value + Addend - FinalAddress; in resolveX86Relocation()
308 uint32_t Type, int64_t Addend) { in resolveAArch64Relocation() argument
317 << format("%x", Type) << " Addend: 0x" << format("%llx", Addend) in resolveAArch64Relocation()
327 *TargetPtr = Value + Addend; in resolveAArch64Relocation()
331 uint64_t Result = Value + Addend - FinalAddress; in resolveAArch64Relocation()
341 uint64_t BranchImm = Value + Addend - FinalAddress; in resolveAArch64Relocation()
354 uint64_t Result = Value + Addend; in resolveAArch64Relocation()
366 uint64_t Result = Value + Addend; in resolveAArch64Relocation()
378 uint64_t Result = Value + Addend; in resolveAArch64Relocation()
390 uint64_t Result = Value + Addend; in resolveAArch64Relocation()
404 ((Value + Addend) & ~0xfffULL) - (FinalAddress & ~0xfffULL); in resolveAArch64Relocation()
420 uint64_t Result = Value + Addend; in resolveAArch64Relocation()
432 uint64_t Result = Value + Addend; in resolveAArch64Relocation()
447 uint32_t Type, int32_t Addend) { in resolveARMRelocation() argument
452 Value += Addend; in resolveARMRelocation()
458 << " Addend: " << format("%x", Addend) << "\n"); in resolveARMRelocation()
498 uint32_t Type, int32_t Addend) { in resolveMIPSRelocation() argument
500 Value += Addend; in resolveMIPSRelocation()
507 << " Addend: " << format("%x", Addend) << "\n"); in resolveMIPSRelocation()
601 uint32_t Type, int64_t Addend, in resolveMIPS64Relocation() argument
612 RelType, Addend, in resolveMIPS64Relocation()
633 uint32_t Type, int64_t Addend, in evaluateMIPS64Relocation() argument
641 << format("%x", Type) << " Addend: 0x" << format("%llx", Addend) in evaluateMIPS64Relocation()
653 return Value + Addend; in evaluateMIPS64Relocation()
655 return ((Value + Addend) >> 2) & 0x3ffffff; in evaluateMIPS64Relocation()
658 return Value + Addend - (GOTAddr + 0x7ff0); in evaluateMIPS64Relocation()
661 return Value - Addend; in evaluateMIPS64Relocation()
664 return ((Value + Addend + 0x8000) >> 16) & 0xffff; in evaluateMIPS64Relocation()
666 return (Value + Addend) & 0xffff; in evaluateMIPS64Relocation()
674 Value += Addend; in evaluateMIPS64Relocation()
687 int64_t page = (Value + Addend + 0x8000) & ~0xffff; in evaluateMIPS64Relocation()
688 return (Value + Addend - page) & 0xffff; in evaluateMIPS64Relocation()
692 return Value + Addend - (GOTAddr + 0x7ff0); in evaluateMIPS64Relocation()
696 return ((Value + Addend - FinalAddress) >> 2) & 0xffff; in evaluateMIPS64Relocation()
700 return Value + Addend - FinalAddress; in evaluateMIPS64Relocation()
704 return ((Value + Addend - (FinalAddress & ~0x7)) >> 3) & 0x3ffff; in evaluateMIPS64Relocation()
708 return ((Value + Addend - (FinalAddress & ~0x3)) >> 2) & 0x7ffff; in evaluateMIPS64Relocation()
712 return ((Value + Addend - FinalAddress) >> 2) & 0x1fffff; in evaluateMIPS64Relocation()
716 return ((Value + Addend - FinalAddress) >> 2) & 0x3ffffff; in evaluateMIPS64Relocation()
720 return ((Value + Addend - FinalAddress + 0x8000) >> 16) & 0xffff; in evaluateMIPS64Relocation()
724 return (Value + Addend - FinalAddress) & 0xffff; in evaluateMIPS64Relocation()
817 Rel.Addend = 0x8000; in findPPC64TOCSection()
855 int64_t Addend; in findOPDEntrySection() local
857 Addend = *AddendOrErr; in findOPDEntrySection()
873 if (Rel.Addend != (int64_t)TargetSymbolOffset) in findOPDEntrySection()
889 Rel.Addend = (intptr_t)Addend; in findOPDEntrySection()
929 uint32_t Type, int64_t Addend) { in resolvePPC32Relocation() argument
936 writeInt16BE(LocalAddress, applyPPClo(Value + Addend)); in resolvePPC32Relocation()
939 writeInt16BE(LocalAddress, applyPPChi(Value + Addend)); in resolvePPC32Relocation()
942 writeInt16BE(LocalAddress, applyPPCha(Value + Addend)); in resolvePPC32Relocation()
949 uint32_t Type, int64_t Addend) { in resolvePPC64Relocation() argument
956 writeInt16BE(LocalAddress, applyPPClo(Value + Addend)); in resolvePPC64Relocation()
959 writeInt16BE(LocalAddress, applyPPClo(Value + Addend) & ~3); in resolvePPC64Relocation()
962 writeInt16BE(LocalAddress, applyPPClo(Value + Addend)); in resolvePPC64Relocation()
965 writeInt16BE(LocalAddress, applyPPClo(Value + Addend) & ~3); in resolvePPC64Relocation()
968 writeInt16BE(LocalAddress, applyPPChi(Value + Addend)); in resolvePPC64Relocation()
971 writeInt16BE(LocalAddress, applyPPCha(Value + Addend)); in resolvePPC64Relocation()
974 writeInt16BE(LocalAddress, applyPPChigher(Value + Addend)); in resolvePPC64Relocation()
977 writeInt16BE(LocalAddress, applyPPChighera(Value + Addend)); in resolvePPC64Relocation()
980 writeInt16BE(LocalAddress, applyPPChighest(Value + Addend)); in resolvePPC64Relocation()
983 writeInt16BE(LocalAddress, applyPPChighesta(Value + Addend)); in resolvePPC64Relocation()
986 assert(((Value + Addend) & 3) == 0); in resolvePPC64Relocation()
989 writeInt16BE(LocalAddress + 2, (aalk & 3) | ((Value + Addend) & 0xfffc)); in resolvePPC64Relocation()
993 uint64_t Delta = Value - FinalAddress + Addend; in resolvePPC64Relocation()
998 uint64_t Delta = Value - FinalAddress + Addend; in resolvePPC64Relocation()
1003 uint64_t Delta = Value - FinalAddress + Addend; in resolvePPC64Relocation()
1007 int32_t Result = static_cast<int32_t>(Value + Addend); in resolvePPC64Relocation()
1014 int32_t delta = static_cast<int32_t>(Value - FinalAddress + Addend); in resolvePPC64Relocation()
1022 int32_t delta = static_cast<int32_t>(Value - FinalAddress + Addend); in resolvePPC64Relocation()
1029 uint64_t Delta = Value - FinalAddress + Addend; in resolvePPC64Relocation()
1033 writeInt64BE(LocalAddress, Value + Addend); in resolvePPC64Relocation()
1040 uint32_t Type, int64_t Addend) { in resolveSystemZRelocation() argument
1048 int64_t Delta = (Value + Addend) - Section.getLoadAddressWithOffset(Offset); in resolveSystemZRelocation()
1055 int64_t Delta = (Value + Addend) - Section.getLoadAddressWithOffset(Offset); in resolveSystemZRelocation()
1061 int64_t Delta = (Value + Addend) - Section.getLoadAddressWithOffset(Offset); in resolveSystemZRelocation()
1067 writeInt64BE(LocalAddress, Value + Addend); in resolveSystemZRelocation()
1070 int64_t Delta = (Value + Addend) - Section.getLoadAddressWithOffset(Offset); in resolveSystemZRelocation()
1094 // the symbol resides (RE.Addend provides additional information about the
1100 return resolveRelocation(Section, RE.Offset, Value, RE.RelType, RE.Addend, in resolveRelocation()
1106 uint32_t Type, int64_t Addend, in resolveRelocation() argument
1110 resolveX86_64Relocation(Section, Offset, Value, Type, Addend, SymOffset); in resolveRelocation()
1114 (uint32_t)(Addend & 0xffffffffL)); in resolveRelocation()
1118 resolveAArch64Relocation(Section, Offset, Value, Type, Addend); in resolveRelocation()
1125 (uint32_t)(Addend & 0xffffffffL)); in resolveRelocation()
1133 Type, (uint32_t)(Addend & 0xffffffffL)); in resolveRelocation()
1135 resolveMIPS64Relocation(Section, Offset, Value, Type, Addend, SymOffset, in resolveRelocation()
1141 resolvePPC32Relocation(Section, Offset, Value, Type, Addend); in resolveRelocation()
1145 resolvePPC64Relocation(Section, Offset, Value, Type, Addend); in resolveRelocation()
1148 resolveSystemZRelocation(Section, Offset, Value, Type, Addend); in resolveRelocation()
1160 RelocationEntry RE(SectionID, Offset, RelType, Value.Addend, Value.Offset); in processSimpleRelocation()
1197 int64_t Addend = AddendOrErr ? *AddendOrErr : 0; in processRelocationRef() local
1208 DEBUG(dbgs() << "\t\tRelType: " << RelType << " Addend: " << Addend in processRelocationRef()
1232 Value.Addend = SymInfo.getOffset() + Addend; in processRelocationRef()
1257 Value.Addend = Addend; in processRelocationRef()
1263 Value.Addend = Addend; in processRelocationRef()
1305 ELF::R_AARCH64_MOVW_UABS_G3, Value.Addend); in processRelocationRef()
1308 ELF::R_AARCH64_MOVW_UABS_G2_NC, Value.Addend); in processRelocationRef()
1311 ELF::R_AARCH64_MOVW_UABS_G1_NC, Value.Addend); in processRelocationRef()
1314 ELF::R_AARCH64_MOVW_UABS_G0_NC, Value.Addend); in processRelocationRef()
1355 ELF::R_ARM_ABS32, Value.Addend); in processRelocationRef()
1372 Value.Addend += *Placeholder; in processRelocationRef()
1375 Value.Addend += (int16_t)((*Placeholder & 0xFFF) | (((*Placeholder >> 16) & 0xF) << 12)); in processRelocationRef()
1388 // Extract the addend from the instruction. in processRelocationRef()
1391 uint32_t Addend = (Opcode & 0x03ffffff) << 2; in processRelocationRef() local
1393 Value.Addend += Addend; in processRelocationRef()
1410 ELF::R_MIPS_HI16, Value.Addend); in processRelocationRef()
1413 ELF::R_MIPS_LO16, Value.Addend); in processRelocationRef()
1429 int64_t Addend = (Opcode & 0x0000ffff) << 16; in processRelocationRef() local
1430 RelocationEntry RE(SectionID, Offset, RelType, Addend); in processRelocationRef()
1433 int64_t Addend = Value.Addend + SignExtend32<16>(Opcode & 0x0000ffff); in processRelocationRef() local
1440 Reloc.Addend += Addend; in processRelocationRef()
1449 RelocationEntry RE(SectionID, Offset, RelType, Addend); in processRelocationRef()
1456 Value.Addend += Opcode; in processRelocationRef()
1458 Value.Addend += SignExtend32<18>((Opcode & 0x0000ffff) << 2); in processRelocationRef()
1460 Value.Addend += SignExtend32<21>((Opcode & 0x0007ffff) << 2); in processRelocationRef()
1462 Value.Addend += SignExtend32<23>((Opcode & 0x001fffff) << 2); in processRelocationRef()
1464 Value.Addend += SignExtend32<28>((Opcode & 0x03ffffff) << 2); in processRelocationRef()
1469 RelocationEntry RE(SectionID, Offset, RelType, Value.Addend); in processRelocationRef()
1507 Value.Addend += ELF::decodePPC64LocalEntryOffset(SymOther); in processRelocationRef()
1510 Sections[Value.SectionID].getAddressWithOffset(Value.Addend); in processRelocationRef()
1514 RelocationEntry RE(SectionID, Offset, RelType, Value.Addend); in processRelocationRef()
1542 ELF::R_PPC64_ADDR64, Value.Addend); in processRelocationRef()
1553 ELF::R_PPC64_ADDR16_HIGHEST, Value.Addend); in processRelocationRef()
1555 ELF::R_PPC64_ADDR16_HIGHER, Value.Addend); in processRelocationRef()
1557 ELF::R_PPC64_ADDR16_HI, Value.Addend); in processRelocationRef()
1559 ELF::R_PPC64_ADDR16_LO, Value.Addend); in processRelocationRef()
1618 Value.Addend -= TOCValue.Addend; in processRelocationRef()
1619 resolveRelocation(Sections[SectionID], Offset, Value.Addend, RelType, 0); in processRelocationRef()
1622 // via a ELF::R_PPC64_TOC relocation (where both symbol and addend are in processRelocationRef()
1624 // symbols (in which case the addend is respected). in processRelocationRef()
1632 Value.Addend += Addend; in processRelocationRef()
1635 RelocationEntry RE(SectionID, Offset, RelType, Value.Addend); in processRelocationRef()
1686 Addend); in processRelocationRef()
1688 resolveRelocation(Section, Offset, StubAddress, RelType, Addend); in processRelocationRef()
1735 // The load of the GOT address has an addend of -4 in processRelocationRef()
1746 Addend); in processRelocationRef()
1748 RelocationEntry RE(SectionID, Offset, ELF::R_X86_64_PC32, Value.Addend, in processRelocationRef()
1756 resolveGOTOffsetRelocation(SectionID, Offset, GOTOffset + Addend); in processRelocationRef()
1765 Value.Addend += support::ulittle32_t::ref(computePlaceholderAddress(SectionID, Offset)); in processRelocationRef()
1768 Value.Addend += support::ulittle64_t::ref(computePlaceholderAddress(SectionID, Offset)); in processRelocationRef()
1775 Value.Addend += support::ulittle32_t::ref(computePlaceholderAddress(SectionID, Offset)); in processRelocationRef()