Commit Graph

1719 Commits

Author SHA1 Message Date
Nick Lewycky
4535274cf3 Update the loader interface for 128 bit types. 2019-07-22 11:23:41 -07:00
Nick Lewycky
f8e8b1cdea Update to latest wasmer clif branch. 2019-07-22 10:59:27 -07:00
Yaron Wittenstein
c3ced14e46 Merge branch 'master' into ctx-drop-finalizer 2019-07-22 14:13:11 +03:00
Nick Lewycky
775c120b38 Update to newer wasmerio/wabt-rs. 2019-07-19 15:48:50 -07:00
Nick Lewycky
fc935710c7 Merge branch 'master' of github.com:wasmerio/wasmer into simd 2019-07-19 15:37:36 -07:00
Nick Lewycky
cd25356858 Fix shuffle and enable tests. Add support for new load_splat instructions.
Updates to wasmparser 0.34.0 and picks up a newer wasmerio/wabt.
2019-07-19 15:19:58 -07:00
Mark McCaskey
f15e90f8f3
Merge branch 'master' into feature/wasi-readlink 2019-07-19 13:36:27 -07:00
Mark McCaskey
a0672b3fa2 updates from code review 2019-07-19 13:36:05 -07:00
Mark McCaskey
328ef4e66e use correct debug macro on Windows 2019-07-19 12:55:58 -07:00
Mark McCaskey
d74560e1d4 impl fd_close 2019-07-19 12:10:45 -07:00
Mark McCaskey
a8a0dbed91 improve abstraction impl rm syscalls, properly finish create_dir 2019-07-19 11:47:31 -07:00
Mark McCaskey
9910527b30 further improve sandbox, rework syscalls, add tests 2019-07-18 17:14:01 -07:00
Nick Lewycky
3e009c5971 Reformat. 2019-07-18 13:40:24 -07:00
Nick Lewycky
ea93b68165 Bump size of global up to 128 bits.
Fixes last spec test failure from the WAVM SIMD spec test.
2019-07-18 13:39:41 -07:00
Nick Lewycky
3be6a024aa Fix bugs in V128 support based on results from testing against simd spec test.
These is one test failure remaining with V128 global variables.

* Fix trunc_sat. We need both the largest float that can be converted to an int
  and the largest int, they are not the same number.
* Implement calling of functions that take V128 by passing in two i64's.
* Improve support for V128 in spectests. Parse binary modules with the same
  features as the outer spectest. Fix compilation error involving Result in
  emitted .rs file. Handle V128 in more cases when producing .rs file. Parse
  the wast script with SIMD enabled.
* Adjust the WAVM spectest so that it parses with WABT and mostly passes with
  wasmer. Wabt is particular about ints not having decimal places and floats
  having decimal places. Wasmer does not support mutable globals or shared
  memory. Tests of shuffles are disabled. Some assert_invalid tests that wabt
  won't even parse are disabled.
2019-07-18 12:52:59 -07:00
nlewycky
3f3bf38d94
Fix typo in comment.
"Then thou must count to three. Three shall be the number of the counting and the number of the counting shall be three. Four shalt thou not count, neither shalt thou count two, excepting that thou then proceedeth to three."
2019-07-18 11:24:25 -07:00
Mark McCaskey
dc19bf32b9 fmt 2019-07-17 15:47:59 -07:00
Mark McCaskey
e7e1b8c7d3 get tests passing! (more tests and clean up required) 2019-07-17 15:32:47 -07:00
Mark McCaskey
65bc9a5203 massive fs rewrite; add virtual root, tests 2019-07-17 14:00:51 -07:00
Nick Lewycky
eeac6d5d2d Merge branch 'master' of github.com:wasmerio/wasmer into simd 2019-07-16 19:16:45 -07:00
Mark McCaskey
78702fc1a0 Merge remote-tracking branch 'origin/master' into feature/wasi-readlink 2019-07-16 13:50:56 -07:00
Mark McCaskey
cea7d5da7d add readlink test 2019-07-16 13:49:45 -07:00
Mark McCaskey
19f544e489 update to 0.5.6 2019-07-16 13:12:21 -07:00
Mark McCaskey
dd1ddea37b wip fs improvements 2019-07-15 17:37:11 -07:00
Syrus Akbary
193665461b
Merge branch 'master' into improve-wasi-tests 2019-07-15 12:43:21 -07:00
nlewycky
42780042ef
Fix typo in comment. 2019-07-15 10:55:26 -07:00
Mark McCaskey
affb9465d5 update rustfmt.toml to ignore and fmt 2019-07-15 10:43:30 -07:00
Mark McCaskey
53d7ecba2c improve wasitest infra and fix fseek test 2019-07-15 10:36:12 -07:00
Mark McCaskey
122963909f symlink code from last week 2019-07-15 09:59:07 -07:00
Yaron Wittenstein
ad10152982 * vm.rs - calling Ctx data_finalizer upon destruction 2019-07-15 15:14:09 +03:00
Syrus
24f1e99ead Fixed WASI tests 2019-07-13 16:00:18 -07:00
Syrus
b0ead8fc04 Merge branch 'master' into feature/complete-fd-seek 2019-07-13 15:40:51 -07:00
Brandon Fish
ed19fd2913 Update loader-kernel feature name, fix compilation track state, cargo fmt 2019-07-12 23:02:57 -05:00
Mark McCaskey
5119f07ea3 implement wasi::readlink 2019-07-12 15:58:28 -07:00
Mark McCaskey
a608f3aad0 fix wasi test template code 2019-07-12 15:17:10 -07:00
Mark McCaskey
cbac3ed92d finish implementation of wasi::fd_seek, fix bug in filestat 2019-07-12 15:10:16 -07:00
losfair
977fd1e25e Fix trap offset lookup. 2019-07-13 00:17:33 +08:00
losfair
450109e2bb Fix singlepass compilation error. 2019-07-13 00:17:21 +08:00
losfair
08cdc9a42f Allow disabling state tracking for faster startup. 2019-07-12 23:37:40 +08:00
losfair
f327feccef Merge remote-tracking branch 'origin/master' into fix/imul-relax 2019-07-12 23:37:01 +08:00
nlewycky
278adf678a
Merge branch 'master' into nlewycky/llvm 2019-07-11 16:48:46 -07:00
Nick Lewycky
7fb88251d4 Simplify trap_if_not_representable_as_int.
Fix typo in function name. Use two fcmp instructions instead of unpacking the bits of the IEEE float and using integer arithmetic to determine details about its value.
2019-07-11 16:46:37 -07:00
Nick Lewycky
7045030532 Try a new list of optimization passes.
A few notes:
a) the inliner doesn't help because all the calls are indirect and not even opt -O2 can figure out which functions they're actually calling.
b) aggressive instruction combining is not a super-set of the instruction combiner. Instcombine is made up of a large number (probably 10,000s) of patterns, and some particularly slow ones were taken out and moved to the aggressive instruction combiner. Aggressive instcombine *only* runs that handful of optimizations, which fired zero times on our example wasm files.
c) NewGVN is not ready for production, it has asserts that fire when building sqlite or cowsay. This is why sqlite didn't build with the llvm backend.
d) Scalar-replacement-of-aggregates (sroa) is a strict superset of promote-memory-to-registers (mem2reg), and you probably want sroa because it's usually faster. It also fires 10,000s more times than mem2reg on lua.wasm.
e) Aggressive-dead-code-elimination was only deleting as much regular dead-code-elimination, but is slower because it depends on a postdominator tree (PDT) analysis that. Other passes don't need PDT so we'll have to build it for just this one pass (as opposed to regular dominator-tree which is reused by many passes). I've replaced this with bit-tracking dead-code-elimination which deletes more code than dce/adce.
2019-07-11 14:48:07 -07:00
losfair
c186e0244e Fix compile error on imul. 2019-07-11 20:26:20 +08:00
Johan Andersson
b41040cc59 Update to nix 0.14.
Instead of using a mix of nix 0.12 & 0.13
2019-07-11 12:28:56 +02:00
bors[bot]
0c4a8f77d2 Merge #543 #544
543: update version numbers to 0.5.5 r=MarkMcCaskey a=MarkMcCaskey



544: Use bitcast instead of alloca+load+ptrcast+store sequence. r=MarkMcCaskey a=nlewycky



