LLVM API Documentation
#include <ARMTargetMachine.h>
Public Member Functions | |
ARMBaseTargetMachine (const Target &T, StringRef TT, StringRef CPU, StringRef FS, const TargetOptions &Options, Reloc::Model RM, CodeModel::Model CM, CodeGenOpt::Level OL) | |
virtual ARMJITInfo * | getJITInfo () |
virtual const ARMSubtarget * | getSubtargetImpl () const |
virtual const ARMTargetLowering * | getTargetLowering () const |
virtual const InstrItineraryData * | getInstrItineraryData () const |
virtual void | addAnalysisPasses (PassManagerBase &PM) |
Register ARM analysis passes with a pass manager. More... | |
virtual TargetPassConfig * | createPassConfig (PassManagerBase &PM) |
virtual bool | addCodeEmitter (PassManagerBase &PM, JITCodeEmitter &MCE) |
![]() | |
virtual bool | addPassesToEmitFile (PassManagerBase &PM, formatted_raw_ostream &Out, CodeGenFileType FileType, bool DisableVerify=true, AnalysisID StartAfter=0, AnalysisID StopAfter=0) |
virtual bool | addPassesToEmitMachineCode (PassManagerBase &PM, JITCodeEmitter &MCE, bool DisableVerify=true) |
virtual bool | addPassesToEmitMC (PassManagerBase &PM, MCContext *&Ctx, raw_ostream &OS, bool DisableVerify=true) |
![]() | |
virtual | ~TargetMachine () |
const Target & | getTarget () const |
const StringRef | getTargetTriple () const |
const StringRef | getTargetCPU () const |
const StringRef | getTargetFeatureString () const |
void | resetTargetOptions (const MachineFunction *MF) const |
Reset the target options based on the function's attributes. More... | |
virtual const TargetInstrInfo * | getInstrInfo () const |
virtual const TargetFrameLowering * | getFrameLowering () const |
virtual const TargetSelectionDAGInfo * | getSelectionDAGInfo () const |
virtual const DataLayout * | getDataLayout () const |
const MCAsmInfo * | getMCAsmInfo () const |
template<typename STC > | |
const STC & | getSubtarget () const |
virtual const TargetRegisterInfo * | getRegisterInfo () const |
virtual const TargetIntrinsicInfo * | getIntrinsicInfo () const |
bool | hasMCRelaxAll () const |
void | setMCRelaxAll (bool Value) |
bool | hasMCSaveTempLabels () const |
void | setMCSaveTempLabels (bool Value) |
bool | hasMCNoExecStack () const |
hasMCNoExecStack - Check whether an executable stack is not needed. More... | |
void | setMCNoExecStack (bool Value) |
setMCNoExecStack - Set whether an executabel stack is not needed. More... | |
bool | hasMCUseLoc () const |
hasMCUseLoc - Check whether we should use dwarf's .loc directive. More... | |
void | setMCUseLoc (bool Value) |
setMCUseLoc - Set whether all we should use dwarf's .loc directive. More... | |
bool | hasMCUseCFI () const |
hasMCUseCFI - Check whether we should use dwarf's .cfi_* directives. More... | |
void | setMCUseCFI (bool Value) |
setMCUseCFI - Set whether all we should use dwarf's .cfi_* directives. More... | |
bool | hasMCUseDwarfDirectory () const |
void | setMCUseDwarfDirectory (bool Value) |
Reloc::Model | getRelocationModel () const |
CodeModel::Model | getCodeModel () const |
TLSModel::Model | getTLSModel (const GlobalValue *GV) const |
CodeGenOpt::Level | getOptLevel () const |
void | setOptLevel (CodeGenOpt::Level Level) const |
Overrides the optimization level. More... | |
void | setFastISel (bool Enable) |
bool | shouldPrintMachineCode () const |
Protected Attributes | |
ARMSubtarget | Subtarget |
![]() | |
const Target & | TheTarget |
TheTarget - The Target that this machine was created for. More... | |
std::string | TargetTriple |
std::string | TargetCPU |
std::string | TargetFS |
MCCodeGenInfo * | CodeGenInfo |
const MCAsmInfo * | AsmInfo |
unsigned | MCRelaxAll: 1 |
unsigned | MCNoExecStack: 1 |
unsigned | MCSaveTempLabels: 1 |
unsigned | MCUseLoc: 1 |
unsigned | MCUseCFI: 1 |
unsigned | MCUseDwarfDirectory: 1 |
Definition at line 33 of file ARMTargetMachine.h.
ARMBaseTargetMachine::ARMBaseTargetMachine | ( | const Target & | T, |
StringRef | TT, | ||
StringRef | CPU, | ||
StringRef | FS, | ||
const TargetOptions & | Options, | ||
Reloc::Model | RM, | ||
CodeModel::Model | CM, | ||
CodeGenOpt::Level | OL | ||
) |
TargetMachine ctor - Create an ARM architecture model.
Definition at line 45 of file ARMTargetMachine.cpp.
References llvm::FloatABI::Default, llvm::TargetOptions::FloatABIType, and llvm::FloatABI::Soft.
|
virtual |
Register ARM analysis passes with a pass manager.
Reimplemented from llvm::LLVMTargetMachine.
Definition at line 59 of file ARMTargetMachine.cpp.
References llvm::createARMTargetTransformInfoPass(), and llvm::createBasicTargetTransformInfoPass().
|
virtual |
addCodeEmitter - This pass should be overridden by the target to add a code emitter, if supported. If this is not supported, 'true' should be returned.
Reimplemented from llvm::LLVMTargetMachine.
Definition at line 227 of file ARMTargetMachine.cpp.
References llvm::createARMJITCodeEmitterPass().
|
virtual |
createPassConfig - Create a pass configuration object to be used by addPassToEmitX methods for generating a pipeline of CodeGen passes.
createPassConfig - Create a pass configuration object to be used by addPassToEmitX methods for generating a pipeline of CodeGen passes.
Targets may override this to extend TargetPassConfig.
Reimplemented from llvm::LLVMTargetMachine.
Definition at line 147 of file ARMTargetMachine.cpp.
|
inlinevirtual |
getInstrItineraryData - Returns instruction itinerary data for the target or specific subtarget.
Reimplemented from llvm::TargetMachine.
Definition at line 53 of file ARMTargetMachine.h.
|
inlinevirtual |
getJITInfo - If this target supports a JIT, return information for it, otherwise return null.
Reimplemented from llvm::TargetMachine.
Definition at line 47 of file ARMTargetMachine.h.
|
inlinevirtual |
getSubtargetImpl - virtual method implemented by subclasses that returns a reference to that target's TargetSubtargetInfo-derived member variable.
Reimplemented from llvm::TargetMachine.
Definition at line 48 of file ARMTargetMachine.h.
References Subtarget.
|
inlinevirtual |
Reimplemented from llvm::TargetMachine.
Reimplemented in llvm::ThumbTargetMachine, and llvm::ARMTargetMachine.
Definition at line 49 of file ARMTargetMachine.h.
References llvm_unreachable.
|
protected |
Definition at line 35 of file ARMTargetMachine.h.
Referenced by llvm::ARMTargetMachine::ARMTargetMachine(), and getSubtargetImpl().