LLVM 22.0.0git
LaneBitmask.h File Reference

A common definition of LaneBitmask for use in TableGen and CodeGen. More...

Go to the source code of this file.

Classes

struct  llvm::LaneBitmask

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.

Functions

Printable llvm::PrintLaneMask (LaneBitmask LaneMask)
 Create Printable object to print LaneBitmasks on a raw_ostream.

Detailed Description

A common definition of LaneBitmask for use in TableGen and CodeGen.

A lane mask is a bitmask representing the covering of a register with sub-registers.

This is typically used to track liveness at sub-register granularity. Lane masks for sub-register indices are similar to register units for physical registers. The individual bits in a lane mask can't be assigned any specific meaning. They can be used to check if two sub-register indices overlap.

Iff the target has a register such that:

getSubReg(Reg, A) overlaps getSubReg(Reg, B)

then:

(getSubRegIndexLaneMask(A) & getSubRegIndexLaneMask(B)) != 0

Definition in file LaneBitmask.h.