Co-authored-by: Mark McCaskey <mark@wasmer.io>
Co-authored-by: Mark McCaskey <markmccaskey@users.noreply.github.com>
Co-authored-by: Nick Lewycky <nick@wasmer.io>
Co-authored-by: nlewycky <nick@wasmer.io>
2019-07-11 00:51:31 +00:00
nlewycky
3795b48401
Merge branch 'master' into llvm-cleanup 2019-07-10 16:58:27 -07:00
Mark McCaskey
7789d1b096
Merge branch 'master' into release-0.5.5 2019-07-10 16:35:00 -07:00
Nick Lewycky
7f00dc3cdb Reformat. 2019-07-10 15:33:32 -07:00
Nick Lewycky
8faff26c31 Give float_bits bitcast instruction a name. 2019-07-10 15:31:18 -07:00
Mark McCaskey
50302d5d4e use published forks of clif so we can publish again 2019-07-10 15:10:00 -07:00
Syrus
e980931329 Added simd spectest file 2019-07-10 14:43:54 -07:00
Syrus
a14d2b27b4 Added simd tests for llvm 2019-07-10 14:41:15 -07:00
Nick Lewycky
e4123433a1 Reformat. 2019-07-10 14:28:07 -07:00
Nick Lewycky
53907b0ab2 Update inkwell to our own copy until upstream supports LLVM 8.
LLVM 8 support from https://github.com/lumen/inkwell/tree/llvm8 .
2019-07-10 14:23:47 -07:00
Nick Lewycky
f4af4e387d Stub out support for V128 in the C API for now. 2019-07-10 13:54:36 -07:00
Nick Lewycky
bb30434392 This .into_iter() call is equivalent to .iter() and will not move the array. 2019-07-10 13:54:36 -07:00
Nick Lewycky
fdc13563b8 Initial implementation of SIMD in the LLVM backend. 2019-07-10 13:54:32 -07:00
Nick Lewycky
3ba8100e98 Add V128 stubs to allow singlepass backend to build again. 2019-07-10 13:48:12 -07:00
Nick Lewycky
77afcea9dc Add V128 stubs to allow LLVM backend to build again. 2019-07-10 13:48:12 -07:00
Nick Lewycky
df5c12cbe1 Add V128 to wasmer runtime. Unimplemented in clif-backend. Other backends don't build. 2019-07-10 13:48:12 -07:00
Nick Lewycky
0a1bdd449e Update to @llvm.minimum/@llvm.maximum which requires LLVM 8.
The @llvm.minnum/@llvm.maxnum intrinsics don't produce correct (for wasm) outputs in all cases.
2019-07-10 13:48:12 -07:00
Nick Lewycky
ea83924547 Update to LLVM 8.0. 2019-07-10 13:48:12 -07:00
Nick Lewycky
b8d2aee80f Update wabt to 0.8 release. 2019-07-10 13:48:12 -07:00
Nick Lewycky
9579b07a54 Enable SIMD support in wasmparser. 2019-07-10 13:48:12 -07:00
Nick Lewycky
acbface4be Factor out creating wasmparser::ValidatingParserConfig to its own function. 2019-07-10 13:48:08 -07:00
nlewycky
d1f3fb2ec2
Merge branch 'master' into llvm-cleanup 2019-07-10 13:32:17 -07:00
Mark McCaskey
ad3d4a4679 rm clif submodule; fix master 2019-07-10 10:38:38 -07:00
Nick Lewycky
1e86e32d40 Use bitcast instead of alloca+load+ptrcast+store sequence. 2019-07-10 10:24:14 -07:00
Mark McCaskey
2ef7448e62 remove colons from feature names 2019-07-09 17:57:31 -07:00
Mark McCaskey
4752492974 update version numbers to 0.5.5 2019-07-09 17:43:04 -07:00
Mark McCaskey
74ce33919f
Merge branch 'master' into fix/abi-crate-deps 2019-07-09 15:31:45 -07:00
Mark McCaskey
4612b2bf9a add cranelift as submodule to clif-backend 2019-07-09 14:30:31 -07:00
Mark McCaskey
6d494a297f fix emscripten tests 2019-07-09 13:41:40 -07:00
Mark McCaskey
e0c285c652 fix emscripten dependencies by making separate test crate 2019-07-09 12:07:05 -07:00
Mark McCaskey
5bf491857b fix abi crates depending on compilers 2019-07-09 11:58:03 -07:00
Mark McCaskey
30add2481e do backend caching with a directory 2019-07-08 17:05:54 -07:00
Mark McCaskey
4407a7cf93 Add hidden flag --cache-key to use prehashed modules for speed 2019-07-08 15:46:28 -07:00
Mark McCaskey
62798fd966 fix test
fix doc test
2019-07-08 13:21:34 -07:00
Mark McCaskey
9a3fd82a4b Keep WashHash::generate function the same 2019-07-08 12:22:17 -07:00
Mark McCaskey
f45d523012 update tests to use backend as in cache key gen 2019-07-08 11:11:27 -07:00
Mark McCaskey
b746a88138 Update cache key generation to use backend compiler name too 2019-07-08 10:50:28 -07:00
Syrus
b67b051a4a Updated emscripten with comment 2019-07-08 09:39:19 -07:00
Syrus
6f1a8995ca Fixed emscripten windows vars format 2019-07-08 00:35:18 -07:00
Syrus
680b833e94 Move emscripten ___syscall221 to the unix implementation 2019-07-07 23:36:50 -07:00
Syrus
72a80a6122 FIxed emscripten windows issues 2019-07-07 22:50:50 -07:00
Syrus
69be61c9cb Remove this calls in windows 2019-07-07 19:51:11 -07:00
Syrus
798ad03182 Improved formatting in unix syscalls 2019-07-07 19:35:46 -07:00
Syrus
f4e60c09c1 Squashed commit of the following:
commit 62d9da4e3e02251a0f61c904e826bc06cf964ff7
Author: Syrus <me@syrusakbary.com>
Date:   Sun Jul 7 18:16:34 2019 -0700

    Fixed syscall221

