15#ifndef CPU_FEATURES_INCLUDE_INTERNAL_BIT_UTILS_H_
16#define CPU_FEATURES_INCLUDE_INTERNAL_BIT_UTILS_H_
26inline static bool IsBitSet(uint32_t reg, uint32_t bit) {
27 return (reg >> bit) & 0x1;
32 const uint64_t bits = msb - lsb + 1ULL;
33 const uint64_t mask = (1ULL << bits) - 1ULL;
35 return (reg >> lsb) & mask;
static CPU_FEATURES_START_CPP_NAMESPACE bool IsBitSet(uint32_t reg, uint32_t bit)
Definition bit_utils.h:26
static uint32_t ExtractBitRange(uint32_t reg, uint32_t msb, uint32_t lsb)
Definition bit_utils.h:30
#define CPU_FEATURES_START_CPP_NAMESPACE
Definition cpu_features_macros.h:127
#define CPU_FEATURES_END_CPP_NAMESPACE
Definition cpu_features_macros.h:128