i64.trunc_f64_s

Pops a

`f64`

value off the stack, converts it into an `i64`

value, and then
pushes it back on to the stack. This looks at the i64 value as a signed integer (can be negative).
Any decimal parts of the number will be lost.
The value must exist within the range -9223372036854775808 to +9223372036854775807 (2^63).
If the value is outside this range then a runtime error will be thrown.
```
i64.trunc_f64_s
```

f64 | The value to be converted. |

i64 | The i64 version of the f64 value. |

;; Convert f64 1234.567 into an i64 value f64.const 1234.567 i64.trunc_f64_s ;; The stack contains an i64 value of 1234

;; Convert f64 -3.142 into an i64 value f64.const -3.142 i64.trunc_f64_s ;; The stack contains an i64 value of -3

;; Convert f64 930000000000000000 into an i64 value f64.const 930000000000000000 i64.trunc_f64_s ;; This is out of range and will throw a runtime error