commit a8fde9148d50d89616d8a85a68110b89e3273229
Author: Syrus <me@syrusakbary.com>
Date:   Sun Jul 7 18:16:04 2019 -0700

    Improved ioctl use case

commit 5ad109d39838624ad84232a4c17714b885835893
Merge: 61526e2c 5cab8161
Author: Syrus <me@syrusakbary.com>
Date:   Sun Jul 7 17:44:25 2019 -0700

    Merge branch 'command/dash' into feature/emscripten-update

commit 5cab816193
Author: Jesús Leganés-Combarro 'piranna <piranna@gmail.com>
Date:   Sat Jul 6 20:11:49 2019 +0200

    Generic IOCTLs mapping

commit 5a0dc0374c
Merge: 61cfed79 9d120ed3
Author: Jesús Leganés-Combarro 'piranna <piranna@gmail.com>
Date:   Sat Jul 6 17:15:02 2019 +0200

    Merge remote-tracking branch 'origin/master' into command/dash

commit 61cfed7916
Author: Jesús Leganés-Combarro 'piranna <piranna@gmail.com>
Date:   Sat Jul 6 13:04:04 2019 +0200

    Fixed implementation for syscalls 200, 201 and 202

commit 91e26d1a0e
Author: Jesús Leganés-Combarro 'piranna <piranna@gmail.com>
Date:   Sat Jul 6 13:03:26 2019 +0200

    Improved debug messages

commit 53a8fbeb2a
Author: Jesús Leganés-Combarro 'piranna <piranna@gmail.com>
Date:   Sat Jul 6 13:03:04 2019 +0200

    [___syscall146] Move loop out of `unsafe` zone

commit d6dd3696f1
Author: Jesús Leganés-Combarro 'piranna <piranna@gmail.com>
Date:   Sat Jul 6 13:01:31 2019 +0200

    [___syscall140] Fixed types

commit c827a6a993
Merge: 2bc16826 5e18d04d
Author: Jesús Leganés-Combarro 'piranna <piranna@gmail.com>
Date:   Sat Jul 6 12:21:33 2019 +0200

    Merge remote-tracking branch 'origin/master' into command/dash

commit 2bc16826b5
Author: Jesús Leganés-Combarro 'piranna <piranna@gmail.com>
Date:   Thu Jul 4 07:05:00 2019 +0200

    Implement `getpgid` syscall

commit d464954f58
Author: Jesús Leganés-Combarro 'piranna <piranna@gmail.com>
Date:   Thu Jul 4 07:04:36 2019 +0200

    [fcntl64] Replace mock for real implementation

commit 3fe0183d85
Author: Jesús Leganés-Combarro 'piranna <piranna@gmail.com>
Date:   Thu Jul 4 07:03:39 2019 +0200

    [ioctl] No-of for `TIOCSPGRP` command & code clean-up

commit cc83ec9ac1
Author: Jesús Leganés-Combarro 'piranna <piranna@gmail.com>
Date:   Thu Jul 4 07:02:47 2019 +0200

    [___syscall5] debug messages

commit 91587c8bde
Author: Jesús Leganés-Combarro 'piranna <piranna@gmail.com>
Date:   Thu Jul 4 07:02:20 2019 +0200

    [___syscall57] debug messages
