blob: 141a1ad4bdd620b35ed56c160fc7ee7c21223611 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
|
;;; TOOL: run-interp
(module
;; i32
(func (export "i32_wrap_i64") (result i32)
i64.const -1
i32.wrap_i64)
;; TODO(binji): how best to distinguish _s from _u?
(func (export "i32_trunc_s_f32") (result i32)
f32.const -100.12345
i32.trunc_f32_s)
(func (export "i32_trunc_u_f32") (result i32)
f32.const 3e9
i32.trunc_f32_u)
(func (export "i32_trunc_s_f64") (result i32)
f64.const -100.12345
i32.trunc_f64_s)
(func (export "i32_trunc_u_f64") (result i32)
f64.const 3e9
i32.trunc_f64_u)
;; i64
(func (export "i64_extend_u_i32") (result i64)
i32.const -1
i64.extend_i32_u)
(func (export "i64_extend_s_i32") (result i64)
i32.const -1
i64.extend_i32_s)
(func (export "i64_trunc_s_f32") (result i32)
f32.const -100.12345
i64.trunc_f32_s
i64.const -100
i64.eq)
(func (export "i64_trunc_u_f32") (result i32)
f32.const 3e9
i64.trunc_f32_u
i64.const 3000000000
i64.eq)
(func (export "i64_trunc_s_f64") (result i32)
f64.const -100.12345
i64.trunc_f64_s
i64.const -100
i64.eq)
(func (export "i64_trunc_u_f64") (result i32)
f64.const 3e9
i64.trunc_f64_u
i64.const 3000000000
i64.eq)
;; f32
(func (export "f32_convert_s_i32") (result f32)
i32.const -1
f32.convert_i32_s)
(func (export "f32_convert_u_i32") (result f32)
i32.const -1
f32.convert_i32_u)
(func (export "f32_demote_f64") (result f32)
f64.const 12345678.9
f32.demote_f64)
(func (export "f32_convert_s_i64") (result f32)
i64.const 0
f32.convert_i64_s)
(func (export "f32_convert_u_i64") (result f32)
i64.const 0
f32.convert_i64_u)
;; f64
(func (export "f64_convert_s_i32") (result f64)
i32.const -1
f64.convert_i32_s)
(func (export "f64_convert_u_i32") (result f64)
i32.const -1
f64.convert_i32_u)
(func (export "f64_demote_f32") (result f64)
f32.const 12345678.9
f64.promote_f32)
(func (export "f64_convert_s_i64") (result f64)
i64.const 0
f64.convert_i64_s)
(func (export "f64_convert_u_i64") (result f64)
i64.const 0
f64.convert_i64_u)
)
(;; STDOUT ;;;
i32_wrap_i64() => i32:4294967295
i32_trunc_s_f32() => i32:4294967196
i32_trunc_u_f32() => i32:3000000000
i32_trunc_s_f64() => i32:4294967196
i32_trunc_u_f64() => i32:3000000000
i64_extend_u_i32() => i64:4294967295
i64_extend_s_i32() => i64:18446744073709551615
i64_trunc_s_f32() => i32:1
i64_trunc_u_f32() => i32:1
i64_trunc_s_f64() => i32:1
i64_trunc_u_f64() => i32:1
f32_convert_s_i32() => f32:-1.000000
f32_convert_u_i32() => f32:4294967296.000000
f32_demote_f64() => f32:12345679.000000
f32_convert_s_i64() => f32:0.000000
f32_convert_u_i64() => f32:0.000000
f64_convert_s_i32() => f64:-1.000000
f64_convert_u_i32() => f64:4294967295.000000
f64_demote_f32() => f64:12345679.000000
f64_convert_s_i64() => f64:0.000000
f64_convert_u_i64() => f64:0.000000
;;; STDOUT ;;)
|