From e58976542b096df6cbb2088b6c7a690d7b95c50a Mon Sep 17 00:00:00 2001 From: Luuk de Gram Date: Fri, 30 Jul 2021 21:05:30 +0200 Subject: [PATCH] wasm: Test cases for wrap+intcast instructions --- test/stage2/wasm.zig | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/test/stage2/wasm.zig b/test/stage2/wasm.zig index f746be99d2..b0099c392c 100644 --- a/test/stage2/wasm.zig +++ b/test/stage2/wasm.zig @@ -113,6 +113,13 @@ pub fn addCases(ctx: *TestContext) !void { \\} , "25\n"); + case.addCompareOutput( + \\pub export fn _start() i32 { + \\ var i: i32 = 2147483647; + \\ return i +% 1; + \\} + , "-2147483648\n"); + case.addCompareOutput( \\pub export fn _start() u32 { \\ var i: u32 = 5; @@ -133,6 +140,13 @@ pub fn addCases(ctx: *TestContext) !void { \\} , "15\n"); + case.addCompareOutput( + \\pub export fn _start() i32 { + \\ var i: i32 = -2147483648; + \\ return i -% 1; + \\} + , "2147483647\n"); + case.addCompareOutput( \\pub export fn _start() u32 { \\ var i: u32 = 5; @@ -157,6 +171,13 @@ pub fn addCases(ctx: *TestContext) !void { \\} , "350\n"); + case.addCompareOutput( + \\pub export fn _start() i32 { + \\ var i: i32 = 2147483647; + \\ return i *% 2; + \\} + , "-2\n"); + case.addCompareOutput( \\pub export fn _start() u32 { \\ var i: u32 = 352; @@ -612,4 +633,15 @@ pub fn addCases(ctx: *TestContext) !void { \\} , "42\n"); } + + { + var case = ctx.exe("wasm integer widening", wasi); + + case.addCompareOutput( + \\pub export fn _start() u64 { + \\ var x: u32 = 5; + \\ return x; + \\} + , "5\n"); + } }