v133 · webassembly

Address Space Explorer

Visualise the gap between 32-bit (4 GB) and 64-bit Memory64 address spaces, probe real WebAssembly.Memory construction with index: "i64", and do BigInt pointer arithmetic in-page.

checking Memory64… checking BigInt…

Address space comparison

Memory32 classic

Maximum addressable bytes
4,294,967,296 (2³²)
Max address (hex)
0xFFFFFFFF
Index type
i32 (u32)
4 GB

Memory64 Chrome 133

Maximum addressable bytes
18,446,744,073,709,551,616 (2⁶⁴)
Max address (hex)
0xFFFFFFFFFFFFFFFF
Index type
i64 (u64)
16 EiB (theoretical)

Allocate a Memory64 buffer

Click Allocate to create a WebAssembly.Memory instance.

BigInt pointer arithmetic

Memory64 pointers are BigInt (i64). Practice arithmetic that overflows Number.MAX_SAFE_INTEGER.

Growth probe

Allocate a Memory64 instance, then grow it by additional pages and observe the new byte length.

Click Grow to test memory.grow() on a Memory64 instance.