Skip to content

Commit a070a4b

Browse files
committed
Add sign extension tests
1 parent 2555edf commit a070a4b

File tree

2 files changed

+8
-0
lines changed

2 files changed

+8
-0
lines changed

tests/latch/core/i32_0.asserts.wast

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -198,9 +198,13 @@
198198
(assert_return (invoke "popcnt" (i32.const 0xDEADBEEF)) (i32.const 24))
199199
(assert_return (invoke "extend8_s" (i32.const 0)) (i32.const 0))
200200
(assert_return (invoke "extend8_s" (i32.const 0x7f)) (i32.const 127))
201+
(assert_return (invoke "extend8_s" (i32.const 0x80)) (i32.const -128))
202+
(assert_return (invoke "extend8_s" (i32.const 0xff)) (i32.const -1))
201203
(assert_return (invoke "extend8_s" (i32.const -1)) (i32.const -1))
202204
(assert_return (invoke "extend16_s" (i32.const 0)) (i32.const 0))
203205
(assert_return (invoke "extend16_s" (i32.const 0x7fff)) (i32.const 32767))
206+
(assert_return (invoke "extend16_s" (i32.const 0x8000)) (i32.const -32768))
207+
(assert_return (invoke "extend16_s" (i32.const 0xffff)) (i32.const -1))
204208
(assert_return (invoke "extend16_s" (i32.const -1)) (i32.const -1))
205209
(assert_return (invoke "eqz" (i32.const 0)) (i32.const 1))
206210
(assert_return (invoke "eqz" (i32.const 1)) (i32.const 0))

tests/latch/core/i64_0.asserts.wast

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,9 +131,13 @@
131131
(assert_return (invoke "popcnt" (i64.const 0x00008000)) (i64.const 1))
132132
(assert_return (invoke "extend8_s" (i64.const 0)) (i64.const 0))
133133
(assert_return (invoke "extend8_s" (i64.const 0x7f)) (i64.const 127))
134+
(assert_return (invoke "extend8_s" (i64.const 0x80)) (i64.const -128))
135+
(assert_return (invoke "extend8_s" (i64.const 0xff)) (i64.const -1))
134136
(assert_return (invoke "extend8_s" (i64.const -1)) (i64.const -1))
135137
(assert_return (invoke "extend16_s" (i64.const 0)) (i64.const 0))
136138
(assert_return (invoke "extend16_s" (i64.const 0x7fff)) (i64.const 32767))
139+
(assert_return (invoke "extend16_s" (i64.const 0x8000)) (i64.const -32768))
140+
(assert_return (invoke "extend16_s" (i64.const 0xffff)) (i64.const -1))
137141
(assert_return (invoke "extend16_s" (i64.const -1)) (i64.const -1))
138142
(assert_return (invoke "extend32_s" (i64.const 0)) (i64.const 0))
139143
(assert_return (invoke "extend32_s" (i64.const 0x7fff)) (i64.const 32767))

0 commit comments

Comments
 (0)