Lines Matching refs:loc

35                      const uint8_t *loc) const override;
36 void relocateOne(uint8_t *loc, RelType type, uint64_t val) const override;
189 const uint8_t *loc) const {
245 errorOrWarn(getErrorLocation(loc) + "relocation R_RISCV_ALIGN requires "
249 error(getErrorLocation(loc) + "unknown relocation (" + Twine(type) +
260 void RISCV::relocateOne(uint8_t *loc, const RelType type,
266 write32le(loc, val);
269 write64le(loc, val);
273 checkInt(loc, static_cast<int64_t>(val) >> 1, 8, type);
274 checkAlignment(loc, val, 2, type);
275 uint16_t insn = read16le(loc) & 0xE383;
283 write16le(loc, insn);
288 checkInt(loc, static_cast<int64_t>(val) >> 1, 11, type);
289 checkAlignment(loc, val, 2, type);
290 uint16_t insn = read16le(loc) & 0xE003;
301 write16le(loc, insn);
307 checkInt(loc, imm, 6, type);
309 write16le(loc, (read16le(loc) & 0x0F83) | 0x4000);
313 write16le(loc, (read16le(loc) & 0xEF83) | imm17 | imm16_12);
319 checkInt(loc, static_cast<int64_t>(val) >> 1, 20, type);
320 checkAlignment(loc, val, 2, type);
322 uint32_t insn = read32le(loc) & 0xFFF;
329 write32le(loc, insn);
334 checkInt(loc, static_cast<int64_t>(val) >> 1, 12, type);
335 checkAlignment(loc, val, 2, type);
337 uint32_t insn = read32le(loc) & 0x1FFF07F;
344 write32le(loc, insn);
352 checkInt(loc, hi, 20, type);
354 relocateOne(loc, R_RISCV_PCREL_HI20, val);
355 relocateOne(loc + 4, R_RISCV_PCREL_LO12_I, val);
367 checkInt(loc, SignExtend64(hi, bits) >> 12, 20, type);
368 write32le(loc, (read32le(loc) & 0xFFF) | (hi & 0xFFFFF000));
377 write32le(loc, (read32le(loc) & 0xFFFFF) | ((lo & 0xFFF) << 20));
388 write32le(loc, (read32le(loc) & 0x1FFF07F) | imm11_5 | imm4_0);
393 *loc += val;
396 write16le(loc, read16le(loc) + val);
399 write32le(loc, read32le(loc) + val);
402 write64le(loc, read64le(loc) + val);
405 *loc = (*loc & 0xc0) | (((*loc & 0x3f) - val) & 0x3f);
408 *loc -= val;
411 write16le(loc, read16le(loc) - val);
414 write32le(loc, read32le(loc) - val);
417 write64le(loc, read64le(loc) - val);
420 *loc = (*loc & 0xc0) | (val & 0x3f);
423 *loc = val;
426 write16le(loc, val);
430 write32le(loc, val);
434 write32le(loc, val - dtpOffset);
437 write64le(loc, val - dtpOffset);