Dan Gohman
0a2ecf5a1e
On Darwin, guard page accesses are raised as SIGBUS.
6 years ago
Dan Gohman
cfd28a7bc5
Temporarily disable use of Mach ports for trap handling on Darwin.
6 years ago
Dan Gohman
4ae552c7bd
Reword the lib/wast README.md and add a link to the spec testsuite.
6 years ago
Dan Gohman
4db11b610e
Generalize to better support the spec proposals tests.
6 years ago
Dan Gohman
974355e20b
Handle write errors in the build script.
6 years ago
Dan Gohman
c3dd82b0d5
Enable RUST_BACKTRACE=1 when running "cargo test".
6 years ago
Dan Gohman
e06b99b165
Add a spec testsuite submodule.
6 years ago
Dan Gohman
04b7f0c0df
Fix the description of the wasmtime program.
6 years ago
Dan Gohman
7faa15d7ac
More infrastructure.
Improve handling of memory.grow/size, add a standalone wast runner,
test harness improvements.
6 years ago
Dan Gohman
83f8a31010
Convert the wast test harness into a crate.
This uses a build.rs file to collect all the wast tests and create
individual `#[test]` lines for them, so that `cargo test` can run them
in parallel.
6 years ago
Dan Gohman
4c47ce9b53
Add support for math libcalls.
6 years ago
Dan Gohman
bd69768e0d
Improve infrastructure.
Do more encapsulation of raw pointers, use more PrimaryMaps instead of
Vecs, add a table.rs for managing table storage.
6 years ago
Dan Gohman
fe1643733b
Remove use of offset_of! from wasmtime-environ.
wasmtime-environ is meant to support cross compilation, so it shouldn't
have dependencies on target layout of structs. This moves the layout
back into wasmtime-execute, and adds a system of asserts for checking
that wasmtime-environ's offsets stay in sync.
6 years ago
Dan Gohman
099f85f821
Rename main.rs to wasmtime.rs.
6 years ago
Dan Gohman
e940c97664
Tidy.
6 years ago
Dan Gohman
8dbd4b8d7c
Start a wast testing harness and add some tests.
This implements a minimal wast testing harness in tests/wast.rs, which
runs the wast tests under tests/wast.
It also adds tests for trapping in a variety of ways, and fixes several
bugs exposed by those tests.
6 years ago
Dan Gohman
a6b54330c0
Switch Darwin to use PC-redirection for calling the Unwind function.
6 years ago
Dan Gohman
872f7a10f4
Use MAP_ANON instead of MAP_ANONYMOUS.
6 years ago
Dan Gohman
d5ed424b33
Add tunables.rs.
6 years ago
Dan Gohman
f44fe25f9c
Rewrite linear memory handling in terms of simple mmap/VirtualAlloc.
The memmap crate doesn't make it straightforward to have part of the
region be writeable and part readonly. Since this is a fairly boutique
use case, and we don't need all that much code, just use the low-level
APIs directly.
Also, introduce a concept of "tunables" for adjusting the parameters of
the runtime.
6 years ago
Dan Gohman
1b98efd979
Add a README.md for lib/obj.
6 years ago
Dan Gohman
0c8348cfc7
Mention that being usable as a library is a goal.
6 years ago
Dan Gohman
4437bd1742
Add a CODE_OF_CONDUCT.nd and CONTRIBUTING.md.
6 years ago
Dan Gohman
0b039b0978
Mention the goal of prototyping syscalls for proposal to reference-sysroot.
6 years ago
Dan Gohman
3e19b13b0b
Fix typo.
6 years ago
Dan Gohman
5af15ce9dd
Update the README with project status and goals.
6 years ago
Dan Gohman
02a3684a3f
Update to bindgen 0.44.
6 years ago
Dan Gohman
4dec8ecfce
Check for `cargo fmt` rather than checking for `rustfmt` directly.
6 years ago
Frank Rehberger
ec940ee8af
Migrating to wabt::wat2wasm ( #29 )
* Add test_environ_translate
* Migrating to wabt::wat2wasm
6 years ago
Dan Gohman
ff25397c9e
Fix the type of the heap bound variable.
6 years ago
Dan Gohman
b3d831015c
Add basic logging support to the wasmtime binary.
6 years ago
Dan Gohman
b7d43edfd3
Be more careful about integer overflow when computing relocs.
6 years ago
Dan Gohman
f7dc961d2c
Fix some clippy warnings.
6 years ago
Dan Gohman
976a5a2e7e
Add more trapping testcases.
6 years ago
Dan Gohman
5ae48b06e1
Fix the pthread_detach assert on Darwin.
6 years ago
Dan Gohman
38acc069fa
Fix compilation errors on Darwin.
6 years ago
Dan Gohman
adb76ba9f1
Avoid casting to/from greg_t, which doesn't work consistently across platforms.
6 years ago
Dan Gohman
5e05e9628d
Enable OSX builds on Travis.
6 years ago
Dan Gohman
216c0ce14e
Fix the scope of the ScopeGuard in `call_wasm`.
6 years ago
Dan Gohman
869ed1b5c5
Add badges for Appveyor CI and Gitter chat.
6 years ago
Dan Gohman
4ef1bac12b
Add a basic appveyor config file.
6 years ago
Dan Gohman
862d859587
Add a LICENSE file to each crate.
6 years ago
Frank Rehberger
4ac41213ad
Add test_environ_translate
6 years ago
Dan Gohman
2a760ae5e8
Add tests that trap, and fix handling of SIGFPE on x86.
6 years ago
Dan Gohman
35627cf37f
Implement wasm trap handlers. ( #27 )
* Implement wasm trap handlers.
This adds signal handlers based on SpiderMonkey's signal-handler code.
The functionality for looking up the trap code and wasm bytecode offset
isn't yet implemented, but this is a start.
I considered rewriting this code in Rust, but decided against it for now
as C++ allows us to talk to the relevant OS APIs more directly.
Fixes #15 .
* Compile with -std=c++11.
* Refactor InstallState initialization.
* Compile with -fPIC.
* Factor out the code for calling a wasm function with a given index.
* Fix unclear wording in a comment.
6 years ago
Dan Gohman
8e1e75f1f4
Fix rustfmt diffs.
6 years ago
Geoffroy Couprie
bf5a06bc95
separate the context intialization from the function execution ( #21 )
the start function is called from the initialization phase
6 years ago
Dan Gohman
95fba6a9de
Update to Cranelift 0.25.
6 years ago
Dan Gohman
0e19f39831
Temporarily disable the fuzz check in test-all.sh
We can re-enable it once https://github.com/Amanieu/hashmap_core/pull/8
is merged.
6 years ago
Dan Gohman
e8201d0f93
Begin work on no_std support.
This adds no_std support to a bunch of things, but more work is needed.
6 years ago