LLVM 20.0.0git
|
#include "MCTargetDesc/AArch64FixupKinds.h"
#include "MCTargetDesc/AArch64MCExpr.h"
#include "MCTargetDesc/AArch64MCTargetDesc.h"
#include "Utils/AArch64BaseInfo.h"
#include "llvm/BinaryFormat/MachO.h"
#include "llvm/MC/MCAsmBackend.h"
#include "llvm/MC/MCAssembler.h"
#include "llvm/MC/MCContext.h"
#include "llvm/MC/MCDirectives.h"
#include "llvm/MC/MCELFObjectWriter.h"
#include "llvm/MC/MCFixupKindInfo.h"
#include "llvm/MC/MCObjectWriter.h"
#include "llvm/MC/MCRegisterInfo.h"
#include "llvm/MC/MCSectionELF.h"
#include "llvm/MC/MCSectionMachO.h"
#include "llvm/MC/MCSubtargetInfo.h"
#include "llvm/MC/MCTargetOptions.h"
#include "llvm/MC/MCValue.h"
#include "llvm/MC/TargetRegistry.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/MathExtras.h"
#include "llvm/TargetParser/Triple.h"
#include "llvm/BinaryFormat/ELFRelocs/AArch64.def"
Go to the source code of this file.
Namespaces | |
namespace | CU |
Macros | |
#define | ELF_RELOC(X, Y) .Case(#X, Y) |
Functions | |
static unsigned | getFixupKindNumBytes (unsigned Kind) |
The number of bytes the fixup may change. | |
static unsigned | AdrImmBits (unsigned Value) |
static uint64_t | adjustFixupValue (const MCFixup &Fixup, const MCValue &Target, uint64_t Value, MCContext &Ctx, const Triple &TheTriple, bool IsResolved) |
|
static |
Definition at line 154 of file AArch64AsmBackend.cpp.
References AdrImmBits(), assert(), Fixup, llvm::AArch64::fixup_aarch64_add_imm12, llvm::AArch64::fixup_aarch64_ldr_pcrel_imm19, llvm::AArch64::fixup_aarch64_ldst_imm12_scale1, llvm::AArch64::fixup_aarch64_ldst_imm12_scale16, llvm::AArch64::fixup_aarch64_ldst_imm12_scale2, llvm::AArch64::fixup_aarch64_ldst_imm12_scale4, llvm::AArch64::fixup_aarch64_ldst_imm12_scale8, llvm::AArch64::fixup_aarch64_movw, llvm::AArch64::fixup_aarch64_pcrel_adr_imm21, llvm::AArch64::fixup_aarch64_pcrel_adrp_imm21, llvm::AArch64::fixup_aarch64_pcrel_branch14, llvm::AArch64::fixup_aarch64_pcrel_branch16, llvm::AArch64::fixup_aarch64_pcrel_branch19, llvm::AArch64::fixup_aarch64_pcrel_branch26, llvm::AArch64::fixup_aarch64_pcrel_call26, llvm::FK_Data_1, llvm::FK_Data_2, llvm::FK_Data_4, llvm::FK_Data_8, llvm::FK_SecRel_2, llvm::FK_SecRel_4, llvm::AArch64MCExpr::getAddressFrag(), llvm::AArch64MCExpr::getSymbolLoc(), llvm::Triple::isOSBinFormatCOFF(), llvm_unreachable, llvm::MCContext::reportError(), llvm::AArch64MCExpr::VK_ABS, llvm::AArch64MCExpr::VK_G0, llvm::AArch64MCExpr::VK_G1, llvm::AArch64MCExpr::VK_G2, llvm::AArch64MCExpr::VK_G3, llvm::AArch64MCExpr::VK_NC, and llvm::AArch64MCExpr::VK_SABS.
Referenced by llvm::CSKYAsmBackend::applyFixup(), llvm::LoongArchAsmBackend::applyFixup(), llvm::MipsAsmBackend::applyFixup(), llvm::RISCVAsmBackend::applyFixup(), and llvm::XtensaMCAsmBackend::applyFixup().
Definition at line 148 of file AArch64AsmBackend.cpp.
Referenced by adjustFixupValue().
The number of bytes the fixup may change.
Definition at line 110 of file AArch64AsmBackend.cpp.
References llvm::AArch64::fixup_aarch64_add_imm12, llvm::AArch64::fixup_aarch64_ldr_pcrel_imm19, llvm::AArch64::fixup_aarch64_ldst_imm12_scale1, llvm::AArch64::fixup_aarch64_ldst_imm12_scale16, llvm::AArch64::fixup_aarch64_ldst_imm12_scale2, llvm::AArch64::fixup_aarch64_ldst_imm12_scale4, llvm::AArch64::fixup_aarch64_ldst_imm12_scale8, llvm::AArch64::fixup_aarch64_movw, llvm::AArch64::fixup_aarch64_pcrel_adr_imm21, llvm::AArch64::fixup_aarch64_pcrel_adrp_imm21, llvm::AArch64::fixup_aarch64_pcrel_branch14, llvm::AArch64::fixup_aarch64_pcrel_branch16, llvm::AArch64::fixup_aarch64_pcrel_branch19, llvm::AArch64::fixup_aarch64_pcrel_branch26, llvm::AArch64::fixup_aarch64_pcrel_call26, llvm::FK_Data_1, llvm::FK_Data_2, llvm::FK_Data_4, llvm::FK_Data_8, llvm::FK_SecRel_2, llvm::FK_SecRel_4, and llvm_unreachable.
Referenced by llvm::ARMAsmBackend::applyFixup().