Go to the documentation of this file.
13 #ifndef LLVM_LIB_TARGET_AARCH64_MCTARGETDESC_AARCH64MCTARGETDESC_H
14 #define LLVM_LIB_TARGET_AARCH64_MCTARGETDESC_AARCH64MCTARGETDESC_H
22 class formatted_raw_ostream;
30 class MCObjectTargetWriter;
32 class MCSubtargetInfo;
33 class MCTargetOptions;
34 class MCTargetStreamer;
40 const MCSubtargetInfo &STI,
41 const MCRegisterInfo &
MRI,
42 const MCTargetOptions &
Options);
44 const MCSubtargetInfo &STI,
45 const MCRegisterInfo &
MRI,
46 const MCTargetOptions &
Options);
48 std::unique_ptr<MCObjectTargetWriter>
51 std::unique_ptr<MCObjectTargetWriter>
58 formatted_raw_ostream &OS,
59 MCInstPrinter *InstPrint,
62 namespace AArch64_MC {
79 #define GET_REGINFO_ENUM
80 #include "AArch64GenRegisterInfo.inc"
84 #define GET_INSTRINFO_ENUM
85 #define GET_INSTRINFO_MC_HELPER_DECLS
86 #include "AArch64GenInstrInfo.inc"
88 #define GET_SUBTARGETINFO_ENUM
89 #include "AArch64GenSubtargetInfo.inc"
This is an optimization pass for GlobalISel generic memory operations.
bool isQForm(const MCInst &MI, const MCInstrInfo *MCII)
MCTargetStreamer * createAArch64AsmTargetStreamer(MCStreamer &S, formatted_raw_ostream &OS, MCInstPrinter *InstPrint, bool isVerboseAsm)
Instances of this class represent a single low-level machine instruction.
std::unique_ptr< MCObjectTargetWriter > createAArch64WinCOFFObjectWriter()
std::unique_ptr< MCObjectTargetWriter > createAArch64ELFObjectWriter(uint8_t OSABI, bool IsILP32)
std::unique_ptr< MCObjectTargetWriter > createAArch64MachObjectWriter(uint32_t CPUType, uint32_t CPUSubtype, bool IsILP32)
const char LLVMTargetMachineRef LLVMPassBuilderOptionsRef Options
MCAsmBackend * createAArch64beAsmBackend(const Target &T, const MCSubtargetInfo &STI, const MCRegisterInfo &MRI, const MCTargetOptions &Options)
bool isFpOrNEON(const MCInst &MI, const MCInstrInfo *MCII)
add sub stmia L5 ldr r0 bl L_printf $stub Instead of a and a wouldn t it be better to do three moves *Return an aggregate type is even return S
MCRegisterInfo base class - We assume that the target defines a static array of MCRegisterDesc object...
unsigned const MachineRegisterInfo * MRI
void initLLVMToCVRegMapping(MCRegisterInfo *MRI)
Interface to description of machine instruction set.
MCAsmBackend * createAArch64leAsmBackend(const Target &T, const MCSubtargetInfo &STI, const MCRegisterInfo &MRI, const MCTargetOptions &Options)
MCCodeEmitter * createAArch64MCCodeEmitter(const MCInstrInfo &MCII, MCContext &Ctx)