|
|
@@ -468,6 +468,66 @@ namespace bx
|
|
|
;
|
|
|
}
|
|
|
|
|
|
+ inline BX_CONSTEXPR_FUNC uint64_t uint64_li(uint64_t _a)
|
|
|
+ {
|
|
|
+ return _a;
|
|
|
+ }
|
|
|
+
|
|
|
+ inline BX_CONSTEXPR_FUNC uint64_t uint64_dec(uint64_t _a)
|
|
|
+ {
|
|
|
+ return _a - 1;
|
|
|
+ }
|
|
|
+
|
|
|
+ inline BX_CONSTEXPR_FUNC uint64_t uint64_inc(uint64_t _a)
|
|
|
+ {
|
|
|
+ return _a + 1;
|
|
|
+ }
|
|
|
+
|
|
|
+ inline BX_CONSTEXPR_FUNC uint64_t uint64_not(uint64_t _a)
|
|
|
+ {
|
|
|
+ return ~_a;
|
|
|
+ }
|
|
|
+
|
|
|
+ inline BX_CONSTEXPR_FUNC uint64_t uint64_neg(uint64_t _a)
|
|
|
+ {
|
|
|
+ return -(int32_t)_a;
|
|
|
+ }
|
|
|
+
|
|
|
+ inline BX_CONSTEXPR_FUNC uint64_t uint64_ext(uint64_t _a)
|
|
|
+ {
|
|
|
+ return ( (int32_t)_a)>>31;
|
|
|
+ }
|
|
|
+
|
|
|
+ inline BX_CONSTEXPR_FUNC uint64_t uint64_and(uint64_t _a, uint64_t _b)
|
|
|
+ {
|
|
|
+ return _a & _b;
|
|
|
+ }
|
|
|
+
|
|
|
+ inline BX_CONSTEXPR_FUNC uint64_t uint64_andc(uint64_t _a, uint64_t _b)
|
|
|
+ {
|
|
|
+ return _a & ~_b;
|
|
|
+ }
|
|
|
+
|
|
|
+ inline BX_CONSTEXPR_FUNC uint64_t uint64_xor(uint64_t _a, uint64_t _b)
|
|
|
+ {
|
|
|
+ return _a ^ _b;
|
|
|
+ }
|
|
|
+
|
|
|
+ inline BX_CONSTEXPR_FUNC uint64_t uint64_xorl(uint64_t _a, uint64_t _b)
|
|
|
+ {
|
|
|
+ return !_a != !_b;
|
|
|
+ }
|
|
|
+
|
|
|
+ inline BX_CONSTEXPR_FUNC uint64_t uint64_or(uint64_t _a, uint64_t _b)
|
|
|
+ {
|
|
|
+ return _a | _b;
|
|
|
+ }
|
|
|
+
|
|
|
+ inline BX_CONSTEXPR_FUNC uint64_t uint64_orc(uint64_t _a, uint64_t _b)
|
|
|
+ {
|
|
|
+ return _a | ~_b;
|
|
|
+ }
|
|
|
+
|
|
|
inline BX_CONSTEXPR_FUNC uint64_t uint64_sll(uint64_t _a, int32_t _sa)
|
|
|
{
|
|
|
return _a << _sa;
|