LLVM API Documentation

llvm::SparcTargetMachine Class Reference

#include <SparcTargetMachine.h>

Inheritance diagram for llvm::SparcTargetMachine:

Inheritance graph
[legend]
Collaboration diagram for llvm::SparcTargetMachine:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 SparcTargetMachine (const Module &M, const std::string &FS)
virtual const SparcInstrInfogetInstrInfo () const
virtual const TargetFrameInfogetFrameInfo () const
virtual const TargetSubtargetgetSubtargetImpl () const
virtual const MRegisterInfogetRegisterInfo () const
virtual bool addPassesToEmitFile (PassManager &PM, std::ostream &Out, CodeGenFileType FileType, bool Fast)

Static Public Member Functions

static unsigned getModuleMatchQuality (const Module &M)

Detailed Description

Definition at line 27 of file SparcTargetMachine.h.


Constructor & Destructor Documentation

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

SparcTargetMachine ctor - Create an ILP32 architecture model

Definition at line 33 of file SparcTargetMachine.cpp.


Member Function Documentation

bool SparcTargetMachine::addPassesToEmitFile ( PassManager PM,
std::ostream &  Out,
CodeGenFileType  FileType,
bool  Fast 
) [virtual]

addPassesToEmitFile - Add passes to the specified pass manager to implement a static compiler for this target.

Definition at line 61 of file SparcTargetMachine.cpp.

References llvm::PassManager::add(), llvm::TargetMachine::AssemblyFile, llvm::createLoopStrengthReducePass(), llvm::createLowerGCPass(), llvm::createLowerInvokePass(), llvm::createMachineCodeDeleter(), llvm::createMachineFunctionPrinterPass(), llvm::createPrologEpilogCodeInserter(), llvm::createRegisterAllocator(), llvm::createSparcCodePrinterPass(), llvm::createSparcDelaySlotFillerPass(), llvm::createSparcFPMoverPass(), llvm::createSparcISelDag(), llvm::createUnreachableBlockEliminationPass(), and llvm::PrintMachineCode.

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

Reimplemented from llvm::TargetMachine.

Definition at line 35 of file SparcTargetMachine.h.

virtual const SparcInstrInfo* llvm::SparcTargetMachine::getInstrInfo (  )  const [inline, virtual]

Reimplemented from llvm::TargetMachine.

Definition at line 34 of file SparcTargetMachine.h.

unsigned SparcTargetMachine::getModuleMatchQuality ( const Module M  )  [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 39 of file SparcTargetMachine.cpp.

References llvm::Module::AnyEndianness, llvm::Module::AnyPointerSize, llvm::Module::BigEndian, llvm::Module::getEndianness(), llvm::Module::getPointerSize(), llvm::Module::getTargetTriple(), M, and llvm::Module::Pointer32.

virtual const MRegisterInfo* llvm::SparcTargetMachine::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 37 of file SparcTargetMachine.h.

References llvm::SparcInstrInfo::getRegisterInfo().

virtual const TargetSubtarget* llvm::SparcTargetMachine::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 36 of file SparcTargetMachine.h.


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