diff options
Diffstat (limited to '3rdparty/bx/include/bx/uint32_t.h')
-rw-r--r-- | 3rdparty/bx/include/bx/uint32_t.h | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/3rdparty/bx/include/bx/uint32_t.h b/3rdparty/bx/include/bx/uint32_t.h index 16ce229429c..48908f6511d 100644 --- a/3rdparty/bx/include/bx/uint32_t.h +++ b/3rdparty/bx/include/bx/uint32_t.h @@ -85,6 +85,11 @@ namespace bx return _a & _b; } + inline uint32_t uint32_andc(uint32_t _a, uint32_t _b) + { + return _a & ~_b; + } + inline uint32_t uint32_xor(uint32_t _a, uint32_t _b) { return _a ^ _b; @@ -95,14 +100,14 @@ namespace bx return !_a != !_b; } - inline uint32_t uint32_andc(uint32_t _a, uint32_t _b) + inline uint32_t uint32_or(uint32_t _a, uint32_t _b) { - return _a & ~_b; + return _a | _b; } - inline uint32_t uint32_or(uint32_t _a, uint32_t _b) + inline uint32_t uint32_orc(uint32_t _a, uint32_t _b) { - return _a | _b; + return _a | ~_b; } inline uint32_t uint32_sll(uint32_t _a, int _sa) @@ -271,6 +276,14 @@ namespace bx return result; } + inline uint32_t uint32_iclamp(uint32_t _a, uint32_t _min, uint32_t _max) + { + const uint32_t tmp = uint32_imax(_a, _min); + const uint32_t result = uint32_imin(tmp, _max); + + return result; + } + inline uint32_t uint32_incwrap(uint32_t _val, uint32_t _min, uint32_t _max) { const uint32_t inc = uint32_inc(_val); |