LLVM API Documentation

llvm::AlphaTargetMachine Class Reference

#include <AlphaTargetMachine.h>

Inheritance diagram for llvm::AlphaTargetMachine:
[legend]
Collaboration diagram for llvm::AlphaTargetMachine:
[legend]

List of all members.

Public Member Functions

 AlphaTargetMachine (const Module &M, const std::string &FS)
virtual const AlphaInstrInfo * getInstrInfo () const
virtual const TargetFrameInfo * getFrameInfo () const
virtual const AlphaSubtarget * getSubtargetImpl () const
virtual const AlphaRegisterInfo * getRegisterInfo () const
virtual AlphaTargetLowering * getTargetLowering () const
virtual const TargetData * getTargetData () const
virtual AlphaJITInfo * getJITInfo ()
virtual bool addInstSelector (PassManagerBase &PM, bool Fast)
 Target-Independent Code Generator Pass Configuration Options.
virtual bool addPreEmitPass (PassManagerBase &PM, bool Fast)
virtual bool addAssemblyEmitter (PassManagerBase &PM, bool Fast, raw_ostream &Out)
virtual bool addCodeEmitter (PassManagerBase &PM, bool Fast, bool DumpAsm, MachineCodeEmitter &MCE)
virtual bool addSimpleCodeEmitter (PassManagerBase &PM, bool Fast, bool DumpAsm, MachineCodeEmitter &MCE)

Static Public Member Functions

static unsigned getJITMatchQuality ()
static unsigned getModuleMatchQuality (const Module &M)

Protected Member Functions

virtual const TargetAsmInfo * createTargetAsmInfo () const


Detailed Description

Definition at line 29 of file AlphaTargetMachine.h.


Constructor & Destructor Documentation

AlphaTargetMachine::AlphaTargetMachine ( const Module &  M,
const std::string &  FS 
)


Member Function Documentation

const TargetAsmInfo * AlphaTargetMachine::createTargetAsmInfo (  )  const [protected, virtual]

createTargetAsmInfo - Create a new instance of target specific asm information.

Reimplemented from llvm::TargetMachine.

Definition at line 34 of file AlphaTargetMachine.cpp.

virtual const AlphaInstrInfo* llvm::AlphaTargetMachine::getInstrInfo (  )  const [inline, virtual]

Reimplemented from llvm::TargetMachine.

Definition at line 43 of file AlphaTargetMachine.h.

virtual const TargetFrameInfo* llvm::AlphaTargetMachine::getFrameInfo (  )  const [inline, virtual]

Reimplemented from llvm::TargetMachine.

Definition at line 44 of file AlphaTargetMachine.h.

virtual const AlphaSubtarget* llvm::AlphaTargetMachine::getSubtargetImpl (  )  const [inline, virtual]

getSubtargetImpl - virtual method implemented by subclasses that returns a reference to that target's TargetSubtarget-derived member variable.

Reimplemented from llvm::TargetMachine.

Definition at line 45 of file AlphaTargetMachine.h.

virtual const AlphaRegisterInfo* llvm::AlphaTargetMachine::getRegisterInfo (  )  const [inline, virtual]

getRegisterInfo - If register information is available, return it. If not, return null. This is kept separate from RegInfo until RegInfo has details of graph coloring register allocation removed from it.

Reimplemented from llvm::TargetMachine.

Definition at line 46 of file AlphaTargetMachine.h.

References llvm::AlphaInstrInfo::getRegisterInfo().

virtual AlphaTargetLowering* llvm::AlphaTargetMachine::getTargetLowering (  )  const [inline, virtual]

Reimplemented from llvm::TargetMachine.

Definition at line 49 of file AlphaTargetMachine.h.

virtual const TargetData* llvm::AlphaTargetMachine::getTargetData (  )  const [inline, virtual]

Reimplemented from llvm::TargetMachine.

Definition at line 52 of file AlphaTargetMachine.h.

virtual AlphaJITInfo* llvm::AlphaTargetMachine::getJITInfo (  )  [inline, virtual]

