mirror of
https://github.com/ziglang/zig.git
synced 2024-11-27 07:32:44 +00:00
e532b0c0b5
* AIR: use pl_op instead of ty_pl for wasm_memory_size. No need to store the type because the type is always `u32`. * AstGen: use coerced_ty for `@wasmMemorySize` and `@wasmMemoryGrow` and do the coercions in Sema. * Sema: use more accurate source locations for errors. * Provide more information in the compiler error message. * Codegen: use liveness data to avoid lowering unused `@wasmMemorySize`. * LLVM backend: add implementation - I wasn't able to test it because we are hitting a linker error for `-target wasm32-wasi -fLLVM`. * C backend: use `zig_unimplemented()` instead of silently doing wrong behavior for these builtins. * behavior tests: branch only on stage2_arch for inclusion of the wasm.zig file. We would change it to `builtin.cpu.arch` but that is causing a compiler crash on some backends.
10 lines
262 B
Zig
10 lines
262 B
Zig
const std = @import("std");
|
|
const expect = std.testing.expect;
|
|
const builtin = @import("builtin");
|
|
|
|
test "memory size and grow" {
|
|
var prev = @wasmMemorySize(0);
|
|
try expect(prev == @wasmMemoryGrow(0, 1));
|
|
try expect(prev + 1 == @wasmMemorySize(0));
|
|
}
|