Lines Matching refs:hi
41 #define __clamp(val, lo, hi) \ argument
42 ((val) >= (hi) ? (hi) : ((val) <= (lo) ? (lo) : (val)))
44 #define __clamp_once(val, lo, hi, unique_val, unique_lo, unique_hi) ({ \ argument
47 typeof(hi) unique_hi = (hi); \
50 #define __clamp_input_check(lo, hi) \ argument
52 __is_constexpr((lo) > (hi)), (lo) > (hi), false)))
54 #define __careful_clamp(val, lo, hi) ({ \ argument
55 __clamp_input_check(lo, hi) + \
56 __builtin_choose_expr(__typecheck(val, lo) && __typecheck(val, hi) && \
57 __typecheck(hi, lo) && __is_constexpr(val) && \
58 __is_constexpr(lo) && __is_constexpr(hi), \
59 __clamp(val, lo, hi), \
60 __clamp_once(val, lo, hi, __UNIQUE_ID(__val), \
112 #define clamp(val, lo, hi) __careful_clamp(val, lo, hi) argument
211 #define clamp_t(type, val, lo, hi) __careful_clamp((type)(val), (type)(lo), (type)(hi)) argument
224 #define clamp_val(val, lo, hi) clamp_t(typeof(val), val, lo, hi) argument