LLVM 22.0.0git
llvm::AMDGPU::Waitcnt Struct Reference

Represents the counter values to wait for in an s_waitcnt instruction. More...

#include "Target/AMDGPU/Utils/AMDGPUBaseInfo.h"

Public Member Functions

 Waitcnt ()=default
 Waitcnt (unsigned VmCnt, unsigned ExpCnt, unsigned LgkmCnt, unsigned VsCnt)
 Waitcnt (unsigned LoadCnt, unsigned ExpCnt, unsigned DsCnt, unsigned StoreCnt, unsigned SampleCnt, unsigned BvhCnt, unsigned KmCnt, unsigned XCnt, unsigned VaVdst, unsigned VmVsrc)
bool hasWait () const
bool hasWaitExceptStoreCnt () const
bool hasWaitStoreCnt () const
bool hasWaitDepctr () const
Waitcnt combined (const Waitcnt &Other) const

Public Attributes

unsigned LoadCnt = ~0u
unsigned ExpCnt = ~0u
unsigned DsCnt = ~0u
unsigned StoreCnt = ~0u
unsigned SampleCnt = ~0u
unsigned BvhCnt = ~0u
unsigned KmCnt = ~0u
unsigned XCnt = ~0u
unsigned VaVdst = ~0u
unsigned VmVsrc = ~0u

Friends

raw_ostreamoperator<< (raw_ostream &OS, const AMDGPU::Waitcnt &Wait)

Detailed Description

Represents the counter values to wait for in an s_waitcnt instruction.

Large values (including the maximum possible integer) can be used to represent "don't care" waits.

Definition at line 1083 of file AMDGPUBaseInfo.h.

Constructor & Destructor Documentation

◆ Waitcnt() [1/3]

llvm::AMDGPU::Waitcnt::Waitcnt ( )
default

Referenced by combined().

◆ Waitcnt() [2/3]

llvm::AMDGPU::Waitcnt::Waitcnt ( unsigned VmCnt,
unsigned ExpCnt,
unsigned LgkmCnt,
unsigned VsCnt )
inline

Definition at line 1097 of file AMDGPUBaseInfo.h.

References DsCnt, ExpCnt, LoadCnt, and StoreCnt.

◆ Waitcnt() [3/3]

llvm::AMDGPU::Waitcnt::Waitcnt ( unsigned LoadCnt,
unsigned ExpCnt,
unsigned DsCnt,
unsigned StoreCnt,
unsigned SampleCnt,
unsigned BvhCnt,
unsigned KmCnt,
unsigned XCnt,
unsigned VaVdst,
unsigned VmVsrc )
inline

Definition at line 1101 of file AMDGPUBaseInfo.h.

References BvhCnt, DsCnt, ExpCnt, KmCnt, LoadCnt, SampleCnt, StoreCnt, VaVdst, VmVsrc, and XCnt.

Member Function Documentation

◆ combined()

Waitcnt llvm::AMDGPU::Waitcnt::combined ( const Waitcnt & Other) const
inline

Definition at line 1120 of file AMDGPUBaseInfo.h.

References BvhCnt, DsCnt, ExpCnt, KmCnt, LoadCnt, llvm::Other, SampleCnt, StoreCnt, VaVdst, VmVsrc, Waitcnt(), and XCnt.

◆ hasWait()

bool llvm::AMDGPU::Waitcnt::hasWait ( ) const
inline

Definition at line 1108 of file AMDGPUBaseInfo.h.

References hasWaitExceptStoreCnt(), and StoreCnt.

◆ hasWaitDepctr()

bool llvm::AMDGPU::Waitcnt::hasWaitDepctr ( ) const
inline

Definition at line 1118 of file AMDGPUBaseInfo.h.

References VaVdst, and VmVsrc.

◆ hasWaitExceptStoreCnt()

bool llvm::AMDGPU::Waitcnt::hasWaitExceptStoreCnt ( ) const
inline

Definition at line 1110 of file AMDGPUBaseInfo.h.

References BvhCnt, DsCnt, ExpCnt, KmCnt, LoadCnt, SampleCnt, VaVdst, VmVsrc, and XCnt.

Referenced by hasWait().

◆ hasWaitStoreCnt()

bool llvm::AMDGPU::Waitcnt::hasWaitStoreCnt ( ) const
inline

Definition at line 1116 of file AMDGPUBaseInfo.h.

References StoreCnt.

◆ operator<<

raw_ostream & operator<< ( raw_ostream & OS,
const AMDGPU::Waitcnt & Wait )
friend

Definition at line 1722 of file AMDGPUBaseInfo.cpp.

References llvm::Wait.

Member Data Documentation

◆ BvhCnt

unsigned llvm::AMDGPU::Waitcnt::BvhCnt = ~0u

Definition at line 1089 of file AMDGPUBaseInfo.h.

Referenced by combined(), hasWaitExceptStoreCnt(), and Waitcnt().

◆ DsCnt

◆ ExpCnt

unsigned llvm::AMDGPU::Waitcnt::ExpCnt = ~0u

◆ KmCnt

unsigned llvm::AMDGPU::Waitcnt::KmCnt = ~0u

Definition at line 1090 of file AMDGPUBaseInfo.h.

Referenced by combined(), hasWaitExceptStoreCnt(), and Waitcnt().

◆ LoadCnt

◆ SampleCnt

unsigned llvm::AMDGPU::Waitcnt::SampleCnt = ~0u

Definition at line 1088 of file AMDGPUBaseInfo.h.

Referenced by combined(), hasWaitExceptStoreCnt(), and Waitcnt().

◆ StoreCnt

unsigned llvm::AMDGPU::Waitcnt::StoreCnt = ~0u

◆ VaVdst

unsigned llvm::AMDGPU::Waitcnt::VaVdst = ~0u

Definition at line 1092 of file AMDGPUBaseInfo.h.

Referenced by combined(), hasWaitDepctr(), hasWaitExceptStoreCnt(), and Waitcnt().

◆ VmVsrc

unsigned llvm::AMDGPU::Waitcnt::VmVsrc = ~0u

Definition at line 1093 of file AMDGPUBaseInfo.h.

Referenced by combined(), hasWaitDepctr(), hasWaitExceptStoreCnt(), and Waitcnt().

◆ XCnt

unsigned llvm::AMDGPU::Waitcnt::XCnt = ~0u

Definition at line 1091 of file AMDGPUBaseInfo.h.

Referenced by combined(), hasWaitExceptStoreCnt(), and Waitcnt().


The documentation for this struct was generated from the following file: