Nick Lewycky
70d561a1dd
Remove SharedStaticMemory and simplify surrounding code.
2019-08-20 11:30:19 -07:00
Nick Lewycky
1568084d42
Add atomic.wast which we have zero failures on with the llvm backend.
...
Enable shared memory usage in simd.wast.
Exclude atomic.wast on singlepass and clif.
2019-08-20 11:17:52 -07:00
Nick Lewycky
dcf70167da
Fix i64.atomic.load32_u and all alignment checks.
2019-08-20 11:03:22 -07:00
Nick Lewycky
0ba73ac50c
Correct flipped misalignment test.
2019-08-20 10:39:53 -07:00
losfair
90dcdfec1c
Cargo fmt
2019-08-19 19:17:50 -07:00
losfair
4e6267aa57
Correctly handle more than 5 WASM function parameters when reading state of a LLVM context.
2019-08-19 19:12:33 -07:00
Nick Lewycky
172ef77ddd
Use the static intrinsics for static shared memory too.
2019-08-19 17:26:35 -07:00
Nick Lewycky
d66b805529
Add misaligned atomic access trap display for WasmTrapInfo.
2019-08-19 17:26:15 -07:00
Nick Lewycky
0eba153232
Implement shared static memory similarly to unshared static memory.
2019-08-19 15:18:22 -07:00
losfair
124ad73e8a
Merge remote-tracking branch 'origin/master' into feature/llvm-osr
2019-08-19 13:06:59 -07:00
Nick Lewycky
c8378329c1
Expound upon Fence's empty implementation being correct.
2019-08-19 10:51:14 -07:00
Nick Lewycky
aecce465c7
Implement atomic.rmw operations including atomic.rmw.cmpxchg.
2019-08-19 10:51:14 -07:00
Nick Lewycky
f2077c204b
Implement fence correctly, atomic load/store as non-atomic.
...
Adds trap for misaligned accesses.
2019-08-19 10:51:14 -07:00
Nick Lewycky
7f3837abc5
Enable threads in spectests.
2019-08-19 10:51:14 -07:00
Nick Lewycky
86346d6ebe
Thread the feature support through to wasmparser.
2019-08-19 10:51:14 -07:00
Nick Lewycky
cca419c982
Add the --enable-threads flag and thread it as far as runtime-core.
2019-08-19 10:51:14 -07:00
dependabot-preview[bot]
d6fce6cf67
Bump serde_bytes from 0.11.1 to 0.11.2
...
Bumps [serde_bytes](https://github.com/serde-rs/bytes ) from 0.11.1 to 0.11.2.
- [Release notes](https://github.com/serde-rs/bytes/releases )
- [Commits](https://github.com/serde-rs/bytes/compare/0.11.1...0.11.2 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-19 16:36:27 +00:00
dependabot-preview[bot]
92dff871b4
Bump serde from 1.0.98 to 1.0.99
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.98 to 1.0.99.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.98...v1.0.99 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-19 16:36:26 +00:00
bors[bot]
6b2cd7e9cc
Merge #680
...
680: Fix singlepass error when no function code present r=bjfish a=bjfish
Co-authored-by: Brandon Fish <brandon.j.fish@gmail.com>
Co-authored-by: Brandon Fish <bjfish@users.noreply.github.com>
2019-08-19 16:20:09 +00:00
Brandon Fish
38b1e3d25e
Merge branch 'master' into feature/fix-singlepass-panic-no-functions
2019-08-19 09:24:55 -06:00
Brandon Fish
1886760eba
Fix issue with emscripten memory out of range
2019-08-19 09:45:14 -05:00
nlewycky
8b22d40988
Merge branch 'master' into nlewycky/std-atomic
2019-08-17 10:40:34 -07:00
Brandon Fish
7b7f55306c
Merge branch 'master' into feature/fix-singlepass-panic-no-functions
2019-08-17 00:34:06 -06:00
Brandon Fish
d89990951e
Convert panic to error when calling emscripten main
2019-08-16 22:18:13 -06:00
Nick Lewycky
3040ec90ad
cargo fmt
2019-08-16 18:00:20 -07:00
Nick Lewycky
a3fe372beb
Replace wasmer_runtime_code::memory::Atomic with std::sync::atomic atomics.
...
This means we lose op_new(), op_weak() and proxy() from the interface.
2019-08-16 17:36:11 -07:00
losfair
dbaa000e96
Re-enable snapshotting.
2019-08-16 13:08:10 -07:00
Brandon Fish
57e621d307
Fix emscripten test usage and fix error conditional
2019-08-16 09:57:36 -06:00
Brandon Fish
d1c9ab3539
Convert emscripten memory assertion to error
2019-08-16 09:18:51 -06:00
Brandon Fish
03cabce2d5
Fix emscripten table assertion panic
2019-08-16 09:12:46 -06:00
Brandon Fish
bccbbb3d8b
Add deny nonstandard-style and unused-mut lints
2019-08-15 20:18:29 -06:00
losfair
afa0600701
Cargo fmt
2019-08-15 19:13:00 -07:00
losfair
6a24485999
Insert trampolines to preserve callee-saved registers for backends without register save area information.
2019-08-15 19:10:24 -07:00
Brandon Fish
98d3e04137
Fix unused mut warning
2019-08-15 20:09:51 -06:00
losfair
0a54213d4f
register_preservation_trampoline
2019-08-15 19:08:11 -07:00
losfair
7028df23ef
Allow only integers for LLVM function param/return values.
2019-08-15 19:07:03 -07:00
Brandon Fish
439e81d41e
Fix singlepass error when no function code present
2019-08-15 10:15:58 -06:00
bors[bot]
995f40564e
Merge #671
...
671: Add wasi::poll_oneoff for Unix r=MarkMcCaskey a=MarkMcCaskey
Part of #570
Co-authored-by: Mark McCaskey <mark@wasmer.io>
Co-authored-by: Mark McCaskey <markmccaskey@users.noreply.github.com>
2019-08-15 07:58:35 +00:00
Mark McCaskey
0c45707d33
implement wasi::poll_oneoff for write on Unix-like platforms
2019-08-15 15:51:16 +09:00
Mark McCaskey
d733989657
Add wasi::poll_oneoff file read test
2019-08-15 13:13:20 +09:00
losfair
1582224d61
Cargo fmt
2019-08-14 17:16:30 -07:00
losfair
9edd9ffdfe
Make lookup_*_ip public.
2019-08-14 17:14:01 -07:00
losfair
c9e3db3d94
Remove feature(core_intrinsics)
2019-08-14 16:41:44 -07:00
losfair
98ef9182d7
Run clang-format and cargo fmt
2019-08-14 16:35:40 -07:00
losfair
0e0573c73c
Merge remote-tracking branch 'origin/master' into feature/llvm-osr
2019-08-14 16:33:26 -07:00
Mark McCaskey
ec20e325fb
Feature gate Unix-specific polling code
2019-08-14 16:38:57 +09:00
Mark McCaskey
34340692bf
Merge branch 'master' into feature/wasi-polloneoff
2019-08-14 16:14:47 +09:00
Mark McCaskey
8c03338330
Implement wasi::poll_oneoff more properly for Unix
2019-08-14 15:51:39 +09:00
Nick Lewycky
2f3c9c3e2f
Mark memory.size VM intrinsics as not modifying state, and throw.trap/breakpoint as functions which do not return.
2019-08-13 21:50:54 -07:00
Brandon Fish
8e46e797ac
Compare float bits in spectests assert return
2019-08-13 22:14:10 -06:00
Brandon Fish
0bf33662d1
Add missing LLVM imported memory functions
2019-08-13 20:07:55 -06:00
Brandon Fish
137ac206af
Return compile error (llvm) for setting immutable global
2019-08-13 17:59:04 -06:00
Brandon Fish
de8fe32dbe
Add memory validation
2019-08-13 13:04:13 -06:00
Mark McCaskey
09b056cc40
Add wip wasi::poll_oneoff work
2019-08-13 16:59:01 +09:00
Syrus Akbary
5239cdb85a
Merge pull request #668 from wasmerio/feature/update-wabt-to-fix-names-spectests
...
Update WABT dep to fix names spectests
2019-08-13 00:13:36 -07:00
Brandon Fish
f22250d85a
Refactor func_count in parser
2019-08-12 21:36:17 -06:00
Brandon Fish
e76777ed9b
Finalize signatures & names when no function bodies
2019-08-12 20:22:54 -06:00
Brandon Fish
d695bd0c84
Update WABT dep to fixe names spectests
2019-08-12 15:35:32 -06:00
Brandon Fish
20cb7c0048
Merge branch 'master' into feature/unexclude-passing-elem-spec
2019-08-11 18:04:54 -06:00
Brandon Fish
9b4ba66e11
Add code comment explanation of validation
2019-08-11 13:59:48 -06:00
Brandon Fish
c837b56678
Unexclude passing elem spec
2019-08-11 13:52:57 -06:00
Brandon Fish
f61fc5c298
Validate all initializers before finalizing
2019-08-11 13:28:47 -06:00
Brandon Fish
38a8a0eb01
Minimize unsafe block to unsafe code
2019-08-10 17:20:27 -06:00
Brandon Fish
b7970fb982
Uncomment slow exclude test again
2019-08-10 17:11:32 -06:00
Brandon Fish
0b73776c84
Validate all memory data initializers before writing
2019-08-10 17:10:24 -06:00
Brandon Fish
228d562a3b
Re-use registered module instances in spectests
2019-08-10 15:56:25 -06:00
Brandon Fish
db5d8a5bf8
Push debug print to debug CI failure
2019-08-10 15:33:08 -06:00
Brandon Fish
4651b43078
Merge branch 'master' into feature/fix-table-init-error
2019-08-10 15:19:02 -06:00
Brandon Fish
a621b86286
Update windows excludes
2019-08-10 15:04:24 -06:00
Brandon Fish
b484ebb848
cargo fmt
2019-08-10 14:01:50 -06:00
Brandon Fish
bb8b4960b8
Remove filter which prevents initializer offset check
2019-08-10 13:59:31 -06:00
Brandon Fish
1584beebe6
Invalid table size for elems should produce link error
2019-08-10 12:13:14 -06:00
Brandon Fish
6372e0947c
Fix more bare dyn traits in runtime-c-api
2019-08-10 11:20:22 -06:00
Brandon Fish
8ec4c0e01d
Merge branch 'master' into feature/fix-namespace-table-issue
2019-08-09 14:12:25 -06:00
losfair
44f71759f6
Use Vec::with_capacity in various places.
2019-08-10 03:23:29 +08:00
losfair
9cade2b441
singlepass: Skip patchpoint.
2019-08-10 03:10:32 +08:00
losfair
d61a8bb6d2
Prevent continueing execution on unreliable stack. (LLVM register save area information is missing)
2019-08-10 03:10:12 +08:00
losfair
2e89f02191
Cargo fmt
2019-08-10 02:44:44 +08:00
losfair
b8c18215aa
Refactor tier switching code
2019-08-10 02:32:14 +08:00
Syrus Akbary
f909f7ed1f
Merge pull request #650 from wasmerio/feature/wasi-path-rename
...
implement wasi::path_rename
2019-08-09 01:09:23 -07:00
Mark McCaskey
61f1df06d1
implement wasi::path_rename
2019-08-09 15:40:04 +09:00
Brandon Fish
7f0c48b354
Add windows clif excludes
2019-08-08 21:12:36 -06:00
Brandon Fish
a7ff120dd9
Fix some spectest imports and namespace_table issue
2019-08-08 21:03:00 -06:00
Syrus
d39d4b5f6d
Remove structopt dependency from LLVM
2019-08-08 19:42:41 -07:00
bors[bot]
27d8506a46
Merge #643
...
643: Improve error reporting of IO errors, implement path_symlink r=MarkMcCaskey a=MarkMcCaskey
Co-authored-by: Mark McCaskey <mark@wasmer.io>
2019-08-09 00:34:22 +00:00
Nick Lewycky
b2c4501357
Add support for backend flags. Backend flags are opaque to src/bin/wasmer.rs.
...
Use them to implement three features in the LLVM backend, getting a valid ELF object file, the post-optimization LLVM IR and the pre-optimization LLVM IR.
Presently they are also global to the backend which is not ideal.
2019-08-08 17:05:31 -07:00
bors[bot]
77fe15db31
Merge #646
...
646: Fix bare_trait_objects warnings r=bjfish a=bjfish
These appear to be coming to stable soon:
https://github.com/rust-lang/rust/blob/master/RELEASES.md#compatibility-notes
Co-authored-by: Brandon Fish <brandon.j.fish@gmail.com>
2019-08-08 23:25:07 +00:00
Brandon Fish
5a41686192
Fix bare_trait_objects warnings
2019-08-08 16:46:52 -06:00
Nick Lewycky
02f1d73f88
Reformat.
2019-08-08 13:55:44 -07:00
Nick Lewycky
c4d4a6888c
Fix a bug where we would fail to find llvm-config-M or llvm-config-M-N when llvm-sys would.
...
Update to match features in newer llvm-sys.
2019-08-08 13:46:40 -07:00
losfair
c1619026d5
Swap code lazily when tiering up from singlepass to LLVM.
...
Does not handle long-running functions, but should work at least.
2019-08-09 04:26:17 +08:00
losfair
0d604b754b
Commented out code for saving semantics of internal values.
2019-08-08 21:54:39 +08:00
Mark McCaskey
d0696a0c0e
implement wasi::path_symlink test & fix readlink test
2019-08-08 16:42:27 +09:00
Brandon Fish
55f214b3ac
Merge branch 'master' into feature/unexclude-some-passing-unlinkable
2019-08-07 23:19:40 -06:00
Brandon Fish
1c32e2a4af
Add windows specific clif failures
2019-08-07 23:10:50 -06:00
Mark McCaskey
cdfd9afccc
Improve error reporting of IO errors, begin implementation of path_symlink
2019-08-08 11:59:35 +09:00
Brandon Fish
0b0a77413e
Unexclude some now passing assert_unlinkable
2019-08-07 19:45:31 -06:00
bors[bot]
205d7081f5
Merge #640
...
640: Protect::ReadWriteExec is readable and writable. r=syrusakbary a=nlewycky
Also assert that page size is a power of two in two places we assume it is.
Co-authored-by: Nick Lewycky <nick@wasmer.io>
2019-08-08 01:36:19 +00:00
bors[bot]
321ca4e565
Merge #635
...
635: Update spectests and runner r=bjfish a=bjfish
Co-authored-by: Brandon Fish <brandon.j.fish@gmail.com>
Co-authored-by: Nick Lewycky <nick@wasmer.io>
Co-authored-by: Syrus <me@syrusakbary.com>
2019-08-08 00:51:59 +00:00
Mark McCaskey
b8f8a637c1
Merge branch 'master' into feature/more-wasi-syscalls
2019-08-07 16:55:03 -07:00
Nick Lewycky
75959577c3
Protect::ReadWriteExec is readable and writable.
...
Also assert that page size is a power of two in two places we assume it is.
2019-08-07 16:49:29 -07:00
Brandon Fish
8763d2cbde
Merge branch 'master' into feature/spectests-runner
2019-08-07 16:50:06 -06:00
Brandon Fish
5d9aa1f986
Return link error instead of assertion failure for bad data initialization
2019-08-07 15:40:42 -06:00
losfair
b113f5a24b
longjmp turns out to work on Windows. Remove custom unwinding code.
2019-08-08 03:19:19 +08:00
Mark McCaskey
ddb0b99f12
implement path_link updated unlink, fix tests, add new test
2019-08-07 16:11:38 +09:00
Mark McCaskey
6ad0be1e02
add fd_sync test
2019-08-07 12:41:35 +09:00
Mark McCaskey
dbe96bbce9
add wasi::fd_sync
2019-08-07 12:17:52 +09:00
Brandon Fish
dc8384ed22
Add windows specific excludes
2019-08-06 21:03:09 -06:00
Brandon Fish
b7236a58fc
Add support for platform star key skip exclude
2019-08-06 20:06:34 -06:00
losfair
4b1d337ebe
Custom setjmp/longjmp to avoid SEH. (will it work?)
2019-08-07 00:38:42 +08:00
losfair
b50fd31adb
Use setjmp/longjmp to handle LLVM exceptions.
2019-08-07 00:06:35 +08:00
Brandon Fish
8c13eae2b8
Allow platform specific excludes
2019-08-05 20:57:07 -06:00
Brandon Fish
a56aaeaaa3
Add additional spectest imports
2019-08-05 19:25:12 -06:00
Brandon Fish
03e1b3d8e8
Remove unnecessary println and make spectest runs nocapture
2019-08-05 18:58:51 -06:00
Brandon Fish
540520e54e
cargo fmt
2019-08-05 17:55:41 -06:00
Brandon Fish
dc94cfb7b8
Merge branch 'master' into feature/spectests-runner
2019-08-05 17:53:04 -06:00
Brandon Fish
c65abf8ff5
Delete unused commented out println
2019-08-05 17:52:44 -06:00
Brandon Fish
08eb113394
Output failures in exclude format and add all failures as excludes
2019-08-05 17:51:02 -06:00
Nick Lewycky
1d54a938f6
Fix a couple bugs testing NaNs. Add an exclusion list for LLVM min/max.
2019-08-05 15:38:03 -07:00
Syrus Akbary
07e6599a28
Merge branch 'master' into feature/instance-benchmark
2019-08-05 15:07:58 -07:00
Syrus
47456b5baa
Fixed formatting
2019-08-05 14:37:08 -07:00
Syrus
fed7c79923
Added extra assertions in Emscripten. Fixed #244
2019-08-05 14:15:36 -07:00
Syrus
ea5affc05d
Remove svm mentions in wasmer c api codebase
2019-08-05 11:49:16 -07:00
Syrus Akbary
6692978926
Merge branch 'master' into dependabot/cargo/blake2b_simd-0.5.6
2019-08-05 10:57:06 -07:00
dependabot-preview[bot]
50ebbc500f
Bump blake2b_simd from 0.5.5 to 0.5.6
...
Bumps [blake2b_simd](https://github.com/oconnor663/blake2_simd ) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/oconnor663/blake2_simd/releases )
- [Commits](https://github.com/oconnor663/blake2_simd/compare/0.5.5...0.5.6 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-05 08:38:35 +00:00
dependabot-preview[bot]
a036a306d5
Bump regex from 1.2.0 to 1.2.1
...
Bumps [regex](https://github.com/rust-lang/regex ) from 1.2.0 to 1.2.1.
- [Release notes](https://github.com/rust-lang/regex/releases )
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/regex/compare/1.2.0...1.2.1 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-05 08:36:27 +00:00
Mark McCaskey
061d540627
Implement wasi::path_filestat_set_times
2019-08-05 15:53:42 +09:00
Mark McCaskey
6db7bd8f07
get fd_allocate test working
2019-08-05 14:01:04 +09:00
Mark McCaskey
f0eb85a919
refactor wasi state file to hide boilerplate
2019-08-05 11:59:32 +09:00
Mark McCaskey
c2e3847e9a
add check for fd_allocate, improve debug str for filestat_t
2019-08-05 11:24:06 +09:00
Mark McCaskey
8f06db45a1
format emitter with current stable Rust
2019-08-05 09:58:54 +09:00
Mark McCaskey
09acf3e581
Merge branch 'master' into feature/more-wasi-syscalls
2019-08-05 09:55:40 +09:00
Brandon Fish
43ae30985c
Cleanup test runner
2019-08-04 16:44:27 -06:00
Brandon Fish
e3d78a1343
Implement allowed failures
2019-08-04 16:13:47 -06:00
Brandon Fish
b8610e799f
Update README.md, remove old README.md, remove old spectest code
2019-08-04 15:53:48 -06:00
Brandon Fish
93233eb4b4
Implement registered modules
2019-08-04 15:36:17 -06:00
Brandon Fish
5c3edabb7c
Enable simd compile
2019-08-04 14:44:55 -06:00
Brandon Fish
665f8707dc
Implement named modules
2019-08-04 14:20:09 -06:00
Brandon Fish
8c911cb1c3
Implement action get for assert return
2019-08-04 13:37:39 -06:00
Brandon Fish
7060785d8d
Implement assert_exhaustion
2019-08-04 13:18:57 -06:00
Brandon Fish
36bcda711f
Update spectests and run by globbing wast files
2019-08-04 12:42:20 -06:00
Brandon Fish
9a33ece373
Merge branch 'master' into feature/spectests-runner
2019-08-04 11:34:22 -06:00
Brandon Fish
0583ae4846
Add system to skip wast commands to allow failures or skipping
2019-08-04 11:25:46 -06:00
Brandon Fish
f0cdb97320
Add invoke action and imports
2019-08-04 10:19:50 -06:00
Brandon Fish
7d376e18ee
Add debug line info
2019-08-03 18:07:23 -06:00
Brandon Fish
021fefcdee
Disable unlinkable spec temporarily, specs timeout
2019-08-03 17:57:34 -06:00
Brandon Fish
f46d07b5b3
Add more assertions
2019-08-03 17:31:43 -06:00
Yaron Wittenstein
8d583ad4d4
runtime-c-api: Cargo.toml - adding default-features=false
for wasmer-runtime
and wasmer-runtime-core
dependencies
2019-08-03 22:47:36 +03:00
Yaron Wittenstein
a06fa40faa
runtime-c-api: adding feature default-backend-singlepass
to Cargo.toml
2019-08-03 22:03:21 +03:00
Yaron Wittenstein
9e51c39144
Cargo.toml - configuring singlepass
feature
2019-08-03 11:54:59 +03:00