authorgravatar for luuk@degram.devLuuk de Gram <luuk@degram.dev> 2021-07-30 21:05:30+02:00
committergravatar for luuk@degram.devLuuk de Gram <luuk@degram.dev> 2021-08-01 11:07:23+02:00
loge58976542b096df6cbb2088b6c7a690d7b95c50a
treee88acf9d167017aa2079d4cdc37233275f0376cb
parent5667ab7dcd2e367f3e1ac337eabadd64d9d850ad
signaturelock-open Commit is signed but in an unrecognized format.

wasm: Test cases for wrap+intcast instructions


1 files changed, 32 insertions(+), 0 deletions(-)

test/stage2/wasm.zig+32
...@@ -113,6 +113,13 @@ pub fn addCases(ctx: *TestContext) !void {...@@ -113,6 +113,13 @@ pub fn addCases(ctx: *TestContext) !void {
113 \\}113 \\}
114 , "25\n");114 , "25\n");
115115
116 case.addCompareOutput(
117 \\pub export fn _start() i32 {
118 \\ var i: i32 = 2147483647;
119 \\ return i +% 1;
120 \\}
121 , "-2147483648\n");
122
116 case.addCompareOutput(123 case.addCompareOutput(
117 \\pub export fn _start() u32 {124 \\pub export fn _start() u32 {
118 \\ var i: u32 = 5;125 \\ var i: u32 = 5;
...@@ -133,6 +140,13 @@ pub fn addCases(ctx: *TestContext) !void {...@@ -133,6 +140,13 @@ pub fn addCases(ctx: *TestContext) !void {
133 \\}140 \\}
134 , "15\n");141 , "15\n");
135142
143 case.addCompareOutput(
144 \\pub export fn _start() i32 {
145 \\ var i: i32 = -2147483648;
146 \\ return i -% 1;
147 \\}
148 , "2147483647\n");
149
136 case.addCompareOutput(150 case.addCompareOutput(
137 \\pub export fn _start() u32 {151 \\pub export fn _start() u32 {
138 \\ var i: u32 = 5;152 \\ var i: u32 = 5;
...@@ -157,6 +171,13 @@ pub fn addCases(ctx: *TestContext) !void {...@@ -157,6 +171,13 @@ pub fn addCases(ctx: *TestContext) !void {
157 \\}171 \\}
158 , "350\n");172 , "350\n");
159173
174 case.addCompareOutput(
175 \\pub export fn _start() i32 {
176 \\ var i: i32 = 2147483647;
177 \\ return i *% 2;
178 \\}
179 , "-2\n");
180
160 case.addCompareOutput(181 case.addCompareOutput(
161 \\pub export fn _start() u32 {182 \\pub export fn _start() u32 {
162 \\ var i: u32 = 352;183 \\ var i: u32 = 352;
...@@ -612,4 +633,15 @@ pub fn addCases(ctx: *TestContext) !void {...@@ -612,4 +633,15 @@ pub fn addCases(ctx: *TestContext) !void {
612 \\}633 \\}
613 , "42\n");634 , "42\n");
614 }635 }
636
637 {
638 var case = ctx.exe("wasm integer widening", wasi);
639
640 case.addCompareOutput(
641 \\pub export fn _start() u64 {
642 \\ var x: u32 = 5;
643 \\ return x;
644 \\}
645 , "5\n");
646 }
615}647}