22 explicit LanaiELFObjectWriter(uint8_t OSABI);
24 ~LanaiELFObjectWriter()
override =
default;
30 unsigned Type)
const override;
35LanaiELFObjectWriter::LanaiELFObjectWriter(uint8_t OSABI)
39unsigned LanaiELFObjectWriter::getRelocType(
MCContext & ,
44 unsigned Kind =
static_cast<unsigned>(
Fixup.getKind());
47 Type = ELF::R_LANAI_21;
50 Type = ELF::R_LANAI_21_F;
53 Type = ELF::R_LANAI_25;
57 Type = ELF::R_LANAI_32;
60 Type = ELF::R_LANAI_HI16;
63 Type = ELF::R_LANAI_LO16;
66 Type = ELF::R_LANAI_NONE;
75bool LanaiELFObjectWriter::needsRelocateWithSymbol(
const MCValue &,
77 unsigned Type)
const {
80 case ELF::R_LANAI_21_F:
83 case ELF::R_LANAI_HI16:
90std::unique_ptr<MCObjectTargetWriter>
92 return std::make_unique<LanaiELFObjectWriter>(OSABI);
PowerPC TLS Dynamic Call Fixup
Context object for machine code objects.
virtual bool needsRelocateWithSymbol(const MCValue &Val, const MCSymbol &Sym, unsigned Type) const
virtual unsigned getRelocType(MCContext &Ctx, const MCValue &Target, const MCFixup &Fixup, bool IsPCRel) const =0
Encode information on a single operation to perform on a byte sequence (e.g., an encoded instruction)...
MCSymbol - Instances of this class represent a symbol name in the MC file, and MCSymbols are created ...
This represents an "assembler immediate".
Target - Wrapper for Target specific information.
The instances of the Type class are immutable: once they are created, they are never changed.
#define llvm_unreachable(msg)
Marks that the current location is not supposed to be reachable.
This is an optimization pass for GlobalISel generic memory operations.
@ FK_Data_4
A four-byte fixup.
std::unique_ptr< MCObjectTargetWriter > createLanaiELFObjectWriter(uint8_t OSABI)