2019-07-07 19:35:09 -07:00
Syrus
61526e2c45 Improved code format 2019-07-07 17:10:55 -07:00
Syrus
d9eee3f35a Added contains_key method to Namespace 2019-07-07 17:10:34 -07:00
Syrus
cb7a1f4486 Improved emscripten code based on comments 2019-07-07 17:10:13 -07:00
Syrus
9c96f01494 Fixed emscripten ns collision. Added ctime implementation 2019-07-07 15:55:52 -07:00
Syrus
d0b186b939 Added emscripten sbrk implementation 2019-07-06 22:05:45 -07:00
Syrus
d3d84cbc22 Formatted emscripten files 2019-07-06 17:46:48 -07:00
Syrus
15d1fd4bbb Move emscripten pthread into its own module 2019-07-06 17:45:56 -07:00
Syrus
f5af920724 Added pthread_self emscripten method 2019-07-06 17:41:03 -07:00
Syrus
b1f868dc52 Enable shared memory in emscripten 2019-07-06 17:29:24 -07:00
Syrus
24e7c1b263 Updated compatibility with latest emscripten 2019-07-06 17:15:35 -07:00
Syrus Akbary
4d21d2485c
Merge branch 'master' into update-0.5.4 2019-07-06 00:53:02 -07:00
Syrus
5a2a3f65df Trying to fix tests 2019-07-05 20:38:19 -07:00
Syrus
7a120f48d7 Fixed capi 2019-07-05 19:55:03 -07:00
Syrus
2569d3b40c Added LLVM compiler to WASI tests 2019-07-05 19:27:33 -07:00
Syrus
b9237a9f00 Fixed WASI tests 2019-07-05 19:15:10 -07:00
Mark McCaskey
99ebb782dc update to version 0.5.4 2019-07-05 13:35:55 -07:00
Syrus
9c2250dd41 Improved WASI path_readlink function signature 2019-07-05 03:27:13 -07:00
losfair
a3dcc0e240 Merge remote-tracking branch 'origin/master' into feature/osr 2019-07-04 23:56:45 +08:00
Mark McCaskey
535da4c34a update to version 0.5.3 for wapm bug fix 2019-07-03 14:35:39 -07:00
losfair
02464991da Cargo fmt 2019-07-04 01:45:54 +08:00
losfair
f32b22d571 Bkpt* -> Breakpoint* 2019-07-04 01:45:06 +08:00
losfair
7f28a4dbef Cleanup constants and comments. 2019-07-04 01:42:11 +08:00
losfair
5c5ecfff7d Rename alternative_stack to fault. 2019-07-04 01:27:19 +08:00
Mark McCaskey
83da82d844 update for release wasmer 0.5.2 2019-07-02 14:13:45 -07:00
nlewycky
edb674d84b
Merge branch 'master' into update-cranelift 2019-07-02 10:07:22 -07:00
Nick Lewycky
b8f0292c0a Update to wasmpaser 0.32.1. 2019-07-02 10:00:19 -07:00
Nick Lewycky
75faae2912 Disable jump tables. We don't have an implementation of reloc_jt yet. 2019-07-02 09:55:46 -07:00
Mark McCaskey
d407606db4 fix issue with linux 2019-07-01 16:59:25 -07:00
Mark McCaskey
a4171892ea move unix code to unix only location 2019-07-01 16:50:55 -07:00
Mark McCaskey
623bec001f improve networking in emscripten 2019-07-01 16:36:30 -07:00
Nick Lewycky
adb257a40f Reformat. 2019-07-01 16:15:13 -07:00
Nick Lewycky
9fc713f9b1 Update for new wasmparser.rs version. 2019-07-01 16:11:38 -07:00
nlewycky
35c2325571
Merge branch 'master' into update-cranelift 2019-07-01 15:30:35 -07:00
Nick Lewycky
fe38cc915b Update to newer cranelift which also requires an update to wasmparser 0.31.0. 2019-07-01 15:27:17 -07:00
bors[bot]
fada36a72c Merge #514
514: improve emscripten sockets and networking r=MarkMcCaskey a=MarkMcCaskey



