LLVM 20.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.
 
 ~NVPTXSubtarget () override
 
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 hasAtomCas16 () const
 
bool hasClusters () const
 
bool hasLDG () const
 
bool hasHWROT32 () const
 
bool hasFP16Math () const
 
bool hasBF16Math () const
 
bool allowFP16Math () const
 
bool hasMaskOperator () const
 
bool hasNoReturn () const
 
bool hasMemoryOrdering () const
 
bool hasRelaxedMMIO () const
 
bool hasDotInstructions () const
 
bool hasPTXASUnreachableBug () const
 
bool hasCvtaParam () 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)
 
void failIfClustersUnsupported (std::string const &FailureMessage) const
 

Detailed Description

Definition at line 30 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 55 of file NVPTXSubtarget.cpp.

◆ ~NVPTXSubtarget()

NVPTXSubtarget::~NVPTXSubtarget ( )
overridedefault

Member Function Documentation

◆ allowFP16Math()

bool NVPTXSubtarget::allowFP16Math ( ) const

Definition at line 70 of file NVPTXSubtarget.cpp.

References hasFP16Math(), and NoF16Math.

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

◆ failIfClustersUnsupported()

void NVPTXSubtarget::failIfClustersUnsupported ( std::string const FailureMessage) const

◆ 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 105 of file NVPTXSubtarget.h.

Referenced by failIfClustersUnsupported(), 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 123 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 * NVPTXSubtarget::getSelectionDAGInfo ( ) const
override

Definition at line 66 of file NVPTXSubtarget.cpp.

◆ 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 114 of file NVPTXSubtarget.h.

◆ hasAAFeatures()

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

Definition at line 113 of file NVPTXSubtarget.h.

References getFullSmVersion().

◆ hasAtomAddF64()

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

Definition at line 75 of file NVPTXSubtarget.h.

References SmVersion.

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

◆ hasAtomBitwise64()

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

Definition at line 77 of file NVPTXSubtarget.h.

References SmVersion.

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

◆ hasAtomCas16()

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

Definition at line 79 of file NVPTXSubtarget.h.

References SmVersion.

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

◆ hasAtomMinMax64()

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

Definition at line 78 of file NVPTXSubtarget.h.

References SmVersion.

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

◆ hasAtomScope()

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

Definition at line 76 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().

◆ hasClusters()

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

Definition at line 80 of file NVPTXSubtarget.h.

References SmVersion.

Referenced by failIfClustersUnsupported().

◆ hasCvtaParam()

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

Definition at line 104 of file NVPTXSubtarget.h.

References SmVersion.

◆ hasDotInstructions()

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

Definition at line 93 of file NVPTXSubtarget.h.

References SmVersion.

◆ 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 82 of file NVPTXSubtarget.h.

References SmVersion.

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

◆ hasLDG()

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

Definition at line 81 of file NVPTXSubtarget.h.

References SmVersion.

Referenced by canLowerToLDG().

◆ hasMaskOperator()

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

Definition at line 86 of file NVPTXSubtarget.h.

◆ hasMemoryOrdering()

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

Definition at line 90 of file NVPTXSubtarget.h.

References SmVersion.

◆ hasNoReturn()

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

Definition at line 87 of file NVPTXSubtarget.h.

References SmVersion.

◆ hasPTXASUnreachableBug()

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

Definition at line 103 of file NVPTXSubtarget.h.

◆ hasRelaxedMMIO()

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

Definition at line 92 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: