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
losfair
21dd01c3aa
Fix LLVM backend compilation and segfaults.
2019-04-30 15:52:43 +08:00
Brandon Fish
01ba789eed
Cleanup some long literal lacking separators
2019-04-29 23:49:00 -05:00
Brandon Fish
8acf9edf67
Remove unneeded returns
2019-04-29 23:45:38 -05:00
Brandon Fish
da807ed2a1
Remove unused imports
2019-04-29 23:40:16 -05:00
Brandon Fish
a127b770b3
Update to newer common wasmparser version
2019-04-29 23:34:48 -05:00
Mark McCaskey
d020ffd759
update version to 0.4.0
2019-04-29 13:26:51 -07:00
Brandon Fish
53bebf9c73
Add initial progress to add LLVM to module refactor
2019-04-29 00:13:34 -05:00
losfair
305e1801ff
Fix incomplete data section
2019-04-28 15:38:18 +08:00
losfair
46fb72af9d
Add missing .rev()
on parameter list and simulate "red zone".
2019-04-28 13:31:22 +08:00
losfair
e63d7fd531
Merge
2019-04-28 12:58:27 +08:00
losfair
480308c62c
Cargo fmt
2019-04-28 12:54:45 +08:00
losfair
cf83a9785f
Print call trace to stderr.
2019-04-28 12:51:51 +08:00
losfair
6beb76c3ae
Various cleanups.
2019-04-28 12:48:01 +08:00
Syrus
a4170d4495
Improved fault debugging with emscripten
2019-04-27 12:53:13 -07:00
losfair
2262c8a6da
Finished middleware impl and made a CallTrace middleware
2019-04-27 16:31:47 +08:00
losfair
eca8ccdbd4
Move out parser and codegen traits.
2019-04-27 12:31:04 +08:00
Syrus Akbary
a6b8c1b0fa
Fix debug issue
2019-04-26 17:40:55 -07:00
Mark McCaskey
655188a788
Fix WASI FS abstraction for Windows
2019-04-26 13:17:36 -07:00
Syrus Akbary
1ed4142333
Merge branch 'master' into feature/cleanup-imports-unsafe
2019-04-25 16:00:27 -07:00
bors[bot]
e86e542da7
Merge #392
...
392: Remove unused function memory_offset_addr r=syrusakbary a=bjfish
Co-authored-by: Brandon Fish <brandon.j.fish@gmail.com>
2019-04-25 21:45:25 +00:00
Mackenzie Clark
3998c9ec17
remove zbox because wasmer will not build on windows nightly
2019-04-25 12:45:45 -07:00
Mackenzie Clark
9ab7199fe5
Merge branch 'master' into feature/cleanup-imports-unsafe
2019-04-24 08:37:06 -07:00
Brandon Fish
389c6a015d
Remove unused function memory offset addr
2019-04-24 02:00:07 -05:00
Lachlan Sneff
ff9de181f1
Add error propagation test
2019-04-22 15:53:21 -07:00
Lachlan Sneff
14325c975e
Rename internal enum to make less confusing
2019-04-22 15:36:47 -07:00
Lachlan Sneff
706ddabf61
Hook up error propagation
2019-04-22 15:06:40 -07:00
Syrus
3729c4a8b8
Revert "Merge #370 "
...
This reverts commit 48a8391f5d
, reversing
changes made to 363b46eca7
.
2019-04-22 12:10:39 -07:00
Syrus
878a0e6687
Partial Revert of types “Return type normalization, and change return errors from imported functions"
...
This reverts commit 74b6ba4eaf
.
# Conflicts:
# lib/wasi/src/syscalls/mod.rs
2019-04-22 12:09:30 -07:00
Lachlan Sneff
7940aa7e42
Fix renamed variable
2019-04-22 11:57:50 -07:00
Lachlan Sneff
ecdcab5de9
Update singlepass to renamed enum discrimant
2019-04-22 11:47:47 -07:00
Lachlan Sneff
74b6ba4eaf
Return type normalization, and change return errors from imported functions
2019-04-22 11:42:52 -07:00
Lachlan Sneff
85d9ca9ad2
Add NativeWasmType trait and modify WasmExternType
2019-04-22 10:35:55 -07:00
Clément Renault
21bd55c30d
Make the slice::from_raw_parts call safe
2019-04-21 12:58:48 +02:00
Brandon Fish
9e93565a49
Cleanup build warnings imports and unnecessary unsafe
2019-04-20 20:37:39 -05:00
Brandon Fish
2516a1ee31
Merge branch 'master' into feature/wasi-more-debug
2019-04-20 14:22:59 -05:00
Brandon Fish
962c9c8596
Add more Debug impl for WASI types
2019-04-20 14:22:31 -05:00
Syrus
0aa35a675b
Fix WASI by using u32 everywhere instead of u16
2019-04-20 11:47:06 -07:00
Mark McCaskey
8095d70957
fix write to flush buffer; fix warnings
2019-04-19 15:57:51 -07:00
Mark McCaskey
5a575cd64d
Merge branch 'master' into feature/preopen-fd-and-more
2019-04-19 14:24:30 -07:00
Syrus Akbary
b4ded07313
Merge branch 'master' into feature/preopen-fd-and-more
2019-04-19 14:14:40 -07:00
Lachlan Sneff
087a826222
fix tests on more time uh huh
2019-04-19 14:09:41 -07:00
Lachlan Sneff
3b9e12b248
fix test
2019-04-19 14:02:21 -07:00
Lachlan Sneff
c3ef1f8421
Remove commented-out code
2019-04-19 14:00:03 -07:00
Lachlan Sneff
443663aa3f
Add caching support to llvm backend
2019-04-19 13:54:48 -07:00
Mark McCaskey
b141d7f80e
fix typo
2019-04-19 13:25:23 -07:00
Mark McCaskey
52279afbe2
add comment and reduce code in pre-open loading section
2019-04-19 13:24:41 -07:00
Mark McCaskey
5e504b77cd
add support for more complex paths in path_open
2019-04-19 12:48:29 -07:00
Mark McCaskey
c75f055b09
disable ZFS again; clean up simple-path's control-flow-path in path_open
2019-04-19 09:25:29 -07:00
Mark McCaskey
19e830d25a
fix memory access in WasmPtr
2019-04-18 17:48:14 -07:00
Mark McCaskey
7e58c4258c
Merge remote-tracking branch 'origin/master' into feature/preopen-fd-and-more
2019-04-18 15:43:02 -07:00
Lachlan Sneff
6279dd8e82
Fix test again, whoops
2019-04-18 10:14:25 -07:00
Lachlan Sneff
f0e0255b3f
Fix vm test
2019-04-18 10:08:17 -07:00
Lachlan Sneff
4dd64ed72e
Remove UserTrapper trait
2019-04-18 10:00:15 -07:00
bors[bot]
ccad8874e9
Merge #360
...
360: Single-pass fixes and optimizations. r=syrusakbary a=losfair
Co-authored-by: losfair <zhy20000919@hotmail.com>
Co-authored-by: Lachlan Sneff <lachlan.sneff@gmail.com>
2019-04-18 15:04:09 +00:00
Syrus
6c158a93bf
Added imports to be able to run Imagemagick
2019-04-17 17:42:21 -07:00
Lachlan Sneff
016535ce12
Merge branch 'master' into feature/singlepass-opt
2019-04-17 15:19:51 -07:00
Lachlan Sneff
61f31ae7e8
Fix lint (just two lines)
2019-04-17 15:17:16 -07:00
Lachlan Sneff
088263a604
Merge branch 'master' into feature/remove-call-protected
2019-04-17 14:14:36 -07:00
Lachlan Sneff
f0a20151f6
Fix returning the result from dynamic calls on the singlepass backend
2019-04-17 14:14:01 -07:00
losfair
e71da1cdf1
Some documentation on the code generator.
2019-04-18 02:28:08 +08:00
losfair
5f9aed0103
Merge remote-tracking branch 'origin/master' into feature/singlepass-opt
2019-04-17 02:18:00 +08:00
losfair
0da2442be1
Parse input in a single pass.
2019-04-17 02:10:36 +08:00
losfair
c47eb6eaa2
Fix corner cases.
2019-04-16 22:45:32 +08:00
Mark McCaskey
5771c904f8
add changelog entry
2019-04-12 14:16:42 -07:00
Mark McCaskey
a36ab1cd78
add misc changes to Cargo.tomls for publishing
2019-04-12 14:07:25 -07:00
Lachlan Sneff
57e24c957c
Merge branch 'master' into feature/remove-call-protected
2019-04-12 12:44:59 -07:00
Mark McCaskey
d507253372
update crate version numbers to 0.3.0
2019-04-12 12:19:46 -07:00
Lachlan Sneff
8b2f613649
Merge branch 'master' into feature/remove-call-protected
2019-04-12 11:50:39 -07:00
Mark McCaskey
9c12b3f7f1
update changelog
2019-04-12 11:22:01 -07:00
Lachlan Sneff
0d30c957a2
Fix llvm test
2019-04-12 10:33:30 -07:00
Lachlan Sneff
051d435423
Warnings and unused code cleanup
2019-04-12 10:27:14 -07:00
Lachlan Sneff
4e17ff8571
Update singlepass backend to new backend abstraction
2019-04-12 10:21:40 -07:00
Lachlan Sneff
75cc65a8c5
Update llvm backend to new backend abstraction
2019-04-12 10:05:50 -07:00
Lachlan Sneff
8b5da1d86e
Update cranelift backend to new backend abstraction
2019-04-12 09:58:29 -07:00
Lachlan Sneff
d8c6f76846
Redesign the interface between the runtime and the backends.
...
This removes the ProtectedCaller and FuncResolver traits, simplifying call implementations and improving dynamic call throughput.
2019-04-11 18:01:54 -07:00
Lachlan Sneff
688b6cae26
Merge branch 'master' into feature/nightly-release
2019-04-11 14:36:18 -07:00
Lachlan Sneff
4740b2467f
Add backend selection to cli
2019-04-11 14:34:54 -07:00
Syrus
d67bfdb2c5
Renamed dynasm backend to singlepass
2019-04-11 12:44:03 -07:00
Lachlan Sneff
60ac7a5b49
Remove unneeded semicolon
2019-04-11 12:13:36 -07:00
Lachlan Sneff
c898439817
Add well placed unwind(allowed) attribute
2019-04-11 12:07:54 -07:00
bors[bot]
81fcecd705
Merge #290
...
290: Assembler API for the single-pass backend. r=syrusakbary a=losfair
Co-authored-by: losfair <zhy20000919@hotmail.com>
2019-04-11 18:07:58 +00:00
losfair
394c56b2b4
Added missing was_unreachable check.
2019-04-11 18:59:00 +08:00
Syrus Akbary
527d32b00d
Added WASI to the integrations
2019-04-10 23:14:29 -07:00
losfair
77c1bfa005
Cargo fmt
2019-04-11 11:53:26 +08:00
losfair
759fecf6fd
Fix longjmp.
2019-04-11 11:52:57 +08:00
losfair
7e20575e5b
Implement get_wasm_trampoline
2019-04-11 11:41:32 +08:00
losfair
ab04f54e72
Merge remote-tracking branch 'origin/master' into dynasm-refactor
2019-04-11 10:06:47 +08:00
losfair
4736028369
Cargo fmt
2019-04-11 09:43:02 +08:00
losfair
799e1d8dec
Cleanup.
2019-04-11 09:41:18 +08:00
losfair
2d72bbf834
Smallvec optimization.
2019-04-11 09:31:54 +08:00
Mark McCaskey
91af7cf8a8
add preopened fd and fix/improve fs syscalls (WIP)
2019-04-10 18:23:25 -07:00
losfair
e8fe58d9c6
Implement IxxTrunc{U/S}Fxx bound checks.
2019-04-11 09:14:29 +08:00
losfair
02a305cfbe
Fix function pointer offset for resolver.
2019-04-11 08:44:18 +08:00
bors[bot]
72b9939331
Merge #334
...
334: Added longjmp implementation r=syrusakbary a=syrusakbary
Added longjmp implementation
Co-authored-by: Syrus <me@syrusakbary.com>
Co-authored-by: Mark McCaskey <mark@wasmer.io>
Co-authored-by: Lachlan Sneff <lachlan.sneff@gmail.com>
2019-04-11 00:26:30 +00:00
Lachlan Sneff
1cb3fbea0a
Add support for panicking/returning err back to llvm
2019-04-10 14:17:10 -07:00
bors[bot]
870faf9838
Merge #341
...
341: feat(runtime-core) `Instance.exports` takes `&self` instead of `&mut self` r=lachlansneff a=Hywan
There is no reason for `exports` to take a mutable reference. This patch rewrites the `Instance.export` signature a little bit.
Co-authored-by: Ivan Enderlin <ivan.enderlin@hoa-project.net>
2019-04-10 19:22:12 +00:00
Ivan Enderlin
20297d1751
feat(runtime-core) Instance.exports
takes &self
instead of &mut self
.
...
There is no reason for `exports` to take a mutable reference.
2019-04-10 12:17:16 -07:00
losfair
4e09bda745
Fix calling convention.
2019-04-11 02:54:23 +08:00
Syrus
6848e81a77
Merge branch 'master' into feature/longjmp
...
# Conflicts:
# lib/runtime-core/src/backend.rs
# lib/runtime-core/src/typed_func.rs
2019-04-10 10:57:45 -07:00
losfair
13d456aaf2
Fixed ShrU/S and Trunc's.
2019-04-11 01:53:13 +08:00
Lachlan Sneff
2d2a177e9c
Fix lint
2019-04-10 10:31:49 -07:00
Syrus
e620d6bef9
Fix formatting
2019-04-10 10:29:35 -07:00
Lachlan Sneff
cfd4758210
Add some documentation
2019-04-10 10:26:16 -07:00
losfair
3300a3b272
Passing all spectests, except traps.
2019-04-11 00:55:55 +08: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
b2446b567e
Uncommented some longjmp tests
2019-04-09 17:49:26 -07:00
Syrus
ffe00da678
Improved invoke certain functions
2019-04-09 17:48:42 -07:00
Lachlan Sneff
70ab6667c7
Attempt #3 for windows
2019-04-09 17:09:33 -07:00
Lachlan Sneff
50b5da8dd0
Attempt #2 for windows building
2019-04-09 17:09:33 -07:00
Lachlan Sneff
a657315320
Attempt to fix windows build
2019-04-09 17:09:33 -07:00
Lachlan Sneff
a320af4485
Fix runtime test missing method
2019-04-09 17:09:33 -07:00
Lachlan Sneff
782bb384ad
Cleanup
2019-04-09 17:09:33 -07:00
Lachlan Sneff
cc656b26a9
Add implementations for typed func errors to cranelift and llvm
2019-04-09 17:09:33 -07:00
Lachlan Sneff
7d09a2ee7e
Initial typed func rewrite
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
Lachlan Sneff
b949de2560
Attempt #3 for windows
2019-04-09 16:54:55 -07:00
Lachlan Sneff
654fce9354
Attempt #2 for windows building
2019-04-09 16:50:33 -07:00
Lachlan Sneff
751dff0f9d
Attempt to fix windows build
2019-04-09 16:46:01 -07:00
Lachlan Sneff
41129e445d
Fix runtime test missing method
2019-04-09 16:15:50 -07:00
Lachlan Sneff
0745274892
Cleanup
2019-04-09 16:07:09 -07:00
Lachlan Sneff
c212ba3619
Add implementations for typed func errors to cranelift and llvm
2019-04-09 15:53:01 -07:00
Lachlan Sneff
5e1a67d835
Initial typed func rewrite
2019-04-09 12:48:41 -07:00
losfair
e78a5ba602
F32ConvertUI64, F64ConvertUI64
2019-04-10 01:38:16 +08:00
losfair
69d6093955
Fix GetGlobal, RemS/U and floating point comparison.
2019-04-10 00:41:32 +08:00
losfair
6b514e110a
1241/1256 tests passing
2019-04-09 19:10:20 +08:00
losfair
f781b0eb02
More floating point operators.
2019-04-09 17:08:31 +08:00
Mark McCaskey
50a22bcae2
implement emscripten resize_heap
2019-04-08 16:17:34 -07:00
Mark McCaskey
6578838acd
allow resize_heap to grow heap in emscripten
2019-04-08 14:44:40 -07:00
bors[bot]
7f8b1ea521
Merge #332
...
332: fix lstat64; heap size; and stat r=MarkMcCaskey a=MarkMcCaskey
- Get https://github.com/nikic/PHP-Parser working 🎉
- fixes memory issue bug which looked like relative paths didn't work, but was really pointer aliasing corrupting data
Co-authored-by: Mark McCaskey <mark@wasmer.io>
2019-04-08 18:58:48 +00:00
Mark McCaskey
03f0bf0c49
change void* to stat* for lstat on linux
2019-04-08 11:53:15 -07:00
Mark McCaskey
b2a51b8fbd
try normal lstat on linux
2019-04-08 11:48:04 -07:00