Commit Graph

1822 Commits

Author SHA1 Message Date
Takeshi Yoneda
2092c0a879 Runs the test case previously failing due to a bug in Rosseta 2 (#2224)
This case has been skipped due to a bug I found in Rosetta 2.
The bug was fixed in the latest macOS, so enable it now.

Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-06-01 12:45:45 -07:00
Yage Hu
4201f5442a Disallow empty path on path_open (#2223)
Signed-off-by: Yage Hu <me@huyage.dev>
2024-05-29 10:22:12 +02:00
Takeshi Yoneda
d4a49031b6 cache: includes cpu features in cache keys (#2220)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-05-28 17:44:05 +09:00
Takeshi Yoneda
0b543f7ba4 doc: clarify WithCloseOnContextDone closes api.Module (#2221)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-05-28 17:35:53 +09:00
Takeshi Yoneda
c397a402ad mmap: eliminates dead flag (#2219)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-05-28 09:44:12 +09:00
Nuno Cruces
d34df000c5 Maps ERROR_NOT_A_REPARSE_POINT to EINVAL (#2218) 2024-05-27 22:07:38 +09:00
Takeshi Yoneda
4dfb1f5b26 Propagates api.Memory.Grow by users to ModuleEngine (#2216)
Since the introduction of optimizing compiler, the Memory.Grow by the users,
which has the different call path than memory.grow instruction, didn't propagate
the growth result onto compiler's ModuleInstance.

Fixes #2215

Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-05-27 10:37:03 +09:00
Takeshi Yoneda
eb24363d34 ssa: empirically faster passRedundantPhiEliminationOpt (#2214)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-05-23 16:12:40 +09:00
Takeshi Yoneda
3383f44a8f arm64: reduces the struct size of instructions (#2213)
This makes arm64's instruction data structure smaller, and 
makes it more aligned with amd64. As a result, the compilation 
gets slightly faster and uses 10% less memory space for 
compiling wazero itself.

```
goos: darwin
goarch: arm64
pkg: github.com/tetratelabs/wazero
               │  old.txt   │             new.txt              │
               │   sec/op   │   sec/op    vs base              │
Compilation-10   3.444 ± 2%   3.315 ± 1%  -3.75% (p=0.001 n=7)

               │   old.txt    │              new.txt               │
               │     B/op     │     B/op      vs base              │
Compilation-10   391.2Mi ± 0%   354.7Mi ± 0%  -9.35% (p=0.001 n=7)

               │   old.txt   │              new.txt              │
               │  allocs/op  │  allocs/op   vs base              │
Compilation-10   693.3k ± 0%   695.3k ± 0%  +0.28% (p=0.001 n=7)
```

Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-05-22 10:57:25 +09:00
Takeshi Yoneda
b9633563c0 ssa: simplifies basicBlock.params (#2212)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-05-21 15:51:41 +09:00
Takeshi Yoneda
ab0d27c180 regalloc: removes map use for less memory pressure (#2211)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-05-21 14:51:27 +09:00
Takeshi Yoneda
48f702e154 experimental: removes deprecated raw context keys (#2206)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-05-13 09:36:03 +09:00
Takeshi Yoneda
5a8a053bff Merges interpreter and wazeroir packages (#2204)
Some checks failed
Release CLI / Pre-release build (push) Has been cancelled
Release CLI / Pre-release test (macos-12) (push) Has been cancelled
Release CLI / Pre-release test (ubuntu-22.04) (push) Has been cancelled
Release CLI / Pre-release test (windows-2022) (push) Has been cancelled
Release CLI / Release (push) Has been cancelled
v1.7.2
2024-05-07 17:31:03 +09:00
Takeshi Yoneda
bc0915e051 integration test: adds memmov regression tests (#2203)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-05-07 14:51:21 +09:00
Takeshi Yoneda
3403dd3061 amd64: saves clobbered xmm8-xmm15 beyond runtime.memmove (#2202)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-05-06 15:17:07 +09:00
Takeshi Yoneda
bac8bd1f58 fuzz: adds regression case for #2198 (#2201)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-05-05 15:20:57 +09:00
Takeshi Yoneda
b7df8b1130 debug: do not include inlined sources in frame counts (#2199)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-04-30 17:23:46 +09:00
Takeshi Yoneda
60dbe962c1 Assumes ctx is not nil (#2196)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-04-24 08:42:25 +09:00
Takeshi Yoneda
1e6080ab98 compiler: uses slice instead of map for refToBinaryOffset (#2195)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-04-23 10:32:34 +09:00
Takeshi Yoneda
621f62d5a4 Fixes race condition in concurrent engine usage (#2194)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-04-22 16:10:04 +09:00
Takeshi Yoneda
7ad2b70626 Removes GOOS=js related leftovers (#2193)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-04-22 11:17:10 +09:00
Anuraag (Rag) Agrawal
5a9cb5aaf8 experimental: reflect custom allocated buffer capacity to internal buffer (#2189)
Signed-off-by: Anuraag Agrawal <anuraaga@gmail.com>
2024-04-17 16:48:37 +09:00
Takeshi Yoneda
faae9b62cf Removes old engine/wazevo/README.md (#2188)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-04-16 16:28:43 +09:00
Nuno Cruces
55f21b8678 experimental: custom memory allocator API tweaks (#2186)
Some checks failed
Release CLI / Pre-release build (push) Has been cancelled
Release CLI / Pre-release test (macos-12) (push) Has been cancelled
Release CLI / Pre-release test (ubuntu-22.04) (push) Has been cancelled
Release CLI / Pre-release test (windows-2022) (push) Has been cancelled
Release CLI / Release (push) Has been cancelled
Signed-off-by: Nuno Cruces <ncruces@users.noreply.github.com>
v1.7.1
2024-04-16 08:45:04 +09:00
Takeshi Yoneda
e9bea5593a Updates CODEOWNERS (#2185)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-04-15 15:32:58 +09:00
Takeshi Yoneda
a3d0d967ab Cleanups ctxkey package (#2184)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-04-15 14:55:14 +09:00
Takeshi Yoneda
378956d2fd compiler(arm64): fixes B.cond offset limits (#2183)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-04-15 14:20:05 +09:00
Nuno Cruces
a0fbb18544 experimental: configure custom memory allocator (#2177)
Signed-off-by: Nuno Cruces <ncruces@users.noreply.github.com>
2024-04-10 20:13:57 +09:00
Takeshi Yoneda
891e470b72 compiler(arm64): fixes overflow in huge executable relocations (#2181)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-04-10 09:59:35 +09:00
Anuraag (Rag) Agrawal
f31be308fa Fix WithSnapshotter doc to reference non-deprecated method (#2180)
Signed-off-by: Anuraag Agrawal <anuraaga@gmail.com>
2024-04-09 13:40:08 +09:00
Nuno Cruces
c6a907bb9d experimental: cleanup context keys (#2175)
Signed-off-by: Nuno Cruces <ncruces@users.noreply.github.com>
2024-04-06 21:04:55 +09:00
Nuno Cruces
59faf80fcc threads: remove dead code (#2176)
Signed-off-by: Nuno Cruces <ncruces@users.noreply.github.com>
2024-04-06 10:27:34 +09:00
Takeshi Yoneda
775330a1e5 Reverts the public Memory.Pages API (#2174)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-04-04 21:57:48 +09:00
Takeshi Yoneda
5fe44456ad Renames PageSize -> Pages (#2173)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-04-04 20:37:11 +09:00
Nuno Cruces
864a958c46 fix: workaround Memory.Size() overflow with 4GB memory (#2172)
Signed-off-by: Nuno Cruces <ncruces@users.noreply.github.com>
2024-04-04 12:08:20 +01:00
Nuno Cruces
a030b61c62 fix: allow ReadByte/WriteByte to get last byte of 4GB memory (#2171)
Signed-off-by: Nuno Cruces <ncruces@users.noreply.github.com>
2024-04-04 11:28:03 +01:00
Takeshi Yoneda
144d59f8d5 threads: stop explicit use of mmap for shared memory (#2170)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-04-04 13:30:15 +09:00
Milan Nikolic
15e1eb7209 docs: add image libraries to community users (#2168)
Signed-off-by: Milan Nikolic <gen2brain@gmail.com>
2024-04-02 09:54:40 +09:00
Takeshi Yoneda
4d6585d7da wazevo(arm64): adds assertion on too large relocations (#2167)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-04-01 14:42:09 +09:00
Ron Evans
22e3861510 internal: add tags and stubs so wazero can be compiled for MCU targets (#2166)
Signed-off-by: deadprogram <ron@hybridgroup.com>
2024-03-31 11:11:31 +02:00
Gram
9cdb0e32a2 ci: build wazero with TinyGo (#2163)
Signed-off-by: gram <git@orsinium.dev>
2024-03-28 13:20:08 +01:00
Gram
199c858f74 refactor reflect.SliceHeader uses to allow tinygo cross-compilation (#2161)
Signed-off-by: gram <git@orsinium.dev>
2024-03-28 12:16:35 +01:00
Gram
771a1e971a wasi: support building internal/sysfs with TinyGo (#2160)
Signed-off-by: gram <git@orsinium.dev>
Signed-off-by: Edoardo Vacchi <evacchi@users.noreply.github.com>
Co-authored-by: Edoardo Vacchi <evacchi@users.noreply.github.com>
2024-03-28 11:05:24 +01:00
Edoardo Vacchi
c20cade078 wazevo(frontend): BCE should not propagate the memory address to unsealed blocks (#2164)
Signed-off-by: Edoardo Vacchi <evacchi@users.noreply.github.com>
2024-03-27 08:19:41 +09:00
Gram
04309ab93a internal: skip platform-specific code when building with TinyGo (#2162)
Signed-off-by: gram <git@orsinium.dev>
2024-03-26 12:28:43 +01:00
Gram
39aa5e3367 compiler: use build tags instead of runtime.GOARCH to select ISA (#2159)
Signed-off-by: gram <git@orsinium.dev>
2024-03-26 09:16:00 +01:00
Takeshi Yoneda
253c0346e4 ci: removes unnecessary matrix.include (#2155)
Some checks failed
Release CLI / Pre-release build (push) Has been cancelled
Release CLI / Pre-release test (macos-12) (push) Has been cancelled
Release CLI / Pre-release test (ubuntu-22.04) (push) Has been cancelled
Release CLI / Pre-release test (windows-2022) (push) Has been cancelled
Release CLI / Release (push) Has been cancelled
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
v1.7.0
2024-03-14 21:07:49 +09:00
Takeshi Yoneda
2bbe81a620 wazevo(frontend): allocation free initializeCurrentBlockKnownBounds (#2154)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-03-13 15:06:48 +09:00
Edoardo Vacchi
1b3f80b6ef ci: always use the same command to upload artifacts (#2153)
Signed-off-by: Edoardo Vacchi <evacchi@users.noreply.github.com>
2024-03-12 17:33:10 +09:00
Takeshi Yoneda
b4f47d9695 fuzz: adds --no-trace-compares flag by default (#2152)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2024-03-12 16:57:00 +09:00