zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit e58976542b096df6cbb2088b6c7a690d7b95c50a (tree)
parent 5667ab7dcd2e367f3e1ac337eabadd64d9d850ad
Author: Luuk de Gram <luuk@degram.dev>
Date:   Fri, 30 Jul 2021 21:05:30 +0200

wasm: Test cases for wrap+intcast instructions

Diffstat:
Mtest/stage2/wasm.zig | 32++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+), 0 deletions(-)

diff --git a/test/stage2/wasm.zig b/test/stage2/wasm.zig @@ -114,6 +114,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; \\ i += 20; @@ -134,6 +141,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; \\ i -= 3; @@ -158,6 +172,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; \\ i /= 7; // i = 50 @@ -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"); + } }