| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/en-US/docs/WebAssembly/Reference/Numeric/sub128 | [Back] [Original] |
Get to know MDN better
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The sub128 numeric instruction subtracts one 128-bit integer represented by two 64-bit integers from another to produce a 128-bit result represented by two 64-bit integers.
(module
(import "console" "log" (func $log (param i64)))
(func $main
i64.const 123456789012345
i64.const 123456789070
i64.const 98765432101
i64.const 9876543210123
i64.sub128
call $log ;; log high 64 bits
call $log ;; log low 64 bits
)
(start $main)
)
const url = "{%wasm-url%}";
await WebAssembly.instantiateStreaming(fetch(url), { console });
i64.sub128
i64.sub128The i64.sub128 instruction.
None.
[low_left_input:i64 high_left_input:i64 low_right_input:i64 high_right_input:i64] -> [low_output:i64 high_output:i64]
low_left_inputAn i64 representing the low 64 bits of the left-hand-side 128-bit integer.
high_left_inputAn i64 representing the high 64 bits of the left-hand-side 128-bit integer.
low_right_inputAn i64 representing the low 64 bits of the right-hand-side 128-bit integer.
high_right_inputAn i64 representing the high 64 bits of the right-hand-side 128-bit integer.
low_outputAn i64 representing the low 64 bits of the result.
high_outputAn i64 representing the high 64 bits of the result.
| Instruction | Binary format | Example text => binary |
|---|---|---|
i64.sub128 |
0xfc 20:u32 |
i64.sub128 => 0xfc 0x14 |
The sub128 instruction subtracts one 128-bit integer, represented by two i64 values, from another to produce a 128-bit result represented by two i64 values.
This is one of the wide arithmetic operations, which are useful in situations where larger-than-64-bit numbers are being used in source languages with Wasm as a compile target. One such example is cryptographic algorithms.
These methods allow engines to generate more performant machine code for these operations than is possible with i64 arithmetic operations.
| Specification |
|---|
| Unknown specification # :~:text=i64%2Esub128 |
This page was last modified on Sep 11, 2026 by MDN contributors.
Your blueprint for a better internet.
Portions of this content are 19982026 by individual mozilla.org contributors. Content available under a Creative Commons license.
| Web Proxy Viewer | New URL | Original Page |