nx_u256_mul_test.nx
buildroot/runtime/nx_u256_mul_test.nx
about
nx_u256_mul_test.nx -- KAT for the 256x256 -> 512 wide-multiply.
Verifies:
- 0 * 0 = 0
- 1 * 1 = 1
- a * 1 = a (identity)
- 1 * a = a (commutative-with-identity)
- 2^32 * 2^32 = 2^64 (cross-limb single bit)
- (2^256 - 1)^2 produces the well-known wide value
- small * small produces known products (3 * 5 = 15, etc.)
- large limb-spanning case (0xFFFFFFFF * 0xFFFFFFFF)
- wide_cmp / wide_fits_in_256 / wide_copy_low helpers
expect_exit: 0
license_tier: ORIGINAL
dependencies 3 imports · 0 importers
imports: nx_syscalls.nxnx_u256.nxnx_u256_mul.nx
imported by: nobody (leaf or entry point)
call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown
structs
| none |
consts
| none |
functions
| 21 | func main() -> i64 |