Multiplication

The mul instructions, short for multiplication, are used for multiplying one number by another number, similar to the * operator in other languages.

Try it

(module
  (import "console" "log" (func $log (param i32)))
  (func $main
    ;; load `10` and `3` onto the stack
    i32.const 10
    i32.const 3

    i32.mul ;; multiply one number by the other
    call $log ;; log the result
  )
  (start $main)
)
const url = "{%wasm-url%}";
await WebAssembly.instantiateStreaming(fetch(url), { console });

Syntax

wat
;; load two numbers onto the stack
i32.const 10
i32.const 3

;; multiply one number by the other
i32.mul

;; the top item on the stack will now be 30 (10 * 3 = 30)
Instruction Binary opcode
i32.mul 0x6c
i64.mul 0x7e
f32.mul 0x94
f64.mul 0xa2