Releases: chfast/intx
Releases · chfast/intx
intx 0.9.1
Fixed
- Fixed 32-bit Windows builds: the
_umul128intrinsic is not available there. #283
intx 0.9.0
intx 0.8.0
Added
- Added support for big-endian architectures. #257
- Extend endian-specific load/store helpers to work with builtin integer types. #265
Changed
- The
addc()andsubc()have been optimized with compiler's builtins if available. #250 #251 #253 - Fixed and enabled CI testing for architectures other than x86. #255
- Small multiplication optimization. #261
- Small division optimization. #263
- Small comparison operators optimization for the
uint256type. #264
intx 0.7.1
Fixed
- Added support for
bswap()of small unsigned types:uint8_t,uint16_tanduint32_t. Previously arguments where promoted touint64_twhat produced invalid results. #247
intx 0.7.0
Changed
- The
int128.hppandintx.hppheader files have been merged. Now the whole library is included in singleintx/intx.hppfile. #242 - The
addmod()implementation has optimized path for elliptic curve context. #206 - The implementation of
operator==now explicitly performs XOR folding. #245
intx 0.6.0
Changed
- The internal representation of unsigned integers has been changed to be an array of 64-bit words. This provides types composed of any number of words (e.g.
uint384). Previously only power-of-two numbers of words were allowed. This is big change that affects implementation of many operators. #212 #213 - Subtraction has been slightly rewritten to make it easier for compilers to optimize it. The performance now matches the addition. #189
- Multiplication API has been cleaned up by using
std::is_constant_evaluated-like helpers internally. #195 #205 - Shift API has been changed to use
uint64_tas shift amount on the fundamental API level. #202
intx 0.5.1
intx 0.5.0
Added
- Support for using intx dependency as a CMake subproject (e.g. by git submodules or FetchContent). #160
- Support for building intx exceptions handling disabled (-fno-exceptions) and without RTTI (-fno-rtti). #164
Changed
- Converted to header-only library. #155 #156
- Addition / subtraction optimizations. #115 #117 #130
- Division optimizations. #129 #131 #134 #141 #147 #171
- Exponentiation optimizations. #128 #146
Removed
- The unused
builtins.hheader has been deleted. #173