equal
deleted
inserted
replaced
24 static inline int clamp(int a, int min, int max) { if (a <= min) return min; if (a >= max) return max; return a; } |
24 static inline int clamp(int a, int min, int max) { if (a <= min) return min; if (a >= max) return max; return a; } |
25 static inline int clamp2(int a, int min, int max) { if (a <= min) a=min; if (a >= max) a=max; return a; } |
25 static inline int clamp2(int a, int min, int max) { if (a <= min) a=min; if (a >= max) a=max; return a; } |
26 static inline bool int32_add_overflow(int32 a, int32 b) { return (int32)(a^b)>=0 && (int32)(a^(a+b))<0; } |
26 static inline bool int32_add_overflow(int32 a, int32 b) { return (int32)(a^b)>=0 && (int32)(a^(a+b))<0; } |
27 static inline bool int32_sub_overflow(int32 a, int32 b) { return (int32)(a^b)<0 && (int32)(a^(a-b))<0; } |
27 static inline bool int32_sub_overflow(int32 a, int32 b) { return (int32)(a^b)<0 && (int32)(a^(a-b))<0; } |
28 |
28 |
29 static inline bool str_eq(const byte *a, const byte *b) |
|
30 { |
|
31 int i=0; |
|
32 while (a[i] == b[i]) { |
|
33 if (a[i] == 0) |
|
34 return true; |
|
35 i++; |
|
36 } |
|
37 return false; |
|
38 } |
|
39 |
29 |
40 // Will crash if strings are equal |
30 // Will crash if strings are equal |
41 static inline bool str_is_below(byte *a, byte *b) { |
31 static inline bool str_is_below(byte *a, byte *b) { |
42 while (*a <= *b) { |
32 while (*a <= *b) { |
43 if (*a < *b) return true; |
33 if (*a < *b) return true; |