LLVM 20.0.0git
Namespaces | Typedefs | Enumerations | Functions
llvm::NVPTX Namespace Reference

Namespaces

namespace  PTXCmpMode
 PTXCmpMode - Comparison mode enumeration.
 
namespace  PTXCvtMode
 PTXCvtMode - Conversion code enumeration.
 
namespace  PTXLdStInstCode
 
namespace  PTXPrmtMode
 

Typedefs

using OrderingUnderlyingType = unsigned int
 
using ScopeUnderlyingType = unsigned int
 
using AddressSpaceUnderlyingType = unsigned int
 

Enumerations

enum  DrvInterface { NVCL , CUDA }
 
enum  VecInstType {
  VecInstTypeShift = 0 , VecInstTypeMask = 0xF , VecNOP = 0 , VecLoad = 1 ,
  VecStore = 2 , VecBuild = 3 , VecShuffle = 4 , VecExtract = 5 ,
  VecInsert = 6 , VecDest = 7 , VecOther = 15
}
 
enum  SimpleMove { SimpleMoveMask = 0x10 , SimpleMoveShift = 4 }
 
enum  LoadStore { isLoadMask = 0x20 , isLoadShift = 5 , isStoreMask = 0x40 , isStoreShift = 6 }
 
enum  Ordering : OrderingUnderlyingType {
  NotAtomic , Relaxed = (OrderingUnderlyingType)AtomicOrdering::Monotonic , Acquire = (OrderingUnderlyingType)AtomicOrdering::Acquire , Release = (OrderingUnderlyingType)AtomicOrdering::Release ,
  AcquireRelease = (OrderingUnderlyingType)AtomicOrdering::AcquireRelease , SequentiallyConsistent , Volatile = SequentiallyConsistent + 1 , RelaxedMMIO = Volatile + 1 ,
  LASTORDERING = RelaxedMMIO
}
 
enum  Scope : ScopeUnderlyingType {
  Thread = 0 , Block = 1 , Cluster = 2 , Device = 3 ,
  System = 4 , LASTSCOPE = System
}
 
enum  AddressSpace : AddressSpaceUnderlyingType {
  Generic = 0 , Global = 1 , Shared = 3 , Const = 4 ,
  Local = 5 , Param = 101
}
 

Functions

std::string getValidPTXIdentifier (StringRef Name)
 
std::string OrderingToString (Ordering Order)
 
raw_ostreamoperator<< (raw_ostream &O, Ordering Order)
 
std::string ScopeToString (Scope S)
 
raw_ostreamoperator<< (raw_ostream &O, Scope S)
 
std::string AddressSpaceToString (AddressSpace A)
 
raw_ostreamoperator<< (raw_ostream &O, AddressSpace A)
 

Typedef Documentation

◆ AddressSpaceUnderlyingType

Definition at line 142 of file NVPTX.h.

◆ OrderingUnderlyingType

Definition at line 115 of file NVPTX.h.

◆ ScopeUnderlyingType

Definition at line 132 of file NVPTX.h.

Enumeration Type Documentation

◆ AddressSpace

Enumerator
Generic 
Global 
Shared 
Const 
Local 
Param 

Definition at line 143 of file NVPTX.h.

◆ DrvInterface

Enumerator
NVCL 
CUDA 

Definition at line 78 of file NVPTX.h.

◆ LoadStore

Enumerator
isLoadMask 
isLoadShift 
isStoreMask 
isStoreShift 

Definition at line 107 of file NVPTX.h.

◆ Ordering

Enumerator
NotAtomic 
Relaxed 
Acquire 
Release 
AcquireRelease 
SequentiallyConsistent 
Volatile 
RelaxedMMIO 
LASTORDERING 

Definition at line 116 of file NVPTX.h.

◆ Scope

Enumerator
Thread 
Block 
Cluster 
Device 
System 
LASTSCOPE 

Definition at line 133 of file NVPTX.h.

◆ SimpleMove

Enumerator
SimpleMoveMask 
SimpleMoveShift 

Definition at line 103 of file NVPTX.h.

◆ VecInstType

Enumerator
VecInstTypeShift 
VecInstTypeMask 
VecNOP 
VecLoad 
VecStore 
VecBuild 
VecShuffle 
VecExtract 
VecInsert 
VecDest 
VecOther 

Definition at line 88 of file NVPTX.h.

Function Documentation

◆ AddressSpaceToString()

std::string llvm::NVPTX::AddressSpaceToString ( AddressSpace  A)
inline

Definition at line 152 of file NVPTXUtilities.h.

References A, Const, llvm::formatv(), Generic, Global, Local, Param, llvm::report_fatal_error(), and Shared.

Referenced by operator<<().

◆ getValidPTXIdentifier()

std::string llvm::NVPTX::getValidPTXIdentifier ( StringRef  Name)
inline

Definition at line 88 of file NVPTXUtilities.h.

References llvm::CallingConv::C, and Name.

Referenced by llvm::NVPTXTargetStreamer::emitValue().

◆ operator<<() [1/3]

raw_ostream & llvm::NVPTX::operator<< ( raw_ostream O,
AddressSpace  A 
)
inline

Definition at line 171 of file NVPTXUtilities.h.

References A, and AddressSpaceToString().

◆ operator<<() [2/3]

raw_ostream & llvm::NVPTX::operator<< ( raw_ostream O,
Ordering  Order 
)
inline

Definition at line 125 of file NVPTXUtilities.h.

References OrderingToString().

◆ operator<<() [3/3]

raw_ostream & llvm::NVPTX::operator<< ( raw_ostream O,
Scope  S 
)
inline

Definition at line 147 of file NVPTXUtilities.h.

References ScopeToString().

◆ OrderingToString()

std::string llvm::NVPTX::OrderingToString ( Ordering  Order)
inline

◆ ScopeToString()

std::string llvm::NVPTX::ScopeToString ( Scope  S)
inline

Definition at line 130 of file NVPTXUtilities.h.

References Block, Cluster, Device, llvm::formatv(), llvm::report_fatal_error(), System, and Thread.

Referenced by operator<<().