c212ba3619
Add implementations for typed func errors to cranelift and llvm
2019-04-09 15:53:01 -07:00
593720dfc5
Merge #310
...
310: fix(llvm-lint) Clean up various warnings r=Hywan a=Hywan
These patches remove various warnings raised by `rustc`.
Only 2 warnings remain.
Co-authored-by: Ivan Enderlin <ivan.enderlin@hoa-project.net >
Co-authored-by: Mackenzie Clark <mackenzie.a.z.c@gmail.com >
2019-04-01 10:18:56 +00:00
124563a556
Merge branch 'master' into fix-llvm-lints
2019-03-30 18:11:40 -07:00
ca41c6dd6b
Merge branch 'master' into fix-llvm-example
2019-03-30 18:10:20 -07:00
316cbc54ab
doc(lib) Add basic README.md
.
2019-03-29 10:17:24 +01:00
8179dd6f96
fix(llvm-backend) Remove sign_type
from generate_trampoline
.
2019-03-29 10:09:56 +01:00
34b4f2fb11
fix(llvm-backend) Mark some variables as unused.
2019-03-29 10:09:39 +01:00
5cd45cbc28
fix(llvm-backend) Mark a variable as unused.
2019-03-29 10:09:10 +01:00
b03980f8c9
fix(llvm-backend) Remove unused variables or functions.
2019-03-29 10:08:43 +01:00
76d26d97ac
fix(llvm-backend) Remove Intrinsics.ctx_ty
, CtxType.ctx_ty, and
.ctx_ptr_ty`.
2019-03-29 10:07:38 +01:00
7645a812d9
fix(llvm-backend) Remove unused variables.
2019-03-29 10:07:08 +01:00
00e4b25111
fix(llvm-backend) No need to enumerate items in this iterator.
2019-03-29 10:06:31 +01:00
20378de0e7
fix(llvm-backend) llvm_sig
variable is not used here.
2019-03-29 10:06:11 +01:00
e3f39fc127
fix(llvm-backend) parse_function
doesn't need a Module
.
2019-03-29 10:05:39 +01:00
dea4705dcb
fix(llvm-backend) LLVMBackend::new
doesn't use instrinsics yet.
2019-03-29 10:04:56 +01:00
91f40639b7
fix(llvm-back) Mark WasmTrapType
as deadcode.
...
This enum is not used directly by Rust, but used externally.
2019-03-29 10:04:09 +01:00
a1ca7069af
fix(llvm-backend) Remove unused imports.
2019-03-29 10:03:40 +01:00
ddf532ddb5
fix(llvm-backend) Remove an example.rs
file.
2019-03-29 09:43:21 +01:00
5294eb6b0d
merge and respond to feedback
2019-03-28 11:41:45 -07:00
a0e20667b5
add small fix
2019-03-28 10:08:41 -07:00
c51d44578d
simplify borrowing inference of compiler config in llvm backend
2019-03-27 14:25:29 -07:00
51c2111d53
pass compiler_config along to other backends
2019-03-27 14:18:34 -07:00
0c7808b1d3
reset a cargo manifests
2019-03-12 13:58:33 -07:00
f2488ac410
remove feature flag on custom sections
2019-03-12 13:36:11 -07:00
f7f4fbf08a
add the feature flag for llvm backend
2019-03-12 11:59:50 -07:00
e591cd0607
Use wasmerio fork of inkwell
2019-03-11 10:03:40 -07:00
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
3a4325c5a3
Only use llvm in non windows envs
2019-03-07 18:26:29 -08:00
671ff09e6a
Use LLVM 5 for Windows
2019-03-07 18:06:47 -08:00
0e5d1172d6
Just install the signal handler once
2019-03-05 16:50:49 -08:00
48b36a3b01
Runs on linux and also hopefully ci
2019-03-05 14:54:44 -08:00
fa3ef2e88d
Remove .llvmenv
2019-03-05 13:34:22 -08:00
276e5125b5
Filter out -fno-exceptions from llvm-config --cxxflags
2019-03-05 13:23:26 -08:00
c86c910054
Add partiality to float truncation
2019-03-05 11:50:56 -08:00
f2b927bcd8
Remove debug print
2019-03-04 20:00:56 -08:00
fe8f8a0132
Add illegal arithmetic runtime error
2019-03-04 19:56:02 -08:00
3be7144892
Some cleanup
2019-03-04 17:37:05 -08:00
2969409ca7
Add hacky reinterpret instructions and pop used arguments off the value stack
2019-03-04 16:44:46 -08:00
25c0cef5f7
Up to 1242 passing spectests
2019-03-04 15:51:45 -08:00
7ef2c0dece
Fix execute after free issue with llvm (and presumably cranelift?)
2019-03-04 14:41:56 -08:00
039ebdcf75
Fix merge errors and update llvm to use the new runtime error type.
2019-03-04 13:10:28 -08:00
deea9e98a4
Add import names, whoops.
2019-03-04 10:19:38 -08:00
3f9dbca17f
List specific supported features for validator.
2019-03-03 22:47:34 -08:00
ab550f46fc
Fix bug resulting from comparing the memory base instead of the memory offset to the memory bounds.
2019-03-03 22:11:40 -08:00
ae3b2b2a42
Add bounds checking for memory accesses on dynamic memories
2019-03-03 21:56:30 -08:00
87c453a0ec
Add check for table bounds on call_indirect.
2019-03-03 21:38:35 -08:00
51cf9dde05
Move SSA value caches to the entry block.
...
The supporting framework around LLVM will make sure to only compute values once if they
are known to never change. Previously, these values were attempted to be reused from places where
the users may not dominate the creation of the value. To avoid that, they are always created
in the entry block now.
2019-03-03 21:13:37 -08:00
c07298e58e
Make capstone optional with a feature
2019-03-03 16:02:20 -06:00
aae256b407
Add tag to fix cast ptr lint error
2019-03-03 15:34:20 -06:00
97a70327d0
Fix compilation of test example
2019-03-03 15:13:20 -06:00