Lines Matching refs:size
13 static inline unsigned long long sign_bit(unsigned size) in sign_bit() argument
15 return 1ULL << (size - 1); in sign_bit()
18 static inline unsigned long long sign_mask(unsigned size) in sign_mask() argument
20 unsigned long long sbit = sign_bit(size); in sign_mask()
24 static inline unsigned long long bits_mask(unsigned size) in bits_mask() argument
26 unsigned long long sbit = sign_bit(size); in bits_mask()
31 static inline long long zero_extend(long long val, unsigned size) in zero_extend() argument
33 return val & bits_mask(size); in zero_extend()
36 static inline long long sign_extend(long long val, unsigned size) in sign_extend() argument
38 if (val & sign_bit(size)) in sign_extend()
39 val |= ~sign_mask(size); in sign_extend()
45 static inline long long sign_extend_safe(long long val, unsigned size) in sign_extend_safe() argument
47 unsigned long long mask = bits_mask(size); in sign_extend_safe()
49 val = sign_extend(val, size); in sign_extend_safe()
53 static inline long long bits_extend(long long val, unsigned size, int is_signed) in bits_extend() argument
55 val = zero_extend(val, size); in bits_extend()
57 val = sign_extend(val, size); in bits_extend()