Commit Graph

308 Commits

Author SHA1 Message Date
Jesús Leganés-Combarro 'piranna
2eb5ca1e48 _gai_strerror() 2019-05-19 20:16:00 +02: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
Syrus
8f345dc284 Updated imports required for jq. Added get_str method in VarArgs 2019-05-18 12:38:22 -07:00
Mark McCaskey
ec9c5360ef move stdio capture into runtime_core; rm emscripten dep in wasi 2019-05-17 13:30:10 -07:00
Brandon Fish
2aefa731a6 Add deny for unreachable patterns and unused unsafe 2019-05-12 00:33:02 -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
e40b4a2c39 fix debug code 2019-05-06 14:58:44 -07: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
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
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
Syrus
10a965cc1e Added few syscalls to run optipng 2019-05-05 11:24:57 -07:00
Mark McCaskey
353ff60c0f add misc changes while debugging 2019-05-03 17:34:57 -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
Brandon Fish
8acf9edf67 Remove unneeded returns 2019-04-29 23:45:38 -05:00
Syrus
a4170d4495 Improved fault debugging with emscripten 2019-04-27 12:53:13 -07:00
Lachlan Sneff
74b6ba4eaf Return type normalization, and change return errors from imported functions 2019-04-22 11:42:52 -07:00
Syrus
6c158a93bf Added imports to be able to run Imagemagick 2019-04-17 17:42:21 -07:00
Syrus
d67bfdb2c5 Renamed dynasm backend to singlepass 2019-04-11 12:44:03 -07:00
Syrus
e620d6bef9 Fix formatting 2019-04-10 10:29:35 -07:00
Syrus
1ee5e7cde6 Remove unsafe setjmp / longjmp implementation 2019-04-09 19:01:51 -07:00
Syrus
02ed9f0e5f Reenabled longjmp 🎉 2019-04-09 18:33:53 -07:00
Syrus
ffe00da678 Improved invoke certain functions 2019-04-09 17:48:42 -07:00
Lachlan Sneff
782bb384ad Cleanup 2019-04-09 17:09:33 -07:00
Mark McCaskey
fec65a262e implement emscripten resize_heap 2019-04-09 17:09:33 -07:00
Mark McCaskey
8ba5ea2a08 allow resize_heap to grow heap in emscripten 2019-04-09 17:09:33 -07:00
Mark McCaskey
a6c2f7e8e3 change void* to stat* for lstat on linux 2019-04-09 17:09:33 -07:00
Mark McCaskey
95095feb2e try normal lstat on linux 2019-04-09 17:09:33 -07:00
Mark McCaskey
e34874e2d3 fix type errors on Linux/OSX 2019-04-09 17:09:33 -07:00
Mark McCaskey
17686b9a98 revert location of lstat64 2019-04-09 17:09:33 -07:00
Mark McCaskey
18a00e8e8f fix bug in stat, move lstat64 back to unix 2019-04-09 17:09:33 -07:00
Mark McCaskey
79da3e8f3c return total memory size for get_heap_size 2019-04-09 17:09:33 -07:00
Mark McCaskey
e8236cf1c7 fix lstat64; increase num returned by heap size 2019-04-09 17:09:33 -07:00
Syrus
3fcc502015 Added temporal code for emscripten target 2019-04-06 17:16:51 -07:00
Syrus
dc3c2227dc Addd stack_save, stack_restore and set_threw for longjmp 2019-04-06 14:32:21 -07:00
Syrus
d0fe506793 Added emscripten dynVall_vj 2019-04-05 22:27:09 -07:00
bors[bot]
ea08a96b32 Merge #330
330: implement strftime r=syrusakbary a=MarkMcCaskey



Co-authored-by: Mark McCaskey <mark@wasmer.io>
2019-04-05 21:38:35 +00:00
Mark McCaskey
b0a83408ec fix debug statement 2019-04-05 14:33:49 -07:00
Mark McCaskey
8015fbfc16 implement strftime 2019-04-05 13:59:33 -07:00
Syrus
b03a05f1b7 Added f64-to-int 2019-04-05 13:33:28 -07:00
Mark McCaskey
516b932a71 rm review comment 2019-04-05 12:11:40 -07:00
Mark McCaskey
9af1206b62 changes to make PHP run better 2019-04-05 12:06:30 -07:00
Mark McCaskey
44fba93266 add fix from Syrus to get C++ working 2019-04-05 10:49:11 -07:00
Mark McCaskey
91d7416680 fix master; add some emscripten calls 2019-04-05 10:04:39 -07:00
Mark McCaskey
974656c8b1 fix this typo too 2019-04-04 14:12:39 -07:00
Mark McCaskey
f1fdb97d87 allow cast_ptr_alignment 2019-04-04 14:06:53 -07:00
Mark McCaskey
c307e7d37a revert changes to sysconf 2019-04-04 14:01:56 -07:00
Mark McCaskey
cad4f9b544 get PHP kind of working... 2019-04-04 13:58:05 -07:00
Mark McCaskey
accbe52dd6 add more stubs for pthreading, exceptions, and some invokes 2019-03-29 13:42:13 -07:00
Mackenzie Clark
cd119fc861 make string multi-line 2019-03-27 08:36:53 -07:00
Mackenzie Clark
8b861d01db rename null func 2019-03-27 08:36:41 -07:00
Mackenzie Clark
d65a5dfe57 fix typo 2019-03-26 20:07:00 -07:00
Mackenzie Clark
0435d6149a Merge branch 'master' into feature/generate-nullfuncs 2019-03-26 19:04:41 -07:00
Mackenzie Clark
3d3ce27cdb cargo fmt 2019-03-26 19:00:39 -07:00
Mackenzie Clark
ead5600abb fix warnings 2019-03-26 19:00:09 -07:00
Mackenzie Clark
e701bdb811 remove the nullfunc functions 2019-03-26 19:00:03 -07:00
Mackenzie Clark
0533a4eef6 dynamically import null funcs (all with the same signature) 2019-03-26 18:59:39 -07:00
Mark McCaskey
49db149224 fix arg passing to getcwd syscall 2019-03-26 14:37:47 -07:00
Mark McCaskey
d2818b1ffa fix alignment check on pointer 2019-03-26 09:56:23 -07:00
Mark McCaskey
43a8a00d79 change getpwuid to just return 0 2019-03-25 16:59:23 -07:00
Mark McCaskey
abafbbdbb2 fix pointer casting lint 2019-03-25 16:25:39 -07:00
Mark McCaskey
93432bdb12 Make reading database files work too! 2019-03-25 16:13:41 -07:00
Mark McCaskey
3500d5a7c7 add more functions for sqlite compiled from config src 2019-03-25 13:09:23 -07:00
Mark McCaskey
2969989ecd sort imports 2019-03-25 12:39:57 -07:00
Mark McCaskey
4f98da710d add more; get it working 2019-03-25 11:58:44 -07:00
Mark McCaskey
f66b024390 Merge branch 'master' into feature/add-syscalls-for-sqlite3 2019-03-25 11:14:01 -07:00
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