23 LoongArchELFObjectWriter(uint8_t OSABI,
bool Is64Bit);
25 ~LoongArchELFObjectWriter()
override;
33LoongArchELFObjectWriter::LoongArchELFObjectWriter(uint8_t OSABI,
bool Is64Bit)
37LoongArchELFObjectWriter::~LoongArchELFObjectWriter() {}
39unsigned LoongArchELFObjectWriter::getRelocType(
MCContext &Ctx,
52 return ELF::R_LARCH_NONE;
55 return ELF::R_LARCH_NONE;
58 return ELF::R_LARCH_NONE;
60 return IsPCRel ? ELF::R_LARCH_32_PCREL : ELF::R_LARCH_32;
62 return IsPCRel ? ELF::R_LARCH_64_PCREL : ELF::R_LARCH_64;
64 return ELF::R_LARCH_B16;
66 return ELF::R_LARCH_B21;
68 return ELF::R_LARCH_B26;
70 return ELF::R_LARCH_ABS_HI20;
72 return ELF::R_LARCH_ABS_LO12;
74 return ELF::R_LARCH_ABS64_LO20;
76 return ELF::R_LARCH_ABS64_HI12;
78 return ELF::R_LARCH_TLS_LE_HI20;
80 return ELF::R_LARCH_TLS_LE_LO12;
82 return ELF::R_LARCH_TLS_LE64_LO20;
84 return ELF::R_LARCH_TLS_LE64_HI12;
89std::unique_ptr<MCObjectTargetWriter>
91 return std::make_unique<LoongArchELFObjectWriter>(OSABI, Is64Bit);
PowerPC TLS Dynamic Call Fixup
Context object for machine code objects.
void reportError(SMLoc L, const Twine &Msg)
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)...
This represents an "assembler immediate".
Target - Wrapper for Target specific information.
@ fixup_loongarch_abs64_hi12
@ fixup_loongarch_tls_le_lo12
@ fixup_loongarch_abs_hi20
@ fixup_loongarch_abs_lo12
@ fixup_loongarch_abs64_lo20
@ fixup_loongarch_tls_le64_hi12
@ fixup_loongarch_tls_le64_lo20
@ fixup_loongarch_tls_le_hi20
This is an optimization pass for GlobalISel generic memory operations.
std::unique_ptr< MCObjectTargetWriter > createLoongArchELFObjectWriter(uint8_t OSABI, bool Is64Bit)
@ FirstLiteralRelocationKind
The range [FirstLiteralRelocationKind, MaxTargetFixupKind) is used for relocations coming from ....
@ FK_Data_8
A eight-byte fixup.
@ FK_Data_1
A one-byte fixup.
@ FK_Data_4
A four-byte fixup.
@ FK_Data_2
A two-byte fixup.