LLVM API Documentation

Public Member Functions | Protected Member Functions
llvm::LLVMTargetMachine Class Reference

#include <TargetMachine.h>

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

List of all members.

Public Member Functions

void addAnalysisPasses (PassManagerBase &PM) override
 Register analysis passes for this target with a pass manager.
virtual TargetPassConfigcreatePassConfig (PassManagerBase &PM)
bool addPassesToEmitFile (PassManagerBase &PM, formatted_raw_ostream &Out, CodeGenFileType FileType, bool DisableVerify=true, AnalysisID StartAfter=nullptr, AnalysisID StopAfter=nullptr) override
bool addPassesToEmitMC (PassManagerBase &PM, MCContext *&Ctx, raw_ostream &OS, bool DisableVerify=true) override

Protected Member Functions

 LLVMTargetMachine (const Target &T, StringRef TargetTriple, StringRef CPU, StringRef FS, TargetOptions Options, Reloc::Model RM, CodeModel::Model CM, CodeGenOpt::Level OL)
void initAsmInfo ()

Detailed Description

LLVMTargetMachine - This class describes a target machine that is implemented with the LLVM target-independent code generator.

Definition at line 224 of file Target/TargetMachine.h.


Constructor & Destructor Documentation

LLVMTargetMachine::LLVMTargetMachine ( const Target T,
StringRef  TargetTriple,
StringRef  CPU,
StringRef  FS,
TargetOptions  Options,
Reloc::Model  RM,
CodeModel::Model  CM,
CodeGenOpt::Level  OL 
) [protected]

Member Function Documentation

void LLVMTargetMachine::addAnalysisPasses ( PassManagerBase &  PM) [override, virtual]

Register analysis passes for this target with a pass manager.

This registers target independent analysis passes.

Reimplemented from llvm::TargetMachine.

Reimplemented in llvm::AMDGPUTargetMachine, llvm::AArch64TargetMachine, llvm::PPCTargetMachine, llvm::MipsTargetMachine, llvm::ARMBaseTargetMachine, llvm::final< T >, and llvm::XCoreTargetMachine.

Definition at line 79 of file LLVMTargetMachine.cpp.

References llvm::createBasicTargetTransformInfoPass().

Referenced by addPassesToGenerateCode().

bool LLVMTargetMachine::addPassesToEmitFile ( PassManagerBase &  PM,
formatted_raw_ostream Out,
CodeGenFileType  FileType,
bool  DisableVerify = true,
AnalysisID  StartAfter = nullptr,
AnalysisID  StopAfter = nullptr 
) [override, virtual]
bool LLVMTargetMachine::addPassesToEmitMC ( PassManagerBase &  PM,
MCContext *&  Ctx,
raw_ostream Out,
bool  DisableVerify = true 
) [override, virtual]
TargetPassConfig * LLVMTargetMachine::createPassConfig ( PassManagerBase &  PM) [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 in llvm::MipsTargetMachine, llvm::NVPTXTargetMachine, llvm::AMDGPUTargetMachine, llvm::ARMBaseTargetMachine, llvm::final< T >, llvm::AArch64TargetMachine, llvm::HexagonTargetMachine, llvm::SystemZTargetMachine, llvm::MSP430TargetMachine, llvm::PPCTargetMachine, llvm::SparcTargetMachine, and llvm::XCoreTargetMachine.

Definition at line 273 of file Passes.cpp.

Referenced by addPassesToGenerateCode().

void LLVMTargetMachine::initAsmInfo ( ) [protected]

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