// Copyright (c) 2023 The Zcash developers // Distributed under the MIT software license, see the accompanying // file COPYING or https://www.opensource.org/licenses/mit-license.php . #ifndef ZCASH_INT128_H #define ZCASH_INT128_H #include // will define INT128_MAX iff (in some future world) it provides int128_t. // Otherwise use the __int128 extension which is supported in clang and gcc. #ifndef INT128_MAX typedef __int128 int128_t; #define INT128_MAX (std::numeric_limits::max()) #define INT128_MIN (std::numeric_limits::min()) #endif // will define UINT128_MAX iff (in some future world) it provides uint128_t. // Otherwise use the __uint128_t extension which is supported in clang and gcc. #ifndef UINT128_MAX typedef __uint128_t uint128_t; #define UINT128_MAX (std::numeric_limits::max()) #endif #endif // ZCASH_INT128_H