getJITInfo - If this target supports a JIT, return information for it, otherwise return null.

Reimplemented from llvm::TargetMachine.

Definition at line 53 of file AlphaTargetMachine.h.

unsigned AlphaTargetMachine::getJITMatchQuality (  )  [static]

getJITMatchQuality - This static method should be implemented by targets that provide JIT capabilities to indicate how suitable they are for execution on the current host. If a value of 0 is returned, the target will not be used unless an explicit -march option is used.

Reimplemented from llvm::TargetMachine.

Definition at line 57 of file AlphaTargetMachine.cpp.

Referenced by getModuleMatchQuality().

unsigned AlphaTargetMachine::getModuleMatchQuality ( const Module &   )  [static]

getModuleMatchQuality - This static method should be implemented by targets to indicate how closely they match the specified module. This is used by the LLC tool to determine which target to use when an explicit -march option is not specified. If a target returns zero, it will never be chosen without an explicit -march option.

Reimplemented from llvm::TargetMachine.

Definition at line 38 of file AlphaTargetMachine.cpp.

References llvm::Module::AnyEndianness, llvm::Module::AnyPointerSize, llvm::Module::getEndianness(), getJITMatchQuality(), llvm::Module::getPointerSize(), llvm::Module::getTargetTriple(), llvm::Module::LittleEndian, and llvm::Module::Pointer64.

bool AlphaTargetMachine::addInstSelector ( PassManagerBase &  ,
bool   
) [virtual]

Target-Independent Code Generator Pass Configuration Options.

addInstSelector - This method should add any "last minute" LLVM->LLVM passes, then install an instruction selector pass, which converts from LLVM code to machine instructions.

Reimplemented from llvm::LLVMTargetMachine.

Definition at line 79 of file AlphaTargetMachine.cpp.

References llvm::PassManagerBase::add(), and llvm::createAlphaISelDag().

bool AlphaTargetMachine::addPreEmitPass ( PassManagerBase &  ,
bool   
) [virtual]

addPreEmitPass - This pass may be implemented by targets that want to run passes immediately before machine code is emitted. This should return true if -print-machineinstrs should print out the code after the passes.

Reimplemented from llvm::LLVMTargetMachine.

Definition at line 83 of file AlphaTargetMachine.cpp.

References llvm::PassManagerBase::add(), and llvm::createAlphaBranchSelectionPass().

bool AlphaTargetMachine::addAssemblyEmitter ( PassManagerBase &  ,
bool  ,
raw_ostream &   
) [virtual]

addAssemblyEmitter - This pass should be overridden by the target to add the asmprinter, if asm emission is supported. If this is not supported, 'true' should be returned.

Reimplemented from llvm::LLVMTargetMachine.

Definition at line 88 of file AlphaTargetMachine.cpp.

References llvm::PassManagerBase::add(), llvm::createAlphaCodePrinterPass(), and llvm::createAlphaLLRPPass().

bool AlphaTargetMachine::addCodeEmitter ( PassManagerBase &  ,
bool  ,
bool  ,
MachineCodeEmitter &   
) [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. If DumpAsm is true, the generated assembly is printed to cerr.

Reimplemented from llvm::LLVMTargetMachine.

Definition at line 94 of file AlphaTargetMachine.cpp.

References llvm::PassManagerBase::add(), llvm::createAlphaCodeEmitterPass(), llvm::createAlphaCodePrinterPass(), and llvm::errs().

Referenced by addSimpleCodeEmitter().

bool AlphaTargetMachine::addSimpleCodeEmitter ( PassManagerBase &  ,
bool  ,
bool  ,
MachineCodeEmitter &   
) [virtual]

addSimpleCodeEmitter - This pass should be overridden by the target to add a code emitter (without setting flags), if supported. If this is not supported, 'true' should be returned. If DumpAsm is true, the generated assembly is printed to cerr.

Reimplemented from llvm::LLVMTargetMachine.

Definition at line 101 of file AlphaTargetMachine.cpp.

References addCodeEmitter().


The documentation for this class was generated from the following files: