LLVM 20.0.0git
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
llvm::LaneBitmask Struct Reference

#include "llvm/MC/LaneBitmask.h"

Public Types

enum  : unsigned { BitWidth = 8*sizeof(Type) }
 
using Type = uint64_t
 

Public Member Functions

constexpr LaneBitmask ()=default
 
constexpr LaneBitmask (Type V)
 
constexpr bool operator== (LaneBitmask M) const
 
constexpr bool operator!= (LaneBitmask M) const
 
constexpr bool operator< (LaneBitmask M) const
 
constexpr bool none () const
 
constexpr bool any () const
 
constexpr bool all () const
 
constexpr LaneBitmask operator~ () const
 
constexpr LaneBitmask operator| (LaneBitmask M) const
 
constexpr LaneBitmask operator& (LaneBitmask M) const
 
LaneBitmaskoperator|= (LaneBitmask M)
 
LaneBitmaskoperator&= (LaneBitmask M)
 
constexpr Type getAsInteger () const
 
unsigned getNumLanes () const
 
unsigned getHighestLane () const
 

Static Public Member Functions

static constexpr LaneBitmask getNone ()
 
static constexpr LaneBitmask getAll ()
 
static constexpr LaneBitmask getLane (unsigned Lane)
 

Static Public Attributes

static constexpr const char *const FormatStr = "%016llX"
 

Detailed Description

Definition at line 40 of file LaneBitmask.h.

Member Typedef Documentation

◆ Type

Definition at line 42 of file LaneBitmask.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum : unsigned
Enumerator
BitWidth 

Definition at line 43 of file LaneBitmask.h.

Constructor & Destructor Documentation

◆ LaneBitmask() [1/2]

constexpr llvm::LaneBitmask::LaneBitmask ( )
constexprdefault

◆ LaneBitmask() [2/2]

constexpr llvm::LaneBitmask::LaneBitmask ( Type  V)
inlineexplicitconstexpr

Definition at line 47 of file LaneBitmask.h.

Member Function Documentation

◆ all()

constexpr bool llvm::LaneBitmask::all ( ) const
inlineconstexpr

Definition at line 54 of file LaneBitmask.h.

Referenced by llvm::rdf::LaneMaskIndex::getIndexForLaneMask().

◆ any()

constexpr bool llvm::LaneBitmask::any ( ) const
inlineconstexpr

◆ getAll()

static constexpr LaneBitmask llvm::LaneBitmask::getAll ( )
inlinestaticconstexpr

◆ getAsInteger()

constexpr Type llvm::LaneBitmask::getAsInteger ( ) const
inlineconstexpr

◆ getHighestLane()

unsigned llvm::LaneBitmask::getHighestLane ( ) const
inline

Definition at line 77 of file LaneBitmask.h.

References llvm::Log2_64().

◆ getLane()

static constexpr LaneBitmask llvm::LaneBitmask::getLane ( unsigned  Lane)
inlinestaticconstexpr

Definition at line 83 of file LaneBitmask.h.

References LaneBitmask().

◆ getNone()

static constexpr LaneBitmask llvm::LaneBitmask::getNone ( )
inlinestaticconstexpr

◆ getNumLanes()

unsigned llvm::LaneBitmask::getNumLanes ( ) const
inline

Definition at line 76 of file LaneBitmask.h.

References llvm::popcount().

Referenced by llvm::TargetRegisterInfo::getCoveringSubRegIndexes().

◆ none()

constexpr bool llvm::LaneBitmask::none ( ) const
inlineconstexpr

◆ operator!=()

constexpr bool llvm::LaneBitmask::operator!= ( LaneBitmask  M) const
inlineconstexpr

Definition at line 50 of file LaneBitmask.h.

◆ operator&()

constexpr LaneBitmask llvm::LaneBitmask::operator& ( LaneBitmask  M) const
inlineconstexpr

Definition at line 62 of file LaneBitmask.h.

References LaneBitmask().

◆ operator&=()

LaneBitmask & llvm::LaneBitmask::operator&= ( LaneBitmask  M)
inline

Definition at line 69 of file LaneBitmask.h.

◆ operator<()

constexpr bool llvm::LaneBitmask::operator< ( LaneBitmask  M) const
inlineconstexpr

Definition at line 51 of file LaneBitmask.h.

◆ operator==()

constexpr bool llvm::LaneBitmask::operator== ( LaneBitmask  M) const
inlineconstexpr

Definition at line 49 of file LaneBitmask.h.

◆ operator|()

constexpr LaneBitmask llvm::LaneBitmask::operator| ( LaneBitmask  M) const
inlineconstexpr

Definition at line 59 of file LaneBitmask.h.

References LaneBitmask().

◆ operator|=()

LaneBitmask & llvm::LaneBitmask::operator|= ( LaneBitmask  M)
inline

Definition at line 65 of file LaneBitmask.h.

◆ operator~()

constexpr LaneBitmask llvm::LaneBitmask::operator~ ( ) const
inlineconstexpr

Definition at line 56 of file LaneBitmask.h.

References LaneBitmask().

Member Data Documentation

◆ FormatStr

constexpr const char* const llvm::LaneBitmask::FormatStr = "%016llX"
staticconstexpr

Definition at line 44 of file LaneBitmask.h.

Referenced by llvm::PrintLaneMask().


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