class SuperRegClassIterator

Declaration

class SuperRegClassIterator { /* full declaration omitted */ };

Declared at: llvm/include/llvm/CodeGen/TargetRegisterInfo.h:1141

Member Variables

private const unsigned int RCMaskWords
private unsigned int SubReg = 0
private const uint16_t* Idx
private const uint32_t* Mask

Method Overview

  • public SuperRegClassIterator(const llvm::TargetRegisterClass * RC, const llvm::TargetRegisterInfo * TRI, bool IncludeSelf = false)
  • public const uint32_t * getMask() const
  • public unsigned int getSubReg() const
  • public bool isValid() const

Methods

SuperRegClassIterator(
    const llvm::TargetRegisterClass* RC,
    const llvm::TargetRegisterInfo* TRI,
    bool IncludeSelf = false)

Description

Create a SuperRegClassIterator that visits all the super-register classes of RC. When IncludeSelf is set, also include the (0, sub-classes) entry.

Declared at: llvm/include/llvm/CodeGen/TargetRegisterInfo.h:1150

Parameters

const llvm::TargetRegisterClass* RC
const llvm::TargetRegisterInfo* TRI
bool IncludeSelf = false

const uint32_t* getMask() const

Description

Returns the bit mask of register classes that getSubReg() projects into RC. See TargetRegisterClass::getSubClassMask() for how to use it.

Declared at: llvm/include/llvm/CodeGen/TargetRegisterInfo.h:1168

unsigned int getSubReg() const

Description

Returns the current sub-register index.

Declared at: llvm/include/llvm/CodeGen/TargetRegisterInfo.h:1163

bool isValid() const

Description

Returns true if this iterator is still pointing at a valid entry.

Declared at: llvm/include/llvm/CodeGen/TargetRegisterInfo.h:1160