|
LLVM 22.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 |
Static Public Member Functions | |
| static void | checkValue (IntegerType UserValue, IntegerType UserMaxValue) |
| Validates that UserValue fits within the bitfield's range. | |
| 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 | LowMask |
| static constexpr StorageType | Mask = LowMask << Bitfield::Shift |
Impl is where Bifield description and Storage are put together to interact with values.
Definition at line 97 of file Bitfields.h.
| using llvm::bitfields_details::Impl< Bitfield, StorageType >::IntegerType = typename Bitfield::IntegerType |
Definition at line 100 of file Bitfields.h.
|
inlinestatic |
Validates that UserValue fits within the bitfield's range.
Definition at line 110 of file Bitfields.h.
References assert(), llvm::isInt(), and llvm::isUInt().
Referenced by update().
|
inlinestatic |
Interprets bits between FirstBit and LastBit of Packed as anIntegerType.
Definition at line 132 of file Bitfields.h.
References Mask, and llvm::SignExtend64().
|
inlinestatic |
Interprets bits between FirstBit and LastBit of Packed as anIntegerType.
Definition at line 141 of file Bitfields.h.
References Mask.
|
inlinestatic |
Checks UserValue is within bounds and packs it between FirstBit and LastBit of Packed leaving the rest unchanged.
Definition at line 123 of file Bitfields.h.
References checkValue(), LowMask, and Mask.
|
staticconstexpr |
Definition at line 105 of file Bitfields.h.
Referenced by update().
|
staticconstexpr |
Definition at line 107 of file Bitfields.h.
|
staticconstexpr |
Definition at line 102 of file Bitfields.h.