Mark McCaskey
09068c1a74
clean up implementation
2019-03-27 14:01:27 -07:00
Mark McCaskey
a0809dedbf
change formatting to match syscalls
2019-03-26 16:57:58 -07:00
Mark McCaskey
9c58bed344
add support for symbol maps
2019-03-26 16:41:40 -07:00
Mackenzie Clark
edacb0a8a7
Merge branch 'master' into feature/vfs
2019-03-16 13:38:02 -07:00
Mackenzie Clark
14104c2c8b
fix lots of warnings
...
fix warnings
2019-03-15 14:10:17 -07:00
Mackenzie Clark
f2488ac410
remove feature flag on custom sections
2019-03-12 13:36:11 -07:00
Mackenzie Clark
b9c3a49f3c
parse and store custom sections from wasm, guarded by vfs feature flag
2019-03-12 10:45:44 -07:00
Ivan Enderlin
2c8fc5238d
fix(clif-backend) Remove unused imports.
...
This patch removes unused imports reported by `rustc` as warnings.
2019-03-12 10:03:55 +01:00
Lachlan Sneff
17eada53f3
feat(runtime) Get ready for tiering ( #257 )
...
* Add local_function field to context
* Add local call indirection to llvm
* local call indirection
* Fix vm test
* Fix cranelift local call indirection
* Fix unwinding on nightly
2019-03-08 15:15:16 -08:00
Lachlan Sneff
4e198bca8b
merge upstream/master into wasmer-private/feature/llvm-backend
2019-03-04 13:03:32 -08:00
Lachlan Sneff
65ec10961b
Change RuntimeError type ( #234 )
...
* Change RuntimeError type and fix codebase to use it
* Fix spectests to work with new runtime error type
* Fix windows signal handler in the clif-backend
* Add missing conversion
* final windows fix
2019-03-04 12:57:26 -08:00
Mackenzie Clark
b3c60bce14
Merge branch 'master' into fix-clif-backend-module-new
2019-03-04 08:14:44 -08:00
Ivan Enderlin
5744f6896f
fix(clif-backend) Module::new
does not use its argument.
...
The `Module::new` method requires an argument (`wasm: &[u8]`) that is
never used.
This patch removes the argument, and updates the code accordingly.
2019-03-04 14:03:07 +01:00
Ivan Enderlin
42c9bdf8c2
fix(clif-backend) Remove an unused variable declaration.
...
The `compiled_functions` variable is declared twice. The first
declaration is never used. This patch removes it.
2019-03-04 13:59:37 +01:00
Syrus Akbary
c5c967da00
Added parallel compilation ( #209 )
2019-02-25 12:03:48 -08:00
Lachlan Sneff
07c8975304
Fix clif backend
2019-02-22 16:20:26 -08:00
Lachlan Sneff
df03d00e74
Merge upstream/master into feature/llvm-feature
2019-02-22 14:14:46 -08:00
Lachlan Sneff
0c19824425
Fix after merge
2019-02-22 14:07:03 -08:00
Syrus
fdb2a67579
Added cache into standalone app
2019-02-22 11:42:36 -08:00
Lachlan Sneff
696fd8fce3
Update api again and change SerializedCache to Artifact
2019-02-21 17:07:04 -08:00
Lachlan Sneff
7fa818ea06
Finalize new cache api
2019-02-21 11:47:28 -08:00
Lachlan Sneff
9f40eedba8
Get caching working again
2019-02-20 16:41:41 -08:00
Lachlan Sneff
82eea00a02
Saved
2019-02-19 15:36:22 -08:00
Lachlan Sneff
3c7dc200fa
close to working
2019-02-19 09:58:01 -08:00
Lachlan Sneff
e381bbd07b
Use ModuleInfo instead of ModuleInner when possible
2019-02-18 11:56:20 -08:00
Lachlan Sneff
2d87f64f82
Merge master into feature/llvm-backend
2019-02-14 15:47:28 -08:00
Mackenzie Clark
6a1fdb7f91
add windows exception handling in C ( #175 )
2019-02-14 09:58:33 -08:00
Syrus
b6416068a8
Use vec.push instead of .insert for vmctx arg
2019-02-12 11:17:09 -08:00
Syrus
44d1a0d1f9
Fixed debug function context position
2019-02-12 10:49:43 -08:00
Syrus
c40195cf77
Fixed spectests
2019-02-12 10:04:11 -08:00
Syrus
4311a37def
Fixed simple spectests example compilation
2019-02-09 20:13:58 -08:00
Lachlan Sneff
327e3a4a1a
Implement many wasm instructions
2019-02-09 15:53:40 -08:00
Syrus
227d5e24cf
Moved ctx to first argument in Cranelift backend
2019-02-09 14:18:53 -08:00
Lachlan Sneff
aa90a33501
Make module info store FuncSig, not Arc<FuncSig>
2019-02-08 14:19:58 -08:00
Mackenzie Clark
9a56680281
fix windows linking and appveyor build ( #166 )
2019-02-08 13:51:29 -08:00
Lachlan Sneff
1886b3d3c1
Naive short circuiting implementation for user panics and results. ( #167 )
...
* Add panic and result catching
* exit process on panic and user runtime error
* Complete initial implementation
2019-02-08 13:08:03 -08:00
Mackenzie Clark
46ac4e9e1a
reorganize signal module and leave stubs in windows ( #162 )
2019-02-07 17:08:42 -08:00
Lachlan Sneff
8d2c1956d7
Fix runtime error catching ( #157 )
2019-02-07 14:44:28 -08:00
Syrus
14806cb604
Fixed formatting and removed print debug statement
2019-02-07 11:37:15 -08:00
Lachlan Sneff
e147983ece
fix
2019-02-07 10:45:48 -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
Lachlan Sneff
2f2f86a4de
Add feature flag to output debug information while running wasm ( #147 )
...
* Generate debug info during execution
* feature cfg debug output
2019-02-06 15:43:27 -08:00
Syrus
b1a7642773
Fixed immutable globals assertion
2019-02-01 14:00:07 -08:00
Lachlan Sneff
69e9c5154d
Add Pages and Bytes newtypes
2019-01-29 15:44:15 -08:00
Lachlan Sneff
bc78738bb7
renaming
2019-01-29 14:15:59 -08:00
Lachlan Sneff
581363119b
More review fixes
2019-01-29 13:04:42 -08:00
Lachlan Sneff
767fdbd950
Fix some reviewed items
2019-01-29 12:49:51 -08:00
Lachlan Sneff
5aa7d71ede
Merge branch 'master' into feature/improve-importing
2019-01-29 10:28:18 -08:00
Lachlan Sneff
19242a413f
Get table imports working
2019-01-29 10:16:39 -08:00
Lachlan Sneff
98305c8731
Add new global import api
2019-01-28 11:55:44 -08:00
Lachlan Sneff
e4686e67c4
Add importable memories and dynamic memories
2019-01-25 15:28:54 -08:00
Brandon Fish
65872a1be4
Cherry-picked fix
2019-01-25 10:23:26 -08:00
Lachlan Sneff
7632beced8
Add generic range bounds to mmap ( #110 )
2019-01-23 09:37:56 -08:00
Syrus
453801b5ff
Added VERSION var to all the lib crates
2019-01-22 15:34:29 -08:00
Lachlan Sneff
38b0fbf3c5
Generate trampolines to call exported functions instead of using libffi ( #108 )
...
* remove codegen.rs
* Add export trampolines and remove libffi
* Remove unused extern crates
2019-01-22 15:00:27 -08:00
Brandon Fish
74875ed554
Library restructure ( #104 )
...
* Move wasmer-runtime to wasmer-runtime-core
* Add the runtime library
* Fix issue with macros using wasmer_runtime, fmt
* Make default compiler dependency optional
* Add instantiate and validate functions
2019-01-22 11:02:06 -08:00
Lachlan Sneff
69fd93937c
merge vm_refactor_trap_handling into vm_refactor
2019-01-21 13:53:33 -08:00
Lachlan Sneff
de046491d2
finish support for traps
2019-01-21 13:43:48 -08:00
Lachlan Sneff
b74a08f097
Add (hopefully-working) support for windows
2019-01-21 11:51:41 -08:00
Brandon Fish
3399dddb5b
cargo fmt
2019-01-20 09:52:54 -06:00
Brandon Fish
e245742251
Remove commented out code
2019-01-20 09:43:43 -06:00
Brandon Fish
808aacde2d
Update println! -> debug!, remove unnecessary comments
2019-01-20 09:19:41 -06:00
Brandon Fish
b8baf5cab9
Rename sigidx -> sig_index
2019-01-20 09:15:28 -06:00
Brandon Fish
89c5984d47
Remove commented out code
2019-01-18 23:17:00 -06:00
Lachlan Sneff
ebeea0c71c
handle traps naively
2019-01-18 16:45:30 -08:00
Lachlan Sneff
c18328aa4c
support the start function
2019-01-18 14:53:46 -08:00
Lachlan Sneff
9ed0018045
transition to protected_caller
2019-01-18 14:30:25 -08:00
Lachlan Sneff
c34df39095
Fix broken reference
2019-01-18 14:18:06 -08:00
Lachlan Sneff
539db9f577
Starting to set up protected call in clif-backend
2019-01-18 13:29:43 -08:00
Lachlan Sneff
705708cafe
add 'ProtectedCaller' to runtime
2019-01-18 12:14:21 -08:00
Lachlan Sneff
8a9f5fa61a
Add special error types for compile, linking, and runtime errors. ( #99 )
...
* Add error types and convert most results to wasmer-runtime results
* Fix spectests
* Fix umbrella project to work with new error types
2019-01-18 10:54:16 -08:00
Lachlan Sneff
e8dcbc5897
Merge branch 'feature/vm_refactor' into feature/vm_refactor_errors
2019-01-18 09:20:55 -08:00
Lachlan Sneff
d23601a810
Add error types and convert most results to wasmer-runtime results
2019-01-18 09:17:44 -08:00
Steve Akinyemi
0bf6ce49f6
Update emscripten to latest changes
2019-01-17 23:19:15 +01:00
Lachlan Sneff
1dbbaa30b6
Get most spectests passing
2019-01-17 13:11:53 -08:00
Lachlan Sneff
bb9ed66cea
Split codegen into multiple modules
2019-01-16 17:59:12 -08:00
Lachlan Sneff
5872d879f9
Local/Import index differentiation
2019-01-16 10:26:10 -08:00
Brandon Fish
de1da689f8
Add imported globals
2019-01-13 16:45:36 -06:00
Lachlan Sneff
a7ffb44bbc
Rework imports
2019-01-12 22:02:19 -05:00
Lachlan Sneff
f08f49fa38
Fix formatting
2019-01-12 17:53:17 -05:00
Lachlan Sneff
a983e9ce8b
Rearrange some apis
2019-01-12 17:52:14 -05:00
Lachlan Sneff
a3b3523a78
Fix broken test that was creating a stack overflow
2019-01-12 09:51:32 -05:00
Lachlan Sneff
230e43a894
Rewrite exports and imports
2019-01-10 23:00:05 -05:00
Lachlan Sneff
2e26f8547e
Fix arithmetic NaN handling in f32.nearest and f64.nearest
2019-01-10 12:20:23 -05:00
Lachlan Sneff
c44dcfec2b
call_indirect checks signature structural equality instead of nominal equality
2019-01-10 11:26:52 -05:00
Lachlan Sneff
e7e62cb6b7
Down to 30 failing spectests
2019-01-09 23:43:18 -05:00
Lachlan Sneff
0c6f76a8ef
Fix more spectests
2019-01-09 21:14:35 -05:00
Lachlan Sneff
985e2b2f42
Fix support for floating point numbers
2019-01-09 20:32:02 -05:00
Lachlan Sneff
8c74d0a551
Push debugging stuff to help debug calls not working
2019-01-09 18:32:13 -05:00
Brandon Fish
14c9512cf4
Remove old src/runtime and src/compilers directories
2019-01-09 00:49:11 -06:00
Lachlan Sneff
bba168e61e
Support imported functions
2019-01-08 21:57:28 -05:00
Lachlan Sneff
7324c85749
Add clif-backend crate and runtime example
2019-01-08 16:04:03 -05:00