What's Changed
- perf: accelerate 32-byte big-endian conversion on ARM64; add ARM CI by @kamilchodola in #102
- Avoid SIMD materialization in UInt256 constructors and factories by @kamilchodola in #105
- Optimize MultiplyMod by the maximum modulus by @kamilchodola in #106
- Optimize narrow 256x256-to-512-bit multiplication by @kamilchodola in #103
- Optimize UInt256.CompareTo with direct limb comparison by @kamilchodola in #107
- Optimize UInt256 division and modulus fast paths by @kamilchodola in #104
- Optimize UInt256 logical shifts with a portable funnel shift by @kamilchodola in #109
- Optimize UInt256 subtraction with speculative borrow propagation and a one-limb scalar path by @kamilchodola in #112
- Optimize UInt256 addition with speculative carry propagation and a one-limb scalar path by @kamilchodola in #108
- perf: spell out the software widening multiply by @LukaszRozmej in #113
- Dispatch UInt256.Multiply on limb shapes with inlined per-shape kernels and one 32-byte result store by @benaadams in #114
- Optimize Int256 negativity-only gates by @kamilchodola in #110
- Answer Mod without computing the quotient by @benaadams in #115
- Cover the remainder-only Mod kernels' rare Knuth paths by @LukaszRozmej in #116
- Bump version prefix from 1.6.0 to 1.7.0 by @kamilchodola in #117
Full Changelog: v1.6.0...v1.7.0