LLVM: llvm::RegisterBankInfo::PartialMapping Struct Reference (original) (raw)

Helper struct that represents how a value is partially mapped into a register. More...

#include "[llvm/CodeGen/RegisterBankInfo.h](RegisterBankInfo%5F8h%5Fsource.html)"

Public Member Functions
PartialMapping ()=default
constexpr PartialMapping (unsigned StartIdx, unsigned Length, const RegisterBank &RegBank)
Provide a shortcut for quickly building PartialMapping.
unsigned getHighBitIdx () const
void dump () const
Print this partial mapping on dbgs() stream.
void print (raw_ostream &OS) const
Print this partial mapping on OS;.
bool verify (const RegisterBankInfo &RBI) const
Check that the Mask is compatible with the RegBank.
Public Attributes
unsigned StartIdx
Number of bits at which this partial mapping starts in the original value.
unsigned Length
Length of this mapping in bits.
const RegisterBank * RegBank
Register bank where the partial value lives.

Helper struct that represents how a value is partially mapped into a register.

The StartIdx and Length represent what region of the orginal value this partial mapping covers. This can be represented as a Mask of contiguous bit starting at StartIdx bit and spanning Length bits. StartIdx is the number of bits from the less significant bits.

Definition at line 49 of file RegisterBankInfo.h.

llvm::RegisterBankInfo::PartialMapping::PartialMapping ( ) default

PartialMapping() [2/2]

dump()

getHighBitIdx()

unsigned llvm::RegisterBankInfo::PartialMapping::getHighBitIdx ( ) const inline

print()

void RegisterBankInfo::PartialMapping::print ( raw_ostream & OS ) const

verify()

Length

unsigned llvm::RegisterBankInfo::PartialMapping::Length

RegBank

Register bank where the partial value lives.

Definition at line 61 of file RegisterBankInfo.h.

Referenced by llvm::RegBankSelect::applyMapping(), llvm::AMDGPURegisterBankInfo::applyMappingBFE(), llvm::AMDGPURegisterBankInfo::applyMappingImpl(), llvm::AMDGPURegisterBankInfo::applyMappingLoad(), llvm::AMDGPURegisterBankInfo::applyMappingSBufferLoad(), llvm::RegBankSelect::assignmentMatch(), llvm::ARM::checkPartMapping(), llvm::RegisterBankInfo::OperandsMapper::createVRegs(), llvm::AMDGPURegisterBankInfo::getBreakDownCost(), llvm::RegBankSelect::getRepairCost(), llvm::hash_value(), PartialMapping(), print(), and verify().

StartIdx

unsigned llvm::RegisterBankInfo::PartialMapping::StartIdx


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