Unified generated objects interfaces: both static and serialized objects
expose the same function signature to create the module:
wasm_module_t* wasmer_object_module_new(wasm_store_t* store, const char* module_name);
* Add support for cross-compiling in create-exe with zig cc WIP
zig version must be at least 0.10.0-dev.3431+4a4f3c50c
Closes#3042
* Add support for cross-compiling in create-exe with zig cc WIP
zig version must be at least 0.10.0-dev.3431+4a4f3c50c
Closes#3042
* Add SSE2 features to the CPU
* Add SSE2 features to the CPU
* create_exe: locate zig binary and check minimum version
Check that `zig` binary version is at least `0.10.0`
* create-exe: refactor cross-comp cli parsing and error checks
* create-exe: add -lunwind for cross-comp with zig
* Set the proper library for windows
* create-exe: add path exists check for --tarball value
* create-exe: add -msvc environment in triple_to_zig_triple()
Co-authored-by: Syrus Akbary <me@syrusakbary.com>
Allow create-exe to receive an object created by `wasmer create-obj`
instead of a wasm module as input to skip the compilation part. The
accompanying header file must be specified with the `--header` flag in
order for the input file to be recognized as an object.
The Universal type was essentially a builder of engines that's given a
compiler backend and creates an Engine with .engine() method. The name
was not clear.
Since there's one engine now, it doesn't make sense to initialize a
`Store` with the engine specifically. It's an extra redundant step for
the API user.
- Split functionality out of WasiEnv so that it can support multi-threading
- Added methods to the VFS File Trait that supporting polling
- Implemented basic time functionality for WASI
- Incorported a yield callback for when WASI processes idle
- Improved the error handling on WASI IO calls
- Reduce the verbose logging on some critical WASI calls (write/read)
- Implemented the missing poll functionality for WASI processes
- Moved the syspoll functionality behind a feature flag to default to WASI method
- Refactored the thread sleeping functionality for WASI processes
- Fixed the files system benchmark which was not compiling
- Modified the file system trait so that it is SYNC and thus can handle multiple threads
- Removed the large mutex around filesystem state and implemented granular locks instead
(this is needed to fix a deadlock scenario on the terminal)
- Split the inodes object apart from the state to fix the deadlock scenario.
- Few minor fixes to some warnings when not using certain features
- Sleeping will now call a callback that can be used by the runtime operator when
a WASI thread goes to sleep (for instance to do other work)
- Fixed a bug where paths that exist on the real file system are leaking into VFS
- Timing functions now properly return a time precision on WASI
- Some improved macros for error handling within syscalls (wasi_try_ok!)
- Refactored the remove_directory WASI function which was not working properly
- Refactored the unlink WASI function which was not working properly
- Refactored the poll WASI function which was not working properly
- Updates some of the tests to make them compile again
- Rewrote the OutputCapturer so that it does leak into the internals