Lines Matching refs:_mask
60 #define __BF_FIELD_CHECK(_mask, _reg, _val, _pfx) \ argument
62 BUILD_BUG_ON_MSG(!__builtin_constant_p(_mask), \
64 BUILD_BUG_ON_MSG((_mask) == 0, _pfx "mask is zero"); \
66 ~((_mask) >> __bf_shf(_mask)) & (_val) : 0, \
68 BUILD_BUG_ON_MSG(__bf_cast_unsigned(_mask, _mask) > \
71 __BUILD_BUG_ON_NOT_POWER_OF_2((_mask) + \
72 (1ULL << __bf_shf(_mask))); \
82 #define FIELD_MAX(_mask) \ argument
84 __BF_FIELD_CHECK(_mask, 0ULL, 0ULL, "FIELD_MAX: "); \
85 (typeof(_mask))((_mask) >> __bf_shf(_mask)); \
95 #define FIELD_FIT(_mask, _val) \ argument
97 __BF_FIELD_CHECK(_mask, 0ULL, 0ULL, "FIELD_FIT: "); \
98 !((((typeof(_mask))_val) << __bf_shf(_mask)) & ~(_mask)); \
109 #define FIELD_PREP(_mask, _val) \ argument
111 __BF_FIELD_CHECK(_mask, 0ULL, _val, "FIELD_PREP: "); \
112 ((typeof(_mask))(_val) << __bf_shf(_mask)) & (_mask); \
123 #define FIELD_GET(_mask, _reg) \ argument
125 __BF_FIELD_CHECK(_mask, _reg, 0U, "FIELD_GET: "); \
126 (typeof(_mask))(((_reg) & (_mask)) >> __bf_shf(_mask)); \