31 AArch64WinCOFFObjectWriter(
const Triple &TheTriple)
32 : MCWinCOFFObjectTargetWriter(TheTriple.isWindowsArm64EC()
36 ~AArch64WinCOFFObjectWriter()
override =
default;
38 unsigned getRelocType(MCContext &Ctx,
const MCValue &Target,
39 const MCFixup &
Fixup,
bool IsCrossSection,
40 const MCAsmBackend &MAB)
const override;
42 bool recordRelocation(
const MCFixup &)
const override;
47unsigned AArch64WinCOFFObjectWriter::getRelocType(
51 bool PCRel =
Fixup.isPCRel();
65 auto Spec =
Target.getSpecifier();
66 const MCExpr *Expr =
Fixup.getValue();
77 "relocation specifier " +
79 " unsupported on COFF targets");
88 "relocation specifier " +
90 " unsupported on COFF targets");
94 " unsupported on COFF targets");
158bool AArch64WinCOFFObjectWriter::recordRelocation(
const MCFixup &
Fixup)
const {
162std::unique_ptr<MCObjectTargetWriter>
164 return std::make_unique<AArch64WinCOFFObjectWriter>(TheTriple);
Analysis containing CSE Info
PowerPC TLS Dynamic Call Fixup
Generic interface to target specific assembler backends.
virtual MCFixupKindInfo getFixupKindInfo(MCFixupKind Kind) const
Get information on a fixup kind.
Context object for machine code objects.
LLVM_ABI void reportError(SMLoc L, const Twine &Msg)
Encode information on a single operation to perform on a byte sequence (e.g., an encoded instruction)...
Target - Wrapper for Target specific information.
Triple - Helper class for working with autoconf configuration names.
Specifier getSymbolLoc(Specifier S)
@ fixup_aarch64_ldst_imm12_scale4
@ fixup_aarch64_pcrel_call26
@ fixup_aarch64_pcrel_branch26
@ fixup_aarch64_pcrel_branch19
@ fixup_aarch64_pcrel_adr_imm21
@ fixup_aarch64_pcrel_branch14
@ fixup_aarch64_ldst_imm12_scale2
@ fixup_aarch64_ldst_imm12_scale16
@ fixup_aarch64_pcrel_adrp_imm21
@ fixup_aarch64_add_imm12
@ fixup_aarch64_ldst_imm12_scale8
@ fixup_aarch64_ldst_imm12_scale1
StringRef getSpecifierName(Specifier S)
Return the string representation of the ELF relocation specifier (e.g.
@ IMAGE_FILE_MACHINE_ARM64
@ IMAGE_FILE_MACHINE_ARM64EC
@ IMAGE_REL_ARM64_BRANCH19
@ IMAGE_REL_ARM64_SECREL_LOW12A
@ IMAGE_REL_ARM64_SECTION
@ IMAGE_REL_ARM64_SECREL_HIGH12A
@ IMAGE_REL_ARM64_ABSOLUTE
@ IMAGE_REL_ARM64_PAGEOFFSET_12A
@ IMAGE_REL_ARM64_BRANCH14
@ IMAGE_REL_ARM64_BRANCH26
@ IMAGE_REL_ARM64_PAGEOFFSET_12L
@ IMAGE_REL_ARM64_SECREL_LOW12L
@ IMAGE_REL_ARM64_ADDR32NB
@ IMAGE_REL_ARM64_PAGEBASE_REL21
This is an optimization pass for GlobalISel generic memory operations.
decltype(auto) dyn_cast(const From &Val)
dyn_cast<X> - Return the argument parameter cast to the specified type.
std::unique_ptr< MCObjectTargetWriter > createAArch64WinCOFFObjectWriter(const Triple &TheTriple)
static Lanai::Fixups FixupKind(const MCExpr *Expr)
@ FK_SecRel_2
A two-byte section relative fixup.
@ FK_Data_8
A eight-byte fixup.
@ FK_Data_4
A four-byte fixup.
@ FK_SecRel_4
A four-byte section relative fixup.