Co-authored-by: Mark McCaskey <mark@wasmer.io>
2019-07-01 20:29:52 +00:00
Mark McCaskey
6afc2e4fd9 fix warnings; rm dbg statements 2019-07-01 12:57:33 -07:00
Mark McCaskey
d825fe9eb2 remove unix-specific code from code windows sees 2019-07-01 11:42:50 -07:00
Mark McCaskey
01491fd986 add instance creation benchmark 2019-07-01 11:17:31 -07:00
losfair
c67405ffe5 Add workaround for singlepass miscompilation on GetLocal. 2019-07-01 21:20:35 +08:00
losfair
650f67a339 Merge remote-tracking branch 'origin/master' into feature/osr 2019-07-01 21:15:35 +08:00
losfair
adada7e751 Only print backtrace if frames are detected 2019-07-01 21:12:19 +08:00
Syrus
a2b723d37e Added more emscripten dyncalls 2019-06-30 11:10:54 -07:00
losfair
614b3b9918 Run middlewares after begin_body. 2019-06-30 11:50:21 +08:00
losfair
80509e3f78 Fix singlepass miscompilation. 2019-06-30 11:50:06 +08:00
Syrus
299d41cfea Improved emscripten dyncalls 2019-06-29 17:39:01 -07:00
Mark McCaskey
4fcb3c4c83 improve emscripten sockets and networking 2019-06-28 17:14:00 -07:00
Syrus
6cc41f82c8 Fixed lseek error in Windows 2019-06-27 12:42:27 -07:00
Syrus
6aec631774 Improved lseek assignment 2019-06-27 12:37:29 -07:00
Syrus
73367ef6e9 Fixed cast alignment issue 2019-06-27 11:31:08 -07:00
Syrus
10eab1ca68 Improved code 2019-06-27 11:21:03 -07:00
Syrus
47e38f0b2a Fixed formatting 2019-06-27 11:18:49 -07:00
Syrus
7ba646a792 Merge branch 'master' into feature/emscripten-fix-lseek 2019-06-27 11:15:22 -07:00
Syrus
dda438ebd1 Fixed lseek 2019-06-27 11:14:38 -07:00
losfair
db117d2f26 Cleanup internal logic. 2019-06-27 17:54:06 +08:00
losfair
1bd30bed4b Implement XMM register reading on Linux. 2019-06-27 16:00:04 +08:00
losfair
967027003d Full preemptive snapshot/resume. 2019-06-27 15:49:43 +08:00
losfair
f048dc2ff6 Cleanup & fix memory leaks. 2019-06-27 01:04:59 +08:00
losfair
63f9818cf6 Move more logic into runtime-core and add an interactive shell. 2019-06-27 00:41:07 +08:00
losfair
a792ac6a48 Wrap alternative stack functions properly. 2019-06-26 20:45:32 +08:00
losfair
183571927c Merge remote-tracking branch 'origin/master' into feature/osr 2019-06-26 13:02:41 +08:00
losfair
f81464142a Fix unused import error on Windows. 2019-06-26 12:56:37 +08:00
losfair
1bdf0d5ad7 Fix clippy error. 2019-06-26 12:50:34 +08:00
losfair
03e6311446 Require backend:singlepass for suspend/resume. 2019-06-26 12:46:01 +08:00
losfair
9b4343eac5 Fix compilation on Linux. 2019-06-26 12:33:50 +08:00
losfair
2373d371ae Optimize backtraces. 2019-06-26 11:28:46 +08:00
Nick Lewycky
70247a0c6e Simplify construction of floating point constants. 2019-06-25 16:05:22 -07:00
Nick Lewycky
55394b4f06 Void type in llvm may only be used as a function return type. You may not form a pointer to void or use it as a structure member.
Fixes assertion failure initializing llvm backend.
2019-06-25 16:05:22 -07:00
losfair
2730efcc6c Cargo fmt 2019-06-26 01:39:30 +08:00
losfair
0937e53801 Fully persist program state. 2019-06-26 01:38:39 +08:00
losfair
3f2aeec9bc Suspend & restore. 2019-06-25 20:01:56 +08:00
Syrus
d4634dfdb9 Removed unused llvm file 2019-06-25 01:40:15 -07:00
losfair
8303853227 Cargo fmt 2019-06-25 03:56:20 +08:00
losfair
fb7c3eee8a Improve stack trace collection and rendering. 2019-06-25 03:55:33 +08:00
Mark McCaskey
09177ac3ae update version numbers to 0.5.1, add changelog entry 2019-06-24 12:45:40 -07:00
losfair
73eb04d269 Merge remote-tracking branch 'origin/master' into feature/osr 2019-06-24 23:35:47 +08:00
Nick Lewycky
3e0a2a05e2 Fix typo in panic! 2019-06-18 15:15:49 -07:00
Nick Lewycky
e3af924391 Fix typo in comment. No functionality change. 2019-06-18 15:00:19 -07:00
Mark McCaskey
7bdfb2be51 update version numbers and changelog for 0.5.0 2019-06-17 12:56:28 -07:00
Syrus
5c64d8053f Merge branch 'master' into command/pyodide
# Conflicts:
#	CHANGELOG.md
2019-06-14 10:32:16 +02:00
Syrus
6467816ea8 Fixed asseertion of alignment 2019-06-14 10:27:06 +02:00
Syrus Akbary
13a2773372
Merge branch 'master' into command/pyodide 2019-06-14 10:09:53 +02:00
Ivan Enderlin
04c9d25194
Merge branch 'master' into fix-runtime-c-api-warnings 2019-06-14 10:07:53 +02:00
Syrus
95f39cedec Fixed last linting issues
(hopefully)
2019-06-14 09:53:07 +02:00
Syrus
b9fa698a73 Assert alignment 2019-06-13 21:53:37 +02:00
Syrus
4059562560 Updated nightly version 2019-06-13 21:37:55 +02:00
Syrus
86b78c6b14 Fixed clippy issues 2019-06-13 21:32:05 +02:00
Syrus
7ebb90527c Fixes remaining clippy issues 2019-06-13 21:23:41 +02:00
Syrus
675caf042c Various lint fixes 2019-06-13 21:01:37 +02:00
Syrus
1560849e40 Fix lint errors and windows build 2019-06-13 20:46:05 +02:00
Syrus
8829e1d901 Make Python running 🎉 2019-06-13 14:05:57 +02:00
Syrus
58d75868f4 Fixed syscall220 alignment 2019-06-13 12:17:17 +02:00
Jesús Leganés-Combarro 'piranna
f12d6f8dd2 Merge branch 'command/pyodide' of github.com:wasmerio/wasmer into command/pyodide 2019-06-12 23:26:02 +02:00
Jesús Leganés-Combarro 'piranna
cc740040d2 Merge branch 'master' into command/pyodide 2019-06-12 22:52:05 +02:00
losfair
9585b89705 Fix bugs in state reading. 2019-06-12 23:54:15 +08:00
losfair
32008eba88 Read stack values based on state map. 2019-06-12 22:02:15 +08:00
Ivan Enderlin
63ec73aacc fix(runtime-c-api) Remove deprecated types from libc.
Since https://github.com/rust-lang/libc/pull/1379, fixed width integer
type aliases are deprecated. Thus, this patch uses Rust types instead
of libc aliases.
2019-06-12 12:10:49 +02:00
Ivan Enderlin
81d8e4ee2e feat(runtime-c-api) Improve error message when compiling a module. 2019-06-12 11:35:29 +02:00
losfair
00b6bf632a Dumping stack through import. 2019-06-12 13:38:58 +08:00
Syrus
109acd2fa3 Trying to fix ___syscall220 2019-06-12 01:01:47 +02:00
Syrus
6ce4f5dca4 Minor fixes 2019-06-12 00:13:06 +02:00
losfair
ddd0653a25 Make singlepass backend emit state mapping information. 2019-06-12 00:21:43 +08:00
Syrus
0b416e14c3 Improved syscall220 debug 2019-06-11 17:38:16 +02:00
losfair
da9bf05218 Machine state diff 2019-06-11 20:49:30 +08:00
Mark McCaskey
b36783fc50 remove duplicated code, wrap WasmPtr on wasi side 2019-06-11 11:10:42 +02:00
Mark McCaskey
7965ed2746 fix newly introduced bug in wasmptr array access 2019-06-10 13:32:33 +02:00
Jesús Leganés-Combarro 'piranna
d165763b4d Merge branch 'master' into command/pyodide 2019-06-10 12:35:11 +02:00
Mark McCaskey
7a66a5285d
Merge branch 'master' into feature/better-memory-access-for-emscripten 2019-06-10 03:26:50 -07:00
Brandon Fish
c6786474a7 Add MiddlewareChain and StreamingCompiler to runtime 2019-06-09 23:24:10 -05:00
losfair
082b8376ae State representation. 2019-06-09 21:21:18 +08:00
Jesús Leganés-Combarro 'piranna
5d93d9a904 Added fb and gb symbols 2019-06-08 19:53:21 +02:00
Jesús Leganés-Combarro 'piranna
ff21d9e95f Merge branch 'master' into command/pyodide 2019-06-08 19:48:25 +02:00
losfair
61786a370a Fix typo in machine. 2019-06-08 22:56:13 +08:00
laizy
1780d57df1 add Mechine::release_locations_keep_state test 2019-06-08 22:25:20 +08:00
laizy
8105c0c16f fix stack offset check 2019-06-08 15:03:56 +08:00
Brandon Fish
f6ecfa40cb
Merge branch 'master' into feature/metering 2019-06-06 23:33:31 -05:00
Brandon Fish
e87d507162 Add black_box to benchmarking 2019-06-06 23:30:31 -05:00
Brandon Fish
418764a15f Add get/set gas used for benchmark 2019-06-06 23:25:11 -05:00
Syrus Akbary
98e04193af
Merge branch 'master' into feature/better-memory-access-for-emscripten 2019-06-06 18:03:55 -07:00
Mark McCaskey
811acd7e68 probably actually fix the wasi ptr array bug now 2019-06-06 16:19:15 -07:00
Mark McCaskey
d7ea46bab7 add wasmptr memory abstraction to emscripten; update wasi array access 2019-06-06 15:45:19 -07:00
Mark McCaskey
6f633cee6f fix pointer casting lint in emscripten syscall191 2019-06-06 12:07:19 -07:00
Mark McCaskey
8df63b1b6e fix bugs in emscripten socket syscalls 2019-06-06 11:55:05 -07:00
Jesús Leganés-Combarro 'piranna
a9bcb7d932 Merge branch 'master' into command/pyodide 2019-06-06 18:41:06 +02:00
losfair
c6cd49a370 Support getting/setting metering points and internal fields with a Ctx. 2019-06-06 14:10:57 +08:00
Brandon Fish
27eacf0c4f Add metering benchmark 2019-06-06 00:37:04 -05:00
losfair
f5243aff5e Cargo fmt 2019-06-05 11:52:25 +08:00
losfair
f2d8aad73a Support checking the execution limit exceeded error. 2019-06-05 11:51:33 +08:00
losfair
0867208e0c Implement {get,set}_points_used. 2019-06-05 02:28:19 +08:00
losfair
69944c1dc2 Fix ctx layout in LLVM. 2019-06-05 02:13:10 +08:00
losfair
66dcec91c4 Add comments for trampoline_x64. 2019-06-05 01:59:20 +08:00
losfair
f4df568e41 Naming fixes and documentation for trampoline API. 2019-06-05 01:38:35 +08:00
losfair
f1b27d5774 Cargo fmt 2019-06-05 01:26:35 +08:00
losfair
669f76025c Add callinfo trampoline into the C API. 2019-06-05 01:25:37 +08:00
losfair
b2869e181c Cargo fmt 2019-06-05 01:11:54 +08:00
losfair
8a74399c6e Add callinfo trampoline support. 2019-06-05 01:11:10 +08:00
losfair
06280e225e Fix unused_imports error on lazy_static. 2019-06-03 15:31:42 -07:00
losfair
0a44add31c Fix clippy errors. 2019-06-03 15:31:42 -07:00
losfair
d70cb9695e Add trampoline-related functions to C API. 2019-06-03 15:31:42 -07:00
losfair
7808c68cb2 Cargo fmt 2019-06-03 15:31:42 -07:00
losfair
ae19e7f71b Trampoline for calling with context. 2019-06-03 15:31:42 -07:00
Brandon Fish
66f9049a06 Reset LLVM related code to master 2019-06-02 19:36:26 -05:00
Brandon Fish
0c3109fb55 Update Makefile and test configuration 2019-06-02 15:43:02 -05:00
Brandon Fish
8fdc4f9bc2 Start documenting Metering 2019-06-02 15:42:25 -05:00
Brandon Fish
f9c8f41232 Remove points_limit and update tests 2019-06-02 13:37:51 -05:00
Brandon Fish
c020c39193 Move get/set points used to middleware 2019-06-02 13:21:00 -05:00
Brandon Fish
e533a8a7b5 Add tests for metering, add option to compiler config 2019-06-02 11:37:02 -05:00
Brandon Fish
995ecefa92 Cargo fmt 2019-06-02 09:49:21 -05:00
Brandon Fish
f029ea6231 Merge branch 'master' into feature/metering 2019-06-02 09:31:34 -05:00
Jesús Leganés-Combarro 'piranna
222b582207 Merge remote-tracking branch 'origin/master' into command/pyodide 2019-06-02 14:10:25 +02:00
Brandon Fish
3a00f779e8 Try using dependency git revision to see if it fixes CI dependency error 2019-06-01 15:29:49 -05:00
Brandon Fish
2860c4996c
Merge branch 'master' into feature/clif-cgapi 2019-06-01 12:04:20 -05:00
Brandon Fish
fd373dbf63 Add cache store, load, and execute test for cranelift and llvm 2019-06-01 11:35:26 -05:00
Brandon Fish
0567032bef
Merge branch 'master' into feature/clif-cgapi 2019-05-31 23:40:42 -05:00
losfair
c1e817b3fb Add missing relaxed moves. 2019-05-31 19:29:28 +08:00
losfair
8019505e65 Merge remote-tracking branch 'origin/feature/clif-cgapi' into feature/metering 2019-05-31 15:40:05 +08:00
losfair
b834b4ff36 Metering for LLVM. 2019-05-31 15:36:08 +08:00
Mark McCaskey
6a9515d13d improve wasi envvar test 2019-05-30 12:25:14 -07:00
Mark McCaskey
2a94a6933f add envvar opt, add test, rm binaries from wasitests, clean up 2019-05-30 11:58:52 -07:00
Brandon Fish
b2e37cecfa
Merge branch 'master' into feature/clif-cgapi 2019-05-29 22:45:31 -05:00
Mark McCaskey
792ebc06fc fix bug in wasi::environ_get, fix off by one error in env_size_get 2019-05-29 18:04:55 -07:00
Mark McCaskey
281c5ff45d fix bugs in em mapdir, improve it for relative paths, use it more 2019-05-29 14:20:52 -07:00