Commit Graph

186 Commits

Author SHA1 Message Date
Mark McCaskey
1ce29e788f add syscalls for sqlite3 2019-03-25 11:12:34 -07:00
Mark McCaskey
d825746245 Merge branch 'feature/add-syscalls-for-php' of github.com:wasmerio/wasmer into feature/add-syscalls-for-php 2019-03-25 10:45:19 -07:00
Mark McCaskey
de0dedc78d relocate io stubs and add windows syscall stubs 2019-03-25 10:45:02 -07:00
Mark McCaskey
4210bcd822
Merge branch 'master' into feature/add-syscalls-for-php 2019-03-25 10:17:18 -07:00
Mark McCaskey
e56dfe70c7 rm REVIEW comments 2019-03-25 10:16:43 -07:00
Mark McCaskey
c522c6d1e3 fix bugs; add checks and lint exceptions for alignment casting 2019-03-22 10:30:35 -07:00
Mark McCaskey
99f76925a8 fmt 2019-03-21 17:20:13 -07:00
Mark McCaskey
b9e7449f64 add functions for php cli 2019-03-21 17:18:25 -07:00
losfair
a4ee873eae Merge remote-tracking branch 'origin/master' into feature/dynasm-backend 2019-03-21 08:42:34 +08:00
Mark McCaskey
c58a7e0c37 stub out/add the rest 2019-03-20 16:46:42 -07:00
Mark McCaskey
d13e4aa71f clean up a bit 2019-03-20 15:24:05 -07:00
Mark McCaskey
42b122d639 add many emscripten functions for PHP 2019-03-20 15:13:00 -07:00
Mark McCaskey
76b4cc79e8 fix make debug-release 2019-03-20 10:27:07 -07:00
losfair
08f4526b45 Merge remote-tracking branch 'origin/master' into feature/dynasm-backend 2019-03-17 21:14:01 +08:00
Mackenzie Clark
14104c2c8b fix lots of warnings
fix warnings
2019-03-15 14:10:17 -07:00
Brandon Fish
e5d67c9705 Add dynasm feature to emscripten tests 2019-03-13 20:16:07 -05:00
Lachlan Sneff
cd767bc1a7
Merge branch 'master' into fix/llvm-feature-flag 2019-03-13 12:22:21 -07:00
Ivan Enderlin
20d1023abe fix(emscripten) Various warning fixes and cleanups (#266)
* fix(emscripten) Remove unused imports.

This patch removes unused imports reported by `rustc` as warnings.

* fix(emscripten) Allow unreachable patterns in `_clock_gettime`.

The compiler thinks `CLOCK_MONOTONIC_COARSE` is unreachable, which is
not always the case. Add an attribute to allow unreachable patterns to
remove the warning.

* fix(emscripten) Rename unused variables.

This patch renames various unused variables by appending an underscore
to them.

* fix(emscripten) Declare `table` as immutable.

The `table` variable in `EmscriptenGlobals::new` was declared as
mutable, but it's never mutated.

* fix(emscripten) Remove an unnecessary `unsafe` block.

* fix(emscripten) Remove duplicate definition of `SO_NOSIGPIPE`.

The `SO_NOSIGPIPE` constant is defined in `syscalls/mod.rs` and
`syscalls/unix.rs`. It's never used in the first case. We can safely
remove it in this file, and keep it in `unix.rs`.

* fix(emscripten) `read_string_from_wasm` is used only on Windows.

Mark `read_string_from_wasm` as possible deadcode, since it's used
only on Windows.

* fix(emscripten) Remove `DYNAMICTOP_PTR_DIFF`, `stacktop`, `stack_max`,
`dynamic_base` and `dynamic_ptr`.

Four functions and one constant are used together but never used
inside or outside this file. They are deadcode.

* fix(emscripten) Remove `infinity` and `nan` fields of `EmscriptenGlobalsData`.

Those fields are never used.

* fix(emscripten) Allow non snake case in `emscripten_target.rs`.

Many functions in this file don't follow the snake case style for Rust
function names. The reason is that we want the names to match the
emscripten symbol names; even if a mapping is done in `lib.rs`, it's
easier to get the same names.

* fix(emscripten) Rename `STATIC_TOP` to `static_top`.

This variable is not a constant.
2019-03-12 14:00:33 -07:00
Mackenzie Clark
033a2e71bd fix compiler error on windows 2019-03-11 10:25:45 -07:00
Lachlan Sneff
679fdc14c2
Merge branch 'master' into feature/llvm-backend 2019-03-07 13:25:24 -08:00
Brandon Fish
1957ddef53 Run emscripten tests with both compilers 2019-03-06 21:36:46 -06:00
Mackenzie Clark
b1739d93ec remove leading underscores from execvp and exit 2019-03-06 10:18:00 -08:00
Lachlan Sneff
4e198bca8b merge upstream/master into wasmer-private/feature/llvm-backend 2019-03-04 13:03:32 -08:00
Mackenzie Clark
65100d19fc add __exit 2019-03-04 08:10:37 -08:00
Mackenzie Clark
00e3ec1446 add execvp 2019-03-04 08:10:37 -08:00
Mackenzie Clark
2ea9d0b09b add __syscall42 (pipe) 2019-03-04 08:10:37 -08:00
Brandon Fish
3f345b41c2 Fix emscripten lib compilation 2019-03-03 15:18:16 -06:00
Mackenzie Clark
ff5e1320da
Fix casting errors cause io issues (#222) 2019-02-27 13:54:28 -08:00
Mackenzie Clark
7fb7529b48 cargo fmt 2019-02-22 15:16:07 -08:00
Mackenzie Clark
966be3ee8f right to the out buffer that was passed in syscall183 2019-02-22 14:54:01 -08:00
Mackenzie Clark
0f9369c67d cargo fmt and better error message 2019-02-22 12:39:19 -08:00
Mackenzie Clark
ad3d361f76 add the syscall and create a test 2019-02-22 12:32:14 -08:00
Mackenzie Clark
a6d72bdec9
more emscripten stubs and urandom hack (#199) 2019-02-22 10:42:38 -08:00
Lachlan Sneff
2234f357b7
Merge branch 'master' into feature/cache-rework 2019-02-21 11:54:57 -08:00
Lachlan Sneff
9f40eedba8 Get caching working again 2019-02-20 16:41:41 -08:00
Mackenzie Clark
1a951a9abf
stub wasm32-unknown-emscripten target imports (#193) 2019-02-20 14:05:12 -08:00
David McNeil
a9b1c6c85e Fix emscripten environment (#172)
Dynamically determine abortOnCannotGrowMemory and add
_emscripten_get_heap_size and _emscripten_resize_heap
2019-02-16 15:01:01 -07:00
Syrus
f52c4ce5cc Merge branch 'master' into feature/ctx-first-arg 2019-02-12 10:28:25 -08:00
Syrus
6c7fd55b87 Moved ctx to be the first argument in emscripten 2019-02-09 13:58:18 -08:00
Mackenzie Clark
4ef7dc339c
optimize imports (#170) 2019-02-09 13:31:28 -08:00
Mackenzie Clark
e7c3b99ba9
add lua integration test (#109) 2019-02-08 17:47:51 -08:00
Mackenzie Clark
9a56680281
fix windows linking and appveyor build (#166) 2019-02-08 13:51:29 -08:00
Lachlan Sneff
4e1bc483a8
Fix emscripten setup, nginx works (#165)
* Fix emscripten setup, nginx works

* Remove commented-out code

* Re-enable nginx integration test
2019-02-08 10:55:32 -08:00
Mackenzie Clark
9719781eee create platform mods for syscalls and stub for windows (#161)
* create platform mods for syscalls and stub for windows

* missing constants and duplicate use statements
2019-02-07 16:56:44 -08:00
Mackenzie Clark
f8e2b25137
consolidate shared functions and optimize use statements (#159) 2019-02-07 15:24:22 -08:00
Mackenzie Clark
25d438f346
create an alias for pid_t which does not exist on libc windows (#160) 2019-02-07 15:12:27 -08:00
Mackenzie Clark
ea2bd80089
refactor getenv for windows (#156) 2019-02-07 14:23:13 -08:00
Syrus Akbary
1c1318623e
Merge pull request #155 from wasmerio/fix/signature-index-wrong-map
Fix signature index issue
2019-02-07 11:58:11 -08:00
Syrus
14806cb604 Fixed formatting and removed print debug statement 2019-02-07 11:37:15 -08:00
Mackenzie Clark
ce03e4464c fill unsetenv for windows (#150)
* fill unsetenv

* update usage of read_string_from_wasm

* convert helper to return String

* correct usage of helper fn, cargo fmt, and check in lock file change
2019-02-07 10:51:19 -08:00
Lachlan Sneff
dbea7b3abe
Merge branch 'master' into fix/signature-index-wrong-map 2019-02-07 10:46:35 -08:00
Lachlan Sneff
e147983ece fix 2019-02-07 10:45:48 -08:00
Mackenzie Clark
663de770bf
stub emscripten env calls for windows (#151) 2019-02-07 10:16:55 -08:00
Mackenzie Clark
83df3ad35f
fix putenv and setenv for windows (#140) 2019-02-06 18:57:11 -08:00
Mackenzie Clark
ac286b708b
create the windows io mod and link printf (#144) 2019-02-06 17:56:01 -08:00
Mackenzie Clark
0a7b9b26b8
let the compiler deduce types in syscalls (#145) 2019-02-06 17:06:05 -08:00
Mackenzie Clark
f13a45a5bc
link time function and create alias for clockid_t (#146) 2019-02-06 16:40:02 -08:00
Lachlan Sneff
8fe9b7eac2
Add caching. (#134)
* Allow a module to have a different signature registry than the process-specific

* Add core ability to build compiled code caches

* Remove timing printouts

* Serialize/Deserialize memories to reduce copies

* Work more on api

* Relocate local functions relatively before external functions

* Fix incorrect definition in test

* merge errors caused by merge

* Fix emscripten compile

* Fix review comments
2019-02-06 16:26:45 -08:00
Brandon Fish
2b55606d3c Add at_init emscripten_environ_constructor 2019-02-06 00:11:31 -06:00
Brandon Fish
b86acab3e4 Fix debug statement 2019-02-05 23:48:05 -06:00
Brandon Fish
3cd81d4119 Fix lua emscripten imports 2019-02-05 23:39:12 -06:00
Brandon Fish
9d16faab9d Make memalign optional if the wasm doesn't export it 2019-02-05 23:24:07 -06:00
Brandon Fish
c11f18b09c Update signatures and add missing imports 2019-02-05 17:25:51 -06:00
Lachlan Sneff
cee248ae89 Update emscripten memory macro 2019-02-05 10:35:15 -08:00
Brandon Fish
1322446f04 Fix compilation 2019-02-04 18:46:10 -06:00
Lachlan Sneff
eba66f3b33 Add typed functions and weird type parameter things 2019-02-02 15:28:50 -08:00
Syrus
6c33aa5803 Make emscripten compile again 2019-02-01 13:27:00 -08:00
Lachlan Sneff
ad1034b78c Fix lint 2019-02-01 13:22:49 -08:00
Lachlan Sneff
631fc8d124 Use WasmExternType for VarArgs 2019-02-01 13:18:43 -08:00
Brandon Fish
54fdbf8813 Fix compilation error var name 2019-01-31 20:20:58 -06:00
Syrus
8725fef474 Adapted all emscripten import functions 2019-01-31 18:10:25 -08:00
Syrus
5066431422 Added more functions 2019-01-31 15:01:42 -08:00
Syrus
5f92fc5c8d Adapted more emscripten imports into new syntax 2019-01-31 14:48:29 -08:00
Brandon Fish
2540d5169b Update more imports to use imports! macro 2019-01-31 00:31:00 -06:00
Brandon Fish
909af1250f Convert em imports to imports! macro 2019-01-30 20:03:54 -06:00
Brandon Fish
9dcbea7408 Fix table/memory import 2019-01-30 19:19:53 -06:00
Brandon Fish
cf325f7cd6 Fixup/comment out to get things compiling 2019-01-29 23:08:03 -06:00
Brandon Fish
30caeb0810 Merge branch 'master' into fix/emscripten-translate 2019-01-29 23:07:32 -06:00
Brandon Fish
8a5d747026 Comment out em impl to fix compilation 2019-01-29 20:00:08 -06:00
Lachlan Sneff
388ac1c8ae
Merge branch 'master' into fix/update-debug-macro 2019-01-29 15:58:51 -08:00
Lachlan Sneff
34d897b665 fix lint again 2019-01-29 15:53:07 -08:00
Lachlan Sneff
581363119b More review fixes 2019-01-29 13:04:42 -08:00
Lachlan Sneff
4c266c6fb9 Start transition of emscripten imports to new api 2019-01-29 11:41:43 -08:00
Brandon Fish
948e685dd6 Consolidate to single debug macro, activate using feature 2019-01-28 20:06:57 -06:00
Syrus
fe1846d180 Simplified EmscriptenGlobals initialization 2019-01-28 14:31:16 -08:00
Brandon Fish
23492a4c53 Remove unused code, cleanup 2019-01-27 19:06:03 -06:00
Brandon Fish
9cef5482ee Fix main argument handling 2019-01-27 12:18:58 -06:00
Brandon Fish
384c27c4e3 Fix unused variable warnings 2019-01-27 10:58:52 -06:00
Brandon Fish
6bbdaa1c53 Add addition em functions to run tests 2019-01-27 00:33:58 -06:00
Brandon Fish
12def9da25 Update imports for lua example 2019-01-26 17:02:51 -06:00
Brandon Fish
f273823abd Update main argument handling 2019-01-26 14:17:17 -06:00
Brandon Fish
ee911092ea Use memory min and max values from module to generate environment memory 2019-01-25 20:12:36 -06:00
Brandon Fish
1a1958a0ce Use table min and max values from module to generate environment table 2019-01-25 19:55:33 -06:00
Lachlan Sneff
e4686e67c4 Add importable memories and dynamic memories 2019-01-25 15:28:54 -08:00
Brandon Fish
5209b5a558 Fix all the imports to run nginx 2019-01-24 23:58:54 -06:00
Syrus
25439b4df3 Removed unnecessary lifetime 2019-01-24 16:46:16 -08:00
Syrus
c22f1eee0f Simplified even more the global inits 2019-01-24 16:45:22 -08:00
Syrus
4a8eacb370 Simplified storage of emscripten globals data 2019-01-24 16:45:06 -08:00
Syrus
842105f7d9 Improved emscripten imported function arguments 2019-01-24 15:44:08 -08:00
Syrus
6d8465721f Improved formatting 2019-01-24 15:30:13 -08:00