LLVM 24.0.0git
llvm::NVPTXISD Namespace Reference

Enumerations

enum  NodeType : unsigned {
  SETP_F16X2 = GENERATED_OPCODE_END , SETP_BF16X2 , UNPACK_VECTOR , FIRST_MEMORY_OPCODE ,
  ATOMIC_CMP_SWAP_B128 = FIRST_MEMORY_OPCODE , ATOMIC_SWAP_B128 , ATOMIC_LOAD_B128 , ATOMIC_STORE_B128 ,
  LoadV2 , LoadV4 , LoadV8 , MLoad ,
  LDUV2 , LDUV4 , StoreV2 , StoreV4 ,
  StoreV8 , LAST_MEMORY_OPCODE = StoreV8
}

Enumeration Type Documentation

◆ NodeType

Enumerator
SETP_F16X2 
SETP_BF16X2 
UNPACK_VECTOR 
FIRST_MEMORY_OPCODE 
ATOMIC_CMP_SWAP_B128 

These nodes are used to lower atomic instructions with i128 type.

They are similar to the generic nodes, but the input and output values are split into two 64-bit values. ValLo, ValHi, OUTCHAIN = ATOMIC_CMP_SWAP_B128(INCHAIN, ptr, cmpLo, cmpHi, swapLo, swapHi) ValLo, ValHi, OUTCHAIN = ATOMIC_SWAP_B128(INCHAIN, ptr, amtLo, amtHi) ValLo, ValHi, OUTCHAIN = ATOMIC_LOAD_B128(INCHAIN, ptr) OUTCHAIN = ATOMIC_STORE_B128(INCHAIN, ptr, valLo, valHi)

ATOMIC_SWAP_B128 
ATOMIC_LOAD_B128 
ATOMIC_STORE_B128 
LoadV2 
LoadV4 
LoadV8 
MLoad 
LDUV2 
LDUV4 
StoreV2 
StoreV4 
StoreV8 
LAST_MEMORY_OPCODE 

Definition at line 20 of file NVPTXSelectionDAGInfo.h.