LLVM 19.0.0git
Public Member Functions | List of all members
llvm::NVPTXSubtarget Class Reference

#include "Target/NVPTX/NVPTXSubtarget.h"

Inheritance diagram for llvm::NVPTXSubtarget:
Inheritance graph
[legend]

Public Member Functions

 NVPTXSubtarget (const Triple &TT, const std::string &CPU, const std::string &FS, const NVPTXTargetMachine &TM)
 This constructor initializes the data members to match that of the specified module.
 
const TargetFrameLoweringgetFrameLowering () const override
 
const NVPTXInstrInfogetInstrInfo () const override
 
const NVPTXRegisterInfogetRegisterInfo () const override
 
const NVPTXTargetLoweringgetTargetLowering () const override
 
const SelectionDAGTargetInfogetSelectionDAGInfo () const override
 
bool hasAtomAddF64 () const
 
bool hasAtomScope () const
 
bool hasAtomBitwise64 () const
 
bool hasAtomMinMax64 () const
 
bool hasLDG () const
 
bool hasHWROT32 () const
 
bool hasImageHandles () const
 
bool hasFP16Math () const
 
bool hasBF16Math () const
 
bool allowFP16Math () const
 
bool hasMaskOperator () const
 
bool hasNoReturn () const
 
unsigned int getFullSmVersion () const
 
unsigned int getSmVersion () const
 
bool hasAAFeatures () const
 
std::string getTargetName () const
 
unsigned getMaxRequiredAlignment () const
 
unsigned getPTXVersion () const
 
NVPTXSubtargetinitializeSubtargetDependencies (StringRef CPU, StringRef FS)
 
void ParseSubtargetFeatures (StringRef CPU, StringRef TuneCPU, StringRef FS)
 

Detailed Description

Definition at line 31 of file NVPTXSubtarget.h.

Constructor & Destructor Documentation

◆ NVPTXSubtarget()

NVPTXSubtarget::NVPTXSubtarget ( const Triple TT,
const std::string &  CPU,
const std::string &  FS,
const NVPTXTargetMachine TM 
)

This constructor initializes the data members to match that of the specified module.

Definition at line 52 of file NVPTXSubtarget.cpp.

Member Function Documentation

◆ allowFP16Math()

bool NVPTXSubtarget::allowFP16Math ( ) const

Definition at line 69 of file NVPTXSubtarget.cpp.

References hasFP16Math(), and NoF16Math.

Referenced by llvm::NVPTXTargetLowering::NVPTXTargetLowering().

◆ getFrameLowering()

const TargetFrameLowering * llvm::NVPTXSubtarget::getFrameLowering ( ) const
inlineoverride

Definition at line 62 of file NVPTXSubtarget.h.

◆ getFullSmVersion()

unsigned int llvm::NVPTXSubtarget::getFullSmVersion ( ) const
inline

Definition at line 88 of file NVPTXSubtarget.h.

Referenced by getSmVersion(), and hasAAFeatures().

◆ getInstrInfo()

const NVPTXInstrInfo * llvm::NVPTXSubtarget::getInstrInfo ( ) const
inlineoverride

Definition at line 65 of file NVPTXSubtarget.h.

◆ getMaxRequiredAlignment()

unsigned llvm::NVPTXSubtarget::getMaxRequiredAlignment ( ) const
inline

Definition at line 106 of file NVPTXSubtarget.h.

Referenced by llvm::NVPTXTargetLowering::LowerCall().

◆ getPTXVersion()

unsigned llvm::NVPTXSubtarget::getPTXVersion ( ) const
inline

◆ getRegisterInfo()

const NVPTXRegisterInfo * llvm::NVPTXSubtarget::getRegisterInfo ( ) const
inlineoverride

◆ getSelectionDAGInfo()

const SelectionDAGTargetInfo * llvm::NVPTXSubtarget::getSelectionDAGInfo ( ) const
inlineoverride

Definition at line 72 of file NVPTXSubtarget.h.

◆ getSmVersion()

unsigned int llvm::NVPTXSubtarget::getSmVersion ( ) const
inline

◆ getTargetLowering()

const NVPTXTargetLowering * llvm::NVPTXSubtarget::getTargetLowering ( ) const
inlineoverride

Definition at line 69 of file NVPTXSubtarget.h.

Referenced by llvm::NVPTXTargetLowering::LowerFormalArguments().

◆ getTargetName()

std::string llvm::NVPTXSubtarget::getTargetName ( ) const
inline

Definition at line 97 of file NVPTXSubtarget.h.

◆ hasAAFeatures()

bool llvm::NVPTXSubtarget::hasAAFeatures ( ) const
inline

Definition at line 96 of file NVPTXSubtarget.h.

References getFullSmVersion().

◆ hasAtomAddF64()

bool llvm::NVPTXSubtarget::hasAtomAddF64 ( ) const
inline

Definition at line 76 of file NVPTXSubtarget.h.

References SmVersion.

Referenced by llvm::NVPTXTargetLowering::shouldExpandAtomicRMWInIR().

◆ hasAtomBitwise64()

bool llvm::NVPTXSubtarget::hasAtomBitwise64 ( ) const
inline

Definition at line 78 of file NVPTXSubtarget.h.

References SmVersion.

Referenced by llvm::NVPTXTargetLowering::shouldExpandAtomicRMWInIR().

◆ hasAtomMinMax64()

bool llvm::NVPTXSubtarget::hasAtomMinMax64 ( ) const
inline

Definition at line 79 of file NVPTXSubtarget.h.

References SmVersion.

Referenced by llvm::NVPTXTargetLowering::shouldExpandAtomicRMWInIR().

◆ hasAtomScope()

bool llvm::NVPTXSubtarget::hasAtomScope ( ) const
inline

Definition at line 77 of file NVPTXSubtarget.h.

References SmVersion.

◆ hasBF16Math()

bool llvm::NVPTXSubtarget::hasBF16Math ( ) const
inline

Definition at line 84 of file NVPTXSubtarget.h.

References SmVersion.

Referenced by llvm::NVPTXTargetLowering::NVPTXTargetLowering().

◆ hasFP16Math()

bool llvm::NVPTXSubtarget::hasFP16Math ( ) const
inline

Definition at line 83 of file NVPTXSubtarget.h.

References SmVersion.

Referenced by allowFP16Math().

◆ hasHWROT32()

bool llvm::NVPTXSubtarget::hasHWROT32 ( ) const
inline

Definition at line 81 of file NVPTXSubtarget.h.

References SmVersion.

◆ hasImageHandles()

bool NVPTXSubtarget::hasImageHandles ( ) const

◆ hasLDG()

bool llvm::NVPTXSubtarget::hasLDG ( ) const
inline

Definition at line 80 of file NVPTXSubtarget.h.

References SmVersion.

Referenced by canLowerToLDG().

◆ hasMaskOperator()

bool llvm::NVPTXSubtarget::hasMaskOperator ( ) const
inline

Definition at line 86 of file NVPTXSubtarget.h.

◆ hasNoReturn()

bool llvm::NVPTXSubtarget::hasNoReturn ( ) const
inline

Definition at line 87 of file NVPTXSubtarget.h.

References SmVersion.

◆ initializeSubtargetDependencies()

NVPTXSubtarget & NVPTXSubtarget::initializeSubtargetDependencies ( StringRef  CPU,
StringRef  FS 
)

◆ ParseSubtargetFeatures()

void llvm::NVPTXSubtarget::ParseSubtargetFeatures ( StringRef  CPU,
StringRef  TuneCPU,
StringRef  FS 
)

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