i64.lt_s
Pops two i64 values off the stack, checks if the first value is less than the second, and then pushes the result back on to the stack. This looks at the values as signed integers (can be negative).
if ($first < $second) {...}

Syntax

i64.lt_s

Stack In

i64 The first value to check with.
i64 The second value to check against.

Stack Out

i32 The result of the comparsion. If the first value is less than the second value then the result will be 1. Otherwise the result will be 0.

Examples

;; Push the i64 value 101 onto the stack
i64.const 101

;; Push the i64 value 42 onto the stack
i64.const 42

;; Pop the two i64 values off the stack, check if the first is less
;; than the second and push the result back onto the stack
i64.lt_s

;; The stack contains an i32 value of 0 (101 < 42 = is not less)
;; Push the i64 value 42 onto the stack
i64.const 42

;; Push the i64 value 101 onto the stack
i64.const 101

;; Pop the two i64 values off the stack, check if the first is less
;; than the second and push the result back onto the stack
i64.lt_s

;; The stack contains an i32 value of 1 (42 < 101 = is less)
;; Push the i64 value 0xF23AB02CF178CD56 (-992287060805497514)
;; onto the stack
i64.const 0xF23AB02CF178CD56

;; Push the i64 value 101 onto the stack
i64.const 101

;; Pop the two i64 values off the stack, check if the first is less
;; than the second and push the result back onto the stack
i64.lt_s

;; The stack contains an i32 value of 1
;; -992287060805497514 < 101 = is less