reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

tools/lld/ELF/Arch/RISCV.cpp
  245     write32le(loc, val);
  248     write64le(loc, val);
  252     checkInt(loc, static_cast<int64_t>(val) >> 1, 8, type);
  253     checkAlignment(loc, val, 2, type);
  254     uint16_t insn = read16le(loc) & 0xE383;
  262     write16le(loc, insn);
  267     checkInt(loc, static_cast<int64_t>(val) >> 1, 11, type);
  268     checkAlignment(loc, val, 2, type);
  269     uint16_t insn = read16le(loc) & 0xE003;
  280     write16le(loc, insn);
  286     checkInt(loc, imm, 6, type);
  288       write16le(loc, (read16le(loc) & 0x0F83) | 0x4000);
  288       write16le(loc, (read16le(loc) & 0x0F83) | 0x4000);
  292       write16le(loc, (read16le(loc) & 0xEF83) | imm17 | imm16_12);
  292       write16le(loc, (read16le(loc) & 0xEF83) | imm17 | imm16_12);
  298     checkInt(loc, static_cast<int64_t>(val) >> 1, 20, type);
  299     checkAlignment(loc, val, 2, type);
  301     uint32_t insn = read32le(loc) & 0xFFF;
  308     write32le(loc, insn);
  313     checkInt(loc, static_cast<int64_t>(val) >> 1, 12, type);
  314     checkAlignment(loc, val, 2, type);
  316     uint32_t insn = read32le(loc) & 0x1FFF07F;
  323     write32le(loc, insn);
  331     checkInt(loc, hi, 20, type);
  333       relocateOne(loc, R_RISCV_PCREL_HI20, val);
  334       relocateOne(loc + 4, R_RISCV_PCREL_LO12_I, val);
  346     checkInt(loc, SignExtend64(hi, bits) >> 12, 20, type);
  347     write32le(loc, (read32le(loc) & 0xFFF) | (hi & 0xFFFFF000));
  347     write32le(loc, (read32le(loc) & 0xFFF) | (hi & 0xFFFFF000));
  356     write32le(loc, (read32le(loc) & 0xFFFFF) | ((lo & 0xFFF) << 20));
  356     write32le(loc, (read32le(loc) & 0xFFFFF) | ((lo & 0xFFF) << 20));
  367     write32le(loc, (read32le(loc) & 0x1FFF07F) | imm11_5 | imm4_0);
  367     write32le(loc, (read32le(loc) & 0x1FFF07F) | imm11_5 | imm4_0);
  372     *loc += val;
  375     write16le(loc, read16le(loc) + val);
  375     write16le(loc, read16le(loc) + val);
  378     write32le(loc, read32le(loc) + val);
  378     write32le(loc, read32le(loc) + val);
  381     write64le(loc, read64le(loc) + val);
  381     write64le(loc, read64le(loc) + val);
  384     *loc = (*loc & 0xc0) | (((*loc & 0x3f) - val) & 0x3f);
  384     *loc = (*loc & 0xc0) | (((*loc & 0x3f) - val) & 0x3f);
  384     *loc = (*loc & 0xc0) | (((*loc & 0x3f) - val) & 0x3f);
  387     *loc -= val;
  390     write16le(loc, read16le(loc) - val);
  390     write16le(loc, read16le(loc) - val);
  393     write32le(loc, read32le(loc) - val);
  393     write32le(loc, read32le(loc) - val);
  396     write64le(loc, read64le(loc) - val);
  396     write64le(loc, read64le(loc) - val);
  399     *loc = (*loc & 0xc0) | (val & 0x3f);
  399     *loc = (*loc & 0xc0) | (val & 0x3f);
  402     *loc = val;
  405     write16le(loc, val);
  409     write32le(loc, val);
  413     write32le(loc, val - dtpOffset);
  416     write64le(loc, val - dtpOffset);
  434     error(getErrorLocation(loc) +