|
LLVM
4.0.0
|
#include <MipsTargetMachine.h>
Public Member Functions | |
| MipsTargetMachine (const Target &T, const Triple &TT, StringRef CPU, StringRef FS, const TargetOptions &Options, Optional< Reloc::Model > RM, CodeModel::Model CM, CodeGenOpt::Level OL, bool isLittle) | |
| ~MipsTargetMachine () override | |
| TargetIRAnalysis | getTargetIRAnalysis () override |
| Get a TargetIRAnalysis implementation for the target. More... | |
| const MipsSubtarget * | getSubtargetImpl () const |
| const MipsSubtarget * | getSubtargetImpl (const Function &F) const override |
| Virtual method implemented by subclasses that returns a reference to that target's TargetSubtargetInfo-derived member variable. More... | |
| void | resetSubtarget (MachineFunction *MF) |
| Reset the subtarget for the Mips target. More... | |
| TargetPassConfig * | createPassConfig (PassManagerBase &PM) override |
| Create a pass configuration object to be used by addPassToEmitX methods for generating a pipeline of CodeGen passes. More... | |
| TargetLoweringObjectFile * | getObjFileLowering () const override |
| bool | isLittleEndian () const |
| const MipsABIInfo & | getABI () const |
Public Member Functions inherited from llvm::LLVMTargetMachine | |
| bool | addPassesToEmitFile (PassManagerBase &PM, raw_pwrite_stream &Out, CodeGenFileType FileType, bool DisableVerify=true, AnalysisID StartBefore=nullptr, AnalysisID StartAfter=nullptr, AnalysisID StopBefore=nullptr, AnalysisID StopAfter=nullptr, MachineFunctionInitializer *MFInitializer=nullptr) override |
| Add passes to the specified pass manager to get the specified file emitted. More... | |
| bool | addPassesToEmitMC (PassManagerBase &PM, MCContext *&Ctx, raw_pwrite_stream &OS, bool DisableVerify=true) override |
| Add passes to the specified pass manager to get machine code emitted with the MCJIT. More... | |
Public Member Functions inherited from llvm::TargetMachine | |
| TargetMachine (const TargetMachine &)=delete | |
| void | operator= (const TargetMachine &)=delete |
| virtual | ~TargetMachine () |
| const Target & | getTarget () const |
| const Triple & | getTargetTriple () const |
| StringRef | getTargetCPU () const |
| StringRef | getTargetFeatureString () const |
| template<typename STC > | |
| const STC & | getSubtarget (const Function &F) const |
| This method returns a pointer to the specified type of TargetSubtargetInfo. More... | |
| const DataLayout | createDataLayout () const |
| Create a DataLayout. More... | |
| bool | isCompatibleDataLayout (const DataLayout &Candidate) const |
| Test if a DataLayout if compatible with the CodeGen for this target. More... | |
| unsigned | getPointerSize () const |
| Get the pointer size for this target. More... | |
| void | resetTargetOptions (const Function &F) const |
| Reset the target options based on the function's attributes. More... | |
| const MCAsmInfo * | getMCAsmInfo () const |
| Return target specific asm information. More... | |
| const MCRegisterInfo * | getMCRegisterInfo () const |
| const MCInstrInfo * | getMCInstrInfo () const |
| const MCSubtargetInfo * | getMCSubtargetInfo () const |
| virtual const TargetIntrinsicInfo * | getIntrinsicInfo () const |
| If intrinsic information is available, return it. If not, return null. More... | |
| bool | requiresStructuredCFG () const |
| void | setRequiresStructuredCFG (bool Value) |
| Reloc::Model | getRelocationModel () const |
| Returns the code generation relocation model. More... | |
| CodeModel::Model | getCodeModel () const |
| Returns the code model. More... | |
| bool | isPositionIndependent () const |
| bool | shouldAssumeDSOLocal (const Module &M, const GlobalValue *GV) const |
| TLSModel::Model | getTLSModel (const GlobalValue *GV) const |
| Returns the TLS model which should be used for the given global variable. More... | |
| CodeGenOpt::Level | getOptLevel () const |
| Returns the optimization level: None, Less, Default, or Aggressive. More... | |
| void | setOptLevel (CodeGenOpt::Level Level) |
| Overrides the optimization level. More... | |
| void | setFastISel (bool Enable) |
| bool | getO0WantsFastISel () |
| void | setO0WantsFastISel (bool Enable) |
| bool | shouldPrintMachineCode () const |
| bool | getUniqueSectionNames () const |
| bool | getDataSections () const |
| Return true if data objects should be emitted into their own section, corresponds to -fdata-sections. More... | |
| bool | getFunctionSections () const |
| Return true if functions should be emitted into their own section, corresponding to -ffunction-sections. More... | |
| virtual void | addEarlyAsPossiblePasses (PassManagerBase &) |
| Add target-specific function passes that should be run as early as possible in the optimization pipeline. More... | |
| virtual bool | targetSchedulesPostRAScheduling () const |
| True if subtarget inserts the final scheduling pass on its own. More... | |
| void | getNameWithPrefix (SmallVectorImpl< char > &Name, const GlobalValue *GV, Mangler &Mang, bool MayAlwaysUsePrivate=false) const |
| MCSymbol * | getSymbol (const GlobalValue *GV) const |
| virtual bool | usesPhysRegsForPEI () const |
| True if the target uses physical regs at Prolog/Epilog insertion time. More... | |
Definition at line 29 of file MipsTargetMachine.h.
| MipsTargetMachine::MipsTargetMachine | ( | const Target & | T, |
| const Triple & | TT, | ||
| StringRef | CPU, | ||
| StringRef | FS, | ||
| const TargetOptions & | Options, | ||
| Optional< Reloc::Model > | RM, | ||
| CodeModel::Model | CM, | ||
| CodeGenOpt::Level | OL, | ||
| bool | isLittle | ||
| ) |
Definition at line 96 of file MipsTargetMachine.cpp.
References llvm::LLVMTargetMachine::initAsmInfo().
|
override |
Definition at line 116 of file MipsTargetMachine.cpp.
|
overridevirtual |
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 218 of file MipsTargetMachine.cpp.
|
inline |
Definition at line 69 of file MipsTargetMachine.h.
Referenced by llvm::MipsTargetLowering::createFastISel(), llvm::MipsAsmPrinter::EmitStartOfAsmFile(), and llvm::MipsSubtarget::getABI().
|
inlineoverridevirtual |
Reimplemented from llvm::TargetMachine.
Definition at line 64 of file MipsTargetMachine.h.
|
inline |
Definition at line 50 of file MipsTargetMachine.h.
Referenced by resetSubtarget().
|
overridevirtual |
Virtual method implemented by subclasses that returns a reference to that target's TargetSubtargetInfo-derived member variable.
Reimplemented from llvm::TargetMachine.
Definition at line 139 of file MipsTargetMachine.cpp.
References llvm::StringRef::empty(), llvm::Function::getFnAttribute(), llvm::Attribute::getValueAsString(), llvm::Attribute::hasAttribute(), llvm::Function::hasFnAttribute(), I, llvm::Attribute::None, llvm::TargetMachine::resetTargetOptions(), llvm::StringRef::str(), llvm::TargetMachine::TargetCPU, llvm::TargetMachine::TargetFS, and llvm::TargetMachine::TargetTriple.
|
overridevirtual |
Get a TargetIRAnalysis implementation for the target.
This analysis will produce a TTI result which uses the common code generator to answer queries about the IR.
Reimplemented from llvm::LLVMTargetMachine.
Definition at line 243 of file MipsTargetMachine.cpp.
References llvm::MipsSubtarget::allowMixed16_32(), DEBUG, llvm::errs(), F, llvm::Module::getDataLayout(), and llvm::GlobalValue::getParent().
|
inline |
Definition at line 68 of file MipsTargetMachine.h.
Referenced by assureFPCallStub(), createFPFnStub(), and llvm::MipsAsmPrinter::EmitStartOfAsmFile().
| void MipsTargetMachine::resetSubtarget | ( | MachineFunction * | MF | ) |
Reset the subtarget for the Mips target.
Definition at line 180 of file MipsTargetMachine.cpp.
References llvm::dbgs(), DEBUG, llvm::MachineFunction::getFunction(), getSubtargetImpl(), and llvm::MachineFunction::setSubtarget().
1.8.6