Releases: chfast/intx
Releases · chfast/intx
intx 0.7.1
Fixed
- Added support for
bswap()
of small unsigned types:uint8_t
,uint16_t
anduint32_t
. Previously arguments where promoted touint64_t
what produced invalid results. #247
intx 0.7.0
Changed
- The
int128.hpp
andintx.hpp
header files have been merged. Now the whole library is included in singleintx/intx.hpp
file. #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_t
as 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.h
header has been deleted. #173
intx 0.4.0
intx 0.3.0
intx 0.2.0
v0.2.0 intx 0.2.0
intx 0.1.0
v0.1.0 intx 0.1.0