This also removes it from the API to generate trampolines, which makes sense because those produce new functions, so it can produce a new builder for the new function.
cfg!()/env!() are applied on the host platform during the build script's
build, the environment of the build script's execution is the proper way
to determine eg target_os
We now use `,*` on the outside of a `$()` expression to match on
interspersed commas instead of trailing commas. To continue to handle
the trailing comma case, we optionally match on an extra comma at the
end with `$(,)?`.
1310: upgrade the blake3 dependency to 0.2 r=MarkMcCaskey a=oconnor663
Version 0.2 makes assembly implementations available. They're off by default, and I haven't enabled them here, because they require the build machine to have a C toolchain installed. But if that's already a requirement for Wasmer, we could enable them with the `"c"` feature, for both better runtime performance and faster build times.
Co-authored-by: Jack O'Connor <oconnor663@gmail.com>
This change also cleans up the `wasi-test` generation a bit. It's
actually still really, really messy, but at least now it's split up
into easier to understand chunks.
There's still a lot of low-hanging fruit in terms of improving the
readibilty and maintainability of the code.
1289: Enable `DynamicFunc` for closures with captured environment. r=syrusakbary a=losfair
Previously we disabled `DynamicFunc` for any non-zero-sized closures to leave space for future changes. However this feature is critical for applications that needs to bring context with host functions, like integrations with dynamic lauguages. So it might be good to enable it.
A question left is: should we put this behind a feature flag or enable it by default?
@Hywan @syrusakbary
Co-authored-by: losfair <zhy20000919@hotmail.com>