LLVM  8.0.1
Public Types | Public Member Functions | Friends | List of all members
llvm::GCNRegPressure Struct Reference

#include "Target/AMDGPU/GCNRegPressure.h"

Public Types

enum  RegKind {
  SGPR32, SGPR_TUPLE, VGPR32, VGPR_TUPLE,
  TOTAL_KINDS
}
 

Public Member Functions

 GCNRegPressure ()
 
bool empty () const
 
void clear ()
 
unsigned getSGPRNum () const
 
unsigned getVGPRNum () const
 
unsigned getVGPRTuplesWeight () const
 
unsigned getSGPRTuplesWeight () const
 
unsigned getOccupancy (const GCNSubtarget &ST) const
 
void inc (unsigned Reg, LaneBitmask PrevMask, LaneBitmask NewMask, const MachineRegisterInfo &MRI)
 
bool higherOccupancy (const GCNSubtarget &ST, const GCNRegPressure &O) const
 
bool less (const GCNSubtarget &ST, const GCNRegPressure &O, unsigned MaxOccupancy=std::numeric_limits< unsigned >::max()) const
 
bool operator== (const GCNRegPressure &O) const
 
bool operator!= (const GCNRegPressure &O) const
 
void print (raw_ostream &OS, const GCNSubtarget *ST=nullptr) const
 
void dump () const
 

Friends

GCNRegPressure max (const GCNRegPressure &P1, const GCNRegPressure &P2)
 

Detailed Description

Definition at line 29 of file GCNRegPressure.h.

Member Enumeration Documentation

◆ RegKind

Enumerator
SGPR32 
SGPR_TUPLE 
VGPR32 
VGPR_TUPLE 
TOTAL_KINDS 

Definition at line 30 of file GCNRegPressure.h.

Constructor & Destructor Documentation

◆ GCNRegPressure()

llvm::GCNRegPressure::GCNRegPressure ( )
inline

Definition at line 38 of file GCNRegPressure.h.

References clear().

Member Function Documentation

◆ clear()

void llvm::GCNRegPressure::clear ( )
inline

◆ dump()

void llvm::GCNRegPressure::dump ( ) const
inline

Definition at line 78 of file GCNRegPressure.h.

References llvm::dbgs(), max, print(), and TOTAL_KINDS.

Referenced by llvm::DWARFListTableBase< DWARFDebugRnglist >::dump().

◆ empty()

bool llvm::GCNRegPressure::empty ( ) const
inline

Definition at line 42 of file GCNRegPressure.h.

References getSGPRNum(), and getVGPRNum().

Referenced by llvm::GCNIterativeScheduler::scheduleRegion().

◆ getOccupancy()

unsigned llvm::GCNRegPressure::getOccupancy ( const GCNSubtarget ST) const
inline

◆ getSGPRNum()

unsigned llvm::GCNRegPressure::getSGPRNum ( ) const
inline

Definition at line 46 of file GCNRegPressure.h.

References SGPR32.

Referenced by empty(), getMopState(), getOccupancy(), less(), and print().

◆ getSGPRTuplesWeight()

unsigned llvm::GCNRegPressure::getSGPRTuplesWeight ( ) const
inline

Definition at line 50 of file GCNRegPressure.h.

References SGPR_TUPLE.

Referenced by less(), and print().

◆ getVGPRNum()

unsigned llvm::GCNRegPressure::getVGPRNum ( ) const
inline

Definition at line 47 of file GCNRegPressure.h.

References VGPR32.

Referenced by empty(), getMopState(), getOccupancy(), less(), and print().

◆ getVGPRTuplesWeight()

unsigned llvm::GCNRegPressure::getVGPRTuplesWeight ( ) const
inline

Definition at line 49 of file GCNRegPressure.h.

References VGPR_TUPLE.

Referenced by less(), and print().

◆ higherOccupancy()

bool llvm::GCNRegPressure::higherOccupancy ( const GCNSubtarget ST,
const GCNRegPressure O 
) const
inline

◆ inc()

void GCNRegPressure::inc ( unsigned  Reg,
LaneBitmask  PrevMask,
LaneBitmask  NewMask,
const MachineRegisterInfo MRI 
)

◆ less()

bool GCNRegPressure::less ( const GCNSubtarget ST,
const GCNRegPressure O,
unsigned  MaxOccupancy = std::numeric_limits<unsigned>::max() 
) const

◆ operator!=()

bool llvm::GCNRegPressure::operator!= ( const GCNRegPressure O) const
inline

Definition at line 73 of file GCNRegPressure.h.

References llvm::RISCVFenceField::O, and print().

◆ operator==()

bool llvm::GCNRegPressure::operator== ( const GCNRegPressure O) const
inline

Definition at line 69 of file GCNRegPressure.h.

References llvm::lltok::equal, and TOTAL_KINDS.

◆ print()

LLVM_DUMP_METHOD void GCNRegPressure::print ( raw_ostream OS,
const GCNSubtarget ST = nullptr 
) const

Friends And Related Function Documentation

◆ max

GCNRegPressure max ( const GCNRegPressure P1,
const GCNRegPressure P2 
)
friend

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