LLVM 20.0.0git
|
Impl is where Bifield description and Storage are put together to interact with values. More...
#include "llvm/ADT/Bitfields.h"
Public Types | |
using | IntegerType = typename Bitfield::IntegerType |
using | C = Compressor< IntegerType, Bitfield::Bits > |
using | BP = BitPatterns< StorageType, Bitfield::Bits > |
Static Public Member Functions | |
static void | update (StorageType &Packed, IntegerType UserValue) |
Checks UserValue is within bounds and packs it between FirstBit and LastBit of Packed leaving the rest unchanged. | |
static IntegerType | extract (StorageType Packed) |
Interprets bits between FirstBit and LastBit of Packed as anIntegerType . | |
static StorageType | test (StorageType Packed) |
Interprets bits between FirstBit and LastBit of Packed as anIntegerType . | |
Static Public Attributes | |
static constexpr size_t | StorageBits = sizeof(StorageType) * CHAR_BIT |
static constexpr StorageType | Mask = BP::Umax << Bitfield::Shift |
Impl is where Bifield description and Storage are put together to interact with values.
Definition at line 156 of file Bitfields.h.
using llvm::bitfields_details::Impl< Bitfield, StorageType >::BP = BitPatterns<StorageType, Bitfield::Bits> |
Definition at line 161 of file Bitfields.h.
using llvm::bitfields_details::Impl< Bitfield, StorageType >::C = Compressor<IntegerType, Bitfield::Bits> |
Definition at line 160 of file Bitfields.h.
using llvm::bitfields_details::Impl< Bitfield, StorageType >::IntegerType = typename Bitfield::IntegerType |
Definition at line 159 of file Bitfields.h.
|
inlinestatic |
Interprets bits between FirstBit
and LastBit
of Packed
as anIntegerType
.
Definition at line 178 of file Bitfields.h.
References llvm::bitfields_details::Impl< Bitfield, StorageType >::Mask, and llvm::bitfields_details::Compressor< T, Bits, bool >::unpack().
|
inlinestatic |
Interprets bits between FirstBit
and LastBit
of Packed
as anIntegerType
.
Definition at line 185 of file Bitfields.h.
References llvm::bitfields_details::Impl< Bitfield, StorageType >::Mask.
|
inlinestatic |
Checks UserValue
is within bounds and packs it between FirstBit
and LastBit
of Packed
leaving the rest unchanged.
Definition at line 170 of file Bitfields.h.
References llvm::bitfields_details::Compressor< T, Bits, bool >::pack().
|
staticconstexpr |
Definition at line 166 of file Bitfields.h.
Referenced by llvm::bitfields_details::Impl< Bitfield, StorageType >::extract(), and llvm::bitfields_details::Impl< Bitfield, StorageType >::test().
|
staticconstexpr |
Definition at line 163 of file Bitfields.h.