Mark McCaskey
97a2237255
Merge branch 'master' into feature/map-dir
2019-05-20 15:23:13 -07:00
Mark McCaskey
f2001fea50
fix file creation ts for WASI Linux
2019-05-20 15:02:22 -07:00
Mark McCaskey
d7d17bd647
add expect to call entrypoint in wasi tests
2019-05-20 13:55:29 -07:00
Jesús Leganés-Combarro 'piranna
34e16d4a84
Move ucontext
related functions to their own namespace
2019-05-20 22:54:58 +02:00
Mark McCaskey
7a4b47d651
update compiled tests
2019-05-20 13:28:31 -07:00
Mark McCaskey
2c5f72805e
fix WASI clock bugs
2019-05-20 11:01:28 -07:00
Mark McCaskey
8a177363f4
fix file metadata wasi test
2019-05-20 09:24:55 -07:00
Brandon Fish
5db575e8ef
Fix clif_signatures in function codegen
2019-05-19 15:22:02 -05:00
Brandon Fish
db669f7eb7
Fix more codegen compilation issues
2019-05-19 15:01:25 -05:00
Jesús Leganés-Combarro 'piranna
8995060f9b
Mocks for _getcontext
, _makecontext
, _setcontext
and _swapcontext
2019-05-19 20:53:24 +02:00
Jesús Leganés-Combarro 'piranna
f8cfb04e29
_alarm()
2019-05-19 20:24:49 +02:00
Jesús Leganés-Combarro 'piranna
2eb5ca1e48
_gai_strerror()
2019-05-19 20:16:00 +02:00
Brandon Fish
d547beda72
Fix self.info compilation error in MCG.finalize
2019-05-19 13:05:35 -05:00
Jesús Leganés-Combarro 'piranna
7690febe77
getnameinfo()
2019-05-19 19:37:57 +02:00
Jesús Leganés-Combarro 'piranna
ad8178bb2a
[pthread] rwlock_destroy()
, rwlock_init()
and rwlock_wrlock()
2019-05-19 19:16:04 +02:00
Brandon Fish
e34e625009
Implement MCG.next_function in other backends
2019-05-19 11:45:16 -05:00
Brandon Fish
47479b547f
Implement MCG.{finalize, from_cache}
2019-05-19 10:53:33 -05:00
Brandon Fish
6d5dd5ff21
Implement more function codegen
2019-05-19 00:27:39 -05:00
Brandon Fish
2d10306c87
Add copyright notice
2019-05-18 16:32:22 -05:00
Brandon Fish
74a758d39e
Add progress on next_event
2019-05-18 16:31:08 -05:00
Syrus
8f345dc284
Updated imports required for jq. Added get_str method in VarArgs
2019-05-18 12:38:22 -07:00
Mark McCaskey
4b03abafcc
Merge branch 'master' into feature/map-dir
2019-05-17 16:24:26 -07:00
Mark McCaskey
4760840a77
move stdout capture from runtime core to dev-utils
2019-05-17 15:48:30 -07:00
Mark McCaskey
542e47ff82
add more wasi tests
2019-05-17 15:31:02 -07:00
Mark McCaskey
b3b5716dbb
add files in runtime_Core
2019-05-17 13:31:41 -07:00
Mark McCaskey
ec9c5360ef
move stdio capture into runtime_core; rm emscripten dep in wasi
2019-05-17 13:30:10 -07:00
Mark McCaskey
b9bb310215
add wasi regression test system
2019-05-17 12:09:31 -07:00
Mark McCaskey
f9beef276d
implement map-dir for WASI; fix bug in path_open
2019-05-16 17:35:13 -07:00
Syrus
4ddffb8285
Update libraries versions to 0.4.2
2019-05-16 14:39:13 -07:00
losfair
6aec1c4b5f
Use INTERNALS_SIZE
2019-05-17 01:33:33 +08:00
losfair
8e0d71b2bc
Fix missing internals
in test.
2019-05-17 01:32:41 +08:00
losfair
b830f10fa0
Update metering data on return
2019-05-17 01:20:09 +08:00
losfair
14fcd78b30
Update bin/wasmer and run cargo fmt.
2019-05-17 01:15:05 +08:00
losfair
e7297b9465
Update singlepass backend to support metering.
2019-05-17 01:11:22 +08:00
losfair
7e79dd2cfe
Metering middleware.
2019-05-17 01:10:45 +08:00
losfair
6aa87a0bbf
Add the internals
field and necessary structures for metering.
2019-05-17 01:10:21 +08:00
losfair
100039afd6
Merge remote-tracking branch 'origin/master' into feature/remote-code-load
2019-05-16 09:28:02 +08:00
losfair
b28992932e
Rename wasmer-kernel-net
to kernel-net
.
2019-05-16 09:22:40 +08:00
Mark McCaskey
83deae80dc
update changelog; clean up
2019-05-15 15:16:52 -07:00
Mark McCaskey
b2752735db
avoid opening files when not needed in WASI, check for write permissions
2019-05-15 15:11:29 -07:00
Mark McCaskey
a9f643f774
add trace macro for more verbose debug statements
2019-05-15 11:46:17 -07:00
Syrus
3bbf7753cb
Renamed kwasm-net to wasmer-kernel-net
2019-05-15 10:34:56 -07:00
Mark McCaskey
ace7a19a7b
apply base path update to wasi::path_filestat_get
2019-05-15 10:25:31 -07:00
losfair
a1a58d4a50
Merge remote-tracking branch 'origin/master' into feature/remote-code-load
2019-05-15 21:44:11 +08:00
losfair
d72abf3203
Rename kwasm-loader
to wasmer-kernel-loader
.
2019-05-15 21:43:19 +08:00
Brandon Fish
ac3fafae9a
Merge branch 'master' into feature/clif-cgapi
2019-05-14 23:01:28 -05:00
bors[bot]
03671ab5ac
Merge #442
...
442: Fix/misc wasi fs issues r=MarkMcCaskey a=MarkMcCaskey
resolves #434
Co-authored-by: Mark McCaskey <mark@wasmer.io>
Co-authored-by: Mark McCaskey <markmccaskey@users.noreply.github.com>
2019-05-15 00:40:50 +00:00
Mark McCaskey
216d09b7c7
Merge branch 'fix/misc-wasi-fs-issues' of github.com:wasmerio/wasmer into fix/misc-wasi-fs-issues
2019-05-14 17:40:09 -07:00
Mark McCaskey
c402c0350c
return EIO if internal data structures are corrupt
2019-05-14 17:39:19 -07:00
Mark McCaskey
593255021d
Merge branch 'master' into fix/misc-wasi-fs-issues
2019-05-14 16:42:42 -07:00
Mark McCaskey
87d9940a23
implement readdir!
2019-05-14 16:33:54 -07:00
Brandon Fish
89f3998b49
Merge branch 'master' into feature/fix-default_compiler-compilation
2019-05-14 18:22:44 -05:00
Brandon Fish
bef9f1244a
Return impl Compiler from default_compiler to fix compilation with features
2019-05-14 18:19:58 -05:00
Mark McCaskey
3bf550055f
rm from entry in fd_renumber -- thanks Brandon!
2019-05-14 15:10:01 -07:00
Mark McCaskey
84ea25241a
fix opening directories in path_open
2019-05-14 15:08:45 -07:00
Mark McCaskey
5114d42237
fix borrowing warning on nightly
2019-05-14 14:05:41 -07:00
Ivan Enderlin
8bd9bbb508
chore(runtime-c-api) Update C/C++ header files.
2019-05-14 16:19:32 +02:00
Ivan Enderlin
f04e77323b
fix(runtime-c-api) Update wasmer_export_func_params_arity
signature.
...
The `returns_len` argument type of `wasmer_export_func_returns_params`
must be `uint32_t` to match the `wasmer_export_func_returns_arity` results,
so that casts are not required.
2019-05-14 16:18:41 +02:00
Ivan Enderlin
53661385ed
chore(runtime-c-api) Update C/C++ header files.
2019-05-14 16:17:13 +02:00
Ivan Enderlin
91006bab53
fix(runtime-c-api) Update wasmer_export_func_params_arity
signature.
...
The `params_len` argument type of `wasmer_export_func_params_arity`
must be `uint32_t` to match the `wasmer_export_func_*_arity` results,
so that casts are not required.
2019-05-14 16:15:36 +02:00
losfair
fac4c452c6
Fix LLVM backend.
2019-05-14 18:49:02 +08:00
Ivan Enderlin
2b250c30f3
chore(runtime-c-api) Regenerate C/C++ header files.
2019-05-14 11:50:10 +02:00
Ivan Enderlin
f68379a6df
test(runtime-c-api) Use *_arity
variables when calling wasmer_export_func_call
.
2019-05-14 11:49:40 +02:00
Ivan Enderlin
d3c75a38fa
fix(runtime-c-api) wasmer_instance_call
types matches wasmer_export_func_*_arity
.
...
The `wasmer_export_func_params_arity` and
`wasmer_export_func_returns_arity` functions store the arity in a
`uint32_t`. The `wasmer_instance_call` expects `c_int`. There is a
type mismatch here. It's not annoying in C or C++, but in some other
languages that have bindings to C/C++, it can imply useless casting.
This patch changes `wasmer_instance_call` to expect `uint32_t` for
`params_len` and `results_len` to match the
`wasmer_export_func_*_arity` functions.
2019-05-14 11:46:43 +02:00
losfair
d641909c63
Fix clippy error
2019-05-14 17:13:17 +08:00
losfair
ee09209bfb
Fix clippy error.
2019-05-14 16:59:18 +08:00
losfair
d60e2377c1
Only compile kwasm-net for wasm32-wasi.
2019-05-14 16:45:26 +08:00
losfair
1e7a928d64
Add comments.
2019-05-14 16:13:42 +08:00
losfair
32f9aee6fe
Cargo fmt
2019-05-14 16:04:08 +08:00
losfair
722ea39877
Cleanup loader code.
2019-05-14 16:02:27 +08:00
losfair
2a160c74ad
Fix wasmer-runtime-core dependency version.
2019-05-14 15:47:19 +08:00
losfair
db9705f00c
Merge remote-tracking branch 'origin/master' into feature/remote-code-load
2019-05-14 15:46:15 +08:00
Heyang Zhou
2963b0a2eb
Make schedule()
faster.
2019-05-14 00:04:32 -07:00
Syrus
19eba19603
Merge branch 'master' into doc-runtime-c-api
...
# Conflicts:
# lib/runtime-c-api/src/lib.rs
2019-05-13 15:55:20 -07:00
Syrus
8218e550fc
Improved docs and fixed few typos
2019-05-13 11:18:57 -07:00
Syrus
5a6cb96714
Merge branch 'master' into docs/better-runtime-docs
...
# Conflicts:
# lib/runtime-core/src/vm.rs
2019-05-13 11:08:00 -07:00
Heyang Zhou
884a7e1713
kwasm-net fixes and optimizations.
2019-05-13 10:15:03 -07:00
Heyang Zhou
3bcdfb4263
Asynchronous networking extension.
2019-05-13 06:14:28 -07:00
Heyang Zhou
af1ac9af96
Improve performance of memory access.
2019-05-13 05:11:08 -07:00
Ivan Enderlin
b050144898
Merge branch 'master' into fix-runtime-c-api-error-length
2019-05-13 10:59:11 +02:00
Ivan Enderlin
8c8586faaa
test(runtime-c-api) Assert returned value from wasmer_last_error_message
.
2019-05-13 10:52:55 +02:00
Ivan Enderlin
bedd305b06
doc(runtime-c-api) Fix inline comment.
2019-05-13 10:52:43 +02:00
Brandon Fish
7315cd1100
Add some basic partial implementation of Cranelift codegen
2019-05-12 19:16:01 -05:00
bors[bot]
b2227314a7
Merge #436
...
436: Add deny for unreachable patterns and unused unsafe r=syrusakbary a=bjfish
Co-authored-by: Brandon Fish <brandon.j.fish@gmail.com>
2019-05-12 22:16:44 +00:00
Brandon Fish
d9cd4fc3e0
Add scaffold to use new code generator API for Cranelift
2019-05-12 11:05:26 -05:00
Brandon Fish
2aefa731a6
Add deny for unreachable patterns and unused unsafe
2019-05-12 00:33:02 -05:00
Brandon Fish
a96d5cb975
Fix f32/f64 conversion, add tests, and rename conversion method
2019-05-11 19:26:17 -05:00
Brandon Fish
85158ac22a
Add some initial deny for unused_imports and unused_variables
...
Additional unused variable fix on unix
Remove unused import on unix
Remove unused windows import
2019-05-11 09:23:25 -05:00
Mark McCaskey
02f3349cb1
clean up, update changelog
2019-05-10 10:58:06 -07:00
Mark McCaskey
a527154c62
major improvements to wasi fs calls; include explanation in unimpl!s
2019-05-10 10:54:36 -07:00
Ivan Enderlin
7d2721ef7a
fix(runtime-c-api) wasmer_last_error_message
returns the length + 1.
...
Returning the error message's length + 1 mimics the
`wasmer_last_error_length` function that counts the trailing null
byte.
2019-05-10 16:00:13 +02:00
Ivan Enderlin
1d555301f7
feat(runtime-c-api) Check buffer size before creating the slice.
...
It's safer to check the buffer size is large enough to hold the error
message before creating the slice from raw parts.
Also, this patch remove the need for `last_error`, simplifying the
code a little bit. The `length` variable is casted to `usize` once.
2019-05-10 15:55:02 +02:00
Mark McCaskey
1f99ef8377
implement some FS operations for rsign2
2019-05-09 16:01:36 -07:00
Brandon Fish
080220c6a7
Merge branch 'master' into feature/llvm-cgapi
2019-05-08 17:33:06 -07:00
Heyang Zhou
620a6ddd85
Disable memory bound checking for kernel loader.
2019-05-08 10:25:29 -07:00
Johan Andersson
36a78a23b6
Fix Windows crash on caching compiled artifact.
...
Memory clone function wasn't able to write to new reserved memory object.
Changed so allocating Memory objects with protection flag allocates commited memory.
2019-05-08 15:59:00 +02:00
Brandon Fish
54095fcd67
Clean up commented out code in LLVM codegen
2019-05-07 22:53:48 -05:00
Heyang Zhou
0bbd6e6970
Fix function offset.
2019-05-07 08:25:46 -07:00
losfair
e53d5a91ca
Remove transmutes.
2019-05-07 19:20:18 +08:00
Brandon Fish
9c0cbc9775
Remove previous LLVM parser code
2019-05-06 23:41:31 -05:00
Brandon Fish
87a94657d0
Merge branch 'master' into feature/llvm-cgapi
2019-05-06 22:39:20 -05:00
Mark McCaskey
e5dc94c7d6
update version number to 0.4.1
2019-05-06 18:02:39 -07:00
Mark McCaskey
e40b4a2c39
fix debug code
2019-05-06 14:58:44 -07:00
bors[bot]
94e6c7318f
Merge #424
...
424: Update emscripten to run JSC r=syrusakbary a=MarkMcCaskey
Co-authored-by: Mark McCaskey <mark@wasmer.io>
2019-05-06 21:19:27 +00:00
Mark McCaskey
91d01d1c05
clean up warnings
2019-05-06 14:17:23 -07:00
Mark McCaskey
ab184aceea
Update emscripten to run JSC
2019-05-06 14:05:04 -07:00
bors[bot]
704c783b54
Merge #414
...
414: Exception logging (win32): Handle error codes correctly, add some more strings r=syrusakbary a=hrydgard
Ran into a situation with an unknown exception from Cranelift (will probably report that one separately). Turns out the signum was "1" though which does not seem to correspond to any of the Windows error codes, except possibly STATUS_GUARD_PAGE which is 0x80000001, but only if we lost the top bit somewhere.
On Windows, exceptions seemed to be trapped by callProtected, which is implemented here: cade9a666f/lib/win-exception-handler/exception_handling/exception_handling.c
. It did not seem to correctly store and retrieve the exception code, instead always returning 1: ```longjmp(jmpBuf, 1);```
So I fixed it. And now the log output looks like this:
```
unhandled trap at 1560d5e7bab - code #c0000005: segmentation violation
```
Co-authored-by: Henrik Rydgård <henrik.rydgard@embark-studios.com>
Co-authored-by: Syrus Akbary <me@syrusakbary.com>
Co-authored-by: Mackenzie Clark <mackenzie.a.z.c@gmail.com>
2019-05-06 19:54:21 +00:00
Pekka Enberg
089aab296d
codegen: Remove unused LoadError import
...
Rustc complains that:
warning: unused import: `parse::LoadError`
--> lib/runtime-core/src/codegen.rs:7:5
|
7 | parse::LoadError,
| ^^^^^^^^^^^^^^^^
|
2019-05-06 20:42:35 +03:00
Heyang Zhou
0895dc60c2
Check param count.
2019-05-06 09:19:56 -07:00
Heyang Zhou
b343fd40bc
Pass in param count for import functions in kernel loader.
2019-05-06 08:28:12 -07:00
Mackenzie Clark
10b4a08ca6
Merge branch 'master' into improve-exception-logging
2019-05-06 08:09:24 -07:00
Heyang Zhou
61510f8116
Enforce runtime memory and stack bound check when using kernel loader.
2019-05-06 07:15:30 -07:00
Brandon Fish
0926a5020e
Implement caching for parser refactor
2019-05-05 20:11:47 -05:00
Syrus
8f345e9e8c
Fixed ioctl in Unix. Fixed provied main arguments
2019-05-05 13:55:40 -07:00
Syrus
789af39f9e
Improved ioctl calls
2019-05-05 12:31:31 -07:00
Brandon Fish
4770277b15
Remove parser refactor commented out code, unused imports and fields
2019-05-05 14:28:40 -05:00
Syrus
f076c04b76
Moved from println to debug the emscripten entrypoint statement
2019-05-05 12:14:25 -07:00
Syrus
341766dee5
Fixed format
2019-05-05 12:09:55 -07:00
Syrus
2ba680ad2f
Improved rename function
2019-05-05 12:09:27 -07:00
Brandon Fish
e1138a553b
Fix LLVM refactor unreachable depth
2019-05-05 13:56:02 -05:00
Brandon Fish
31acf81762
cargo fmt
2019-05-05 13:37:36 -05:00
Brandon Fish
1864733ab8
Merge branch 'master' into feature/llvm-cgapi
2019-05-05 13:25:51 -05:00
Syrus
10a965cc1e
Added few syscalls to run optipng
2019-05-05 11:24:57 -07:00
Syrus
90dd4bc458
Fix emtests
2019-05-05 11:21:28 -07:00
Heyang Zhou
7bc09ee220
kwasmd.
2019-05-05 09:32:35 -07:00
Heyang Zhou
cc01e40dc5
Split load/run
2019-05-05 05:03:07 -07:00
Heyang Zhou
46e4cb05bc
Get memory intrinsics at runtime.
2019-05-04 10:33:12 -07:00
Brandon Fish
60c0504bdf
Implement llvm returns in function code generator finalize
2019-05-04 12:07:21 -05:00
Heyang Zhou
a590d7cd07
Tables
2019-05-04 09:56:52 -07:00
Heyang Zhou
c4e4efc694
kwasm imports
2019-05-04 08:28:13 -07:00
Heyang Zhou
af0b1476f3
Add emit_u64 to Emitter API
2019-05-04 07:25:29 -07:00
Heyang Zhou
7a4b2172a5
Remove runtime dependence for BrTable
2019-05-04 07:25:11 -07:00
Heyang Zhou
af58ea5642
Kernel mode code loading.
2019-05-03 23:07:07 -07:00
Mark McCaskey
353ff60c0f
add misc changes while debugging
2019-05-03 17:34:57 -07:00
Brandon Fish
c5caf9b6db
Update LLVM FCG begin_body
2019-05-03 00:14:25 -05:00
losfair
14bfd75ac9
Code loader framework.
2019-05-03 00:23:41 +08:00
Henrik Rydgård
5e37368ec9
Exception logging (win32): Handle error codes correctly, add some more strings.
2019-05-02 12:45:52 +02:00
Syrus Akbary
c0a5f74d0c
Update lib/middleware-common/Cargo.toml
2019-05-01 11:32:57 -07:00
Syrus Akbary
67c4d74eb4
Update middleware version to 0.4.0
2019-05-01 11:28:14 -07:00
Brandon Fish
8d86844c5f
Merge branch 'master' into parser-middleware
2019-05-01 13:10:44 -05:00
losfair
99c101f312
Merge remote-tracking branch 'origin/master' into parser-middleware
2019-05-02 00:30:58 +08:00
Mark McCaskey
2646765671
Merge branch 'master' into update-version-numbers-to-4
2019-05-01 09:27:38 -07:00
Brandon Fish
b016ec6b34
Add start_of_code_block to function
2019-04-30 23:44:34 -05:00
Brandon Fish
0ee2ba0ee6
Implement more of next_function and finalize
2019-04-30 23:22:41 -05:00
Brandon Fish
ec253c73ab
Implement feed_local
2019-04-30 20:11:44 -05:00
Brandon Fish
39b6b05f71
Merge branch 'master' into atomic-transparent-repr
2019-04-30 17:09:18 -07:00
Syrus
747e5321a2
Fixed issues. Updated CHANGELOG
2019-04-30 12:05:13 -07:00
Syrus
ce140463d6
Merge branch 'master' into feature/jsc-emscripten
2019-04-30 11:47:28 -07:00
Syrus
e68f5e10e4
Improved emscripten functions to be able to run jsc
2019-04-30 11:47:03 -07:00
bors[bot]
82cf572245
Merge #404 #406
...
404: Update to newer common wasmparser version r=xmclark a=bjfish
- versions should match to have matching types in a common parser
- the `0.29.2` version matches the current parser version of cranelift-wasm
406: Cleanup some clippy warnings r=xmclark a=bjfish
Cleaned up some
- long literal lacking separators
- unneeded return
Co-authored-by: Brandon Fish <brandon.j.fish@gmail.com>
2019-04-30 15:37:12 +00:00