LLVM 23.0.0git
llvm::SPIRV::RequirementHandler Struct Reference

#include "Target/SPIRV/SPIRVModuleAnalysis.h"

Public Member Functions

 RequirementHandler ()=default
void clear ()
const CapabilityListgetMinimalCapabilities () const
const SmallSet< Extension::Extension, 4 > & getExtensions () const
void addCapabilities (const CapabilityList &ToAdd)
void addCapability (Capability::Capability ToAdd)
void addExtensions (const ExtensionList &ToAdd)
void addExtension (Extension::Extension ToAdd)
void addRequirements (const Requirements &Req)
void getAndAddRequirements (SPIRV::OperandCategory::OperandCategory Category, uint32_t i, const SPIRVSubtarget &ST)
void checkSatisfiable (const SPIRVSubtarget &ST) const
void initAvailableCapabilities (const SPIRVSubtarget &ST)
void addAvailableCaps (const CapabilityList &ToAdd)
bool isCapabilityAvailable (Capability::Capability Cap) const
void removeCapabilityIf (const Capability::Capability ToRemove, const Capability::Capability IfPresent)

Detailed Description

Definition at line 62 of file SPIRVModuleAnalysis.h.

Constructor & Destructor Documentation

◆ RequirementHandler()

llvm::SPIRV::RequirementHandler::RequirementHandler ( )
default

Member Function Documentation

◆ addAvailableCaps()

void SPIRV::RequirementHandler::addAvailableCaps ( const CapabilityList & ToAdd)

◆ addCapabilities()

void SPIRV::RequirementHandler::addCapabilities ( const CapabilityList & ToAdd)

Definition at line 832 of file SPIRVModuleAnalysis.cpp.

References llvm::getSymbolicOperandCapabilities().

Referenced by addCapability(), and addRequirements().

◆ addCapability()

void llvm::SPIRV::RequirementHandler::addCapability ( Capability::Capability ToAdd)
inline

◆ addExtension()

◆ addExtensions()

void llvm::SPIRV::RequirementHandler::addExtensions ( const ExtensionList & ToAdd)
inline

Definition at line 102 of file SPIRVModuleAnalysis.h.

Referenced by addRequirements().

◆ addRequirements()

◆ checkSatisfiable()

◆ clear()

void llvm::SPIRV::RequirementHandler::clear ( )
inline

Definition at line 85 of file SPIRVModuleAnalysis.h.

◆ getAndAddRequirements()

void SPIRV::RequirementHandler::getAndAddRequirements ( SPIRV::OperandCategory::OperandCategory Category,
uint32_t i,
const SPIRVSubtarget & ST )

◆ getExtensions()

const SmallSet< Extension::Extension, 4 > & llvm::SPIRV::RequirementHandler::getExtensions ( ) const
inline

Definition at line 94 of file SPIRVModuleAnalysis.h.

◆ getMinimalCapabilities()

const CapabilityList & llvm::SPIRV::RequirementHandler::getMinimalCapabilities ( ) const
inline

Definition at line 93 of file SPIRVModuleAnalysis.h.

◆ initAvailableCapabilities()

void llvm::SPIRV::RequirementHandler::initAvailableCapabilities ( const SPIRVSubtarget & ST)

◆ isCapabilityAvailable()

bool llvm::SPIRV::RequirementHandler::isCapabilityAvailable ( Capability::Capability Cap) const
inline

Definition at line 119 of file SPIRVModuleAnalysis.h.

Referenced by getSymbolicOperandRequirements().

◆ removeCapabilityIf()

void SPIRV::RequirementHandler::removeCapabilityIf ( const Capability::Capability ToRemove,
const Capability::Capability IfPresent )

Definition at line 945 of file SPIRVModuleAnalysis.cpp.

References llvm::erase(), and ToRemove.

Referenced by addInstrRequirements().


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