Lines Matching refs:x
19 #define __typecheck(x, y) \ argument
20 (!!(sizeof((typeof(x) *)1 == (typeof(y) *)1)))
22 #define __no_side_effects(x, y) \ argument
23 (__is_constexpr(x) && __is_constexpr(y))
25 #define __safe_cmp(x, y) \ argument
26 (__typecheck(x, y) && __no_side_effects(x, y))
28 #define __cmp(x, y, op) ((x) op (y) ? (x) : (y)) argument
30 #define __cmp_once(x, y, unique_x, unique_y, op) ({ \ argument
31 typeof(x) unique_x = (x); \
35 #define __careful_cmp(x, y, op) \ argument
36 __builtin_choose_expr(__safe_cmp(x, y), \
37 __cmp(x, y, op), \
38 __cmp_once(x, y, __UNIQUE_ID(__x), __UNIQUE_ID(__y), op))
45 #define min(x, y) __careful_cmp(x, y, <) argument
52 #define max(x, y) __careful_cmp(x, y, >) argument
60 #define min3(x, y, z) min((typeof(x))min(x, y), z) argument
68 #define max3(x, y, z) max((typeof(x))max(x, y), z) argument
75 #define min_not_zero(x, y) ({ \ argument
76 typeof(x) __x = (x); \
104 #define min_t(type, x, y) __careful_cmp((type)(x), (type)(y), <) argument
112 #define max_t(type, x, y) __careful_cmp((type)(x), (type)(y), >) argument