diff --git a/dap-sdk/core/include/dap_math_ops.h b/dap-sdk/core/include/dap_math_ops.h index cd78cf16b530b4e578c405aa38d982d978961945..b1e45ab6ddccd98d646d8726536401a1f5b6579a 100755 --- a/dap-sdk/core/include/dap_math_ops.h +++ b/dap-sdk/core/include/dap_math_ops.h @@ -1,7 +1,8 @@ #pragma once #include <stdint.h> -#include "dap_common.h"#include <boost/multiprecision/cpp_int.hpp> +#include "dap_common.h" +#include <boost/multiprecision/cpp_int.hpp> #include <stdint.h> #include <stdio.h> #include <stdlib.h> @@ -87,7 +88,22 @@ static inline int SUM_256_256(unsign256_t a_256_bit,unsign256_t b_256_bit,unsig return overflow_flag;} +static inline bool dap_unsign128_t_check_equal(unsign128_t a_128_bit, unsign128_t b_128_bit) +{ +#ifdef DAP_GLOBAL_IS_INT128 + return a_128_bit == b_128_bit; +#else + return a_128_bit.lo==b_128_bit.lo && a_128_bit.hi==b_128_bit; +#endif +} +static inline bool dap_unsign256_t_check_equal(unsign256_t a_256_bit, unsign256_t b_256_bit) +{ + return a_256_bit.lo.lo==b_256_bit.lo.lo && + a_256_bit.lo.hi==b_256_bit.lo.hi && + a_256_bit.hi.lo==b_256_bit.hi.lo && + a_256_bit.hi.hi==b_256_bit.hi.hi; +}