Home | History | Annotate | Download | only in Targets

Lines Matching refs:Value

93     RelocationValueRef Value;
95 Value = *ValueOrErr;
100 makeValueAddendPCRel(Value, RelI, 8);
103 processBranchRelocation(RE, Value, Stubs);
105 RE.Addend = Value.Offset;
106 if (Value.SymbolName)
107 addRelocationForSymbol(RE, Value.SymbolName);
109 addRelocationForSection(RE, Value.SectionID);
115 void resolveRelocation(const RelocationEntry &RE, uint64_t Value) override {
116 DEBUG(dumpRelocationToResolve(RE, Value));
120 // If the relocation is PC-relative, the value to be encoded is the
124 Value -= FinalAddress;
128 Value -= 8;
133 writeBytesUnaligned(Value + RE.Addend, LocalAddress, 1 << RE.Size);
136 // Mask the value into the target address. We know instructions are
138 Value += RE.Addend;
139 // The low two bits of the value are not encoded.
140 Value >>= 2;
141 // Mask the value to 24 bits.
142 uint64_t FinalValue = Value & 0xffffff;
147 // Insert the value into the instruction.
156 assert((Value == SectionABase || Value == SectionBBase) &&
157 "Unexpected HALFSECTDIFF relocation value.");
158 Value = SectionABase - SectionBBase + RE.Addend;
160 Value = (Value >> 16);
161 Value &= 0xffff;
164 Insn = (Insn & 0xfff0f000) | ((Value & 0xf000) << 4) | (Value & 0x0fff);
188 const RelocationValueRef &Value,
193 RuntimeDyldMachO::StubMap::const_iterator i = Stubs.find(Value);
199 Stubs[Value] = Section.getStubOffset();
204 MachO::GENERIC_RELOC_VANILLA, Value.Offset, false, 2);
205 if (Value.SymbolName)
206 addRelocationForSymbol(StubRE, Value.SymbolName);
208 addRelocationForSection(StubRE, Value.SectionID);