Alex Crichton
705bfacf10
rustfmt
2019-09-07 16:20:23 -07:00
Alex Crichton
dfda794f55
Add a custom section hook to ModuleEnvironment
...
This commit adds a hook to the `ModuleEnvironment` trait to learn when a
custom section in a wasm file is read. This hook can in theory be used
to parse and handle custom sections as they appear in the wasm file
without having to re-iterate over the wasm file after cranelift has
already parsed the wasm file.
The `translate_module` function is now less strict in that it doesn't
require sections to be in a particular order, but it's figured that the
wasm file is already validated elsewhere to verify the section order.
2019-09-07 16:20:23 -07:00
Aaron Power
8fd1128990
Remove FunctionBuilderContext from API, and change FunctionBuilder API
2019-09-07 14:43:07 -07:00
bjorn3
0273eb84e0
Fix rebase
2019-09-07 09:55:09 -07:00
bjorn3
e8d4ef7c3d
Fix review comments
2019-09-07 09:55:09 -07:00
bjorn3
e2b2b520eb
Fix compilation
2019-09-07 09:55:09 -07:00
bjorn3
f4cdd3007c
[split] Prevent double legalization of isplit and vsplit
2019-09-07 09:55:09 -07:00
bjorn3
2426bce9ac
Fix load.i64 and store legalization
2019-09-07 09:55:09 -07:00
bjorn3
ffa1e946a7
Fix compilation
2019-09-07 09:55:09 -07:00
bjorn3
acd454890c
Legalize load.i128 and store.i128 with arbitrary offsets
2019-09-07 09:55:09 -07:00
bjorn3
67593d997b
Add b128 type to fix tests
2019-09-07 09:55:09 -07:00
bjorn3
fa9602df80
Legalize load.i128 and store.i128
2019-09-07 09:55:09 -07:00
bjorn3
3ae78fddde
Fix warnings
2019-09-07 09:55:09 -07:00
bjorn3
dce521fa1c
Fix lone isplit, when the corresponding iconcat will be created later during legalization
2019-09-07 09:55:09 -07:00
bjorn3
0d5b87038a
Rustfmt
2019-09-07 09:55:09 -07:00
bjorn3
599b48d95f
Narrowing legalize some more bitops
2019-09-07 09:55:09 -07:00
bjorn3
c7a8b6c9e5
Remove some dbg! invocations
2019-09-07 09:55:09 -07:00
bjorn3
762b5e494b
Legalize brz.i128 and brnz.i128
2019-09-07 09:55:09 -07:00
bjorn3
83ac6dd4d4
[meta] Add some Debug derives
2019-09-07 09:55:09 -07:00
bjorn3
a43a3a5e9f
[meta] Give a nicer error message when a legalization uses an incorrect number of arguments
2019-09-07 09:55:09 -07:00
bjorn3
8d0e8f8931
[meta] Fix legalization in presence of varargs
2019-09-07 09:55:09 -07:00
bjorn3
d9ee08c088
Fix bug when i128 ebb param is unused
2019-09-07 09:55:09 -07:00
bjorn3
44ecc9c3d0
[WIP]
2019-09-07 09:55:09 -07:00
bjorn3
954a2007d2
Fix isplit legalization
2019-09-07 09:55:09 -07:00
bjorn3
f04b334b20
Rustfmt
2019-09-07 09:55:09 -07:00
bjorn3
6f7d57a71f
Handle isplit when it is not the result of a legalization
2019-09-07 09:55:09 -07:00
bjorn3
c1553194a7
Fix WideInt max size in insturctions.py
2019-09-07 09:55:09 -07:00
bjorn3
b7ec055575
Use little endian byte order in i128 test
2019-09-07 09:55:09 -07:00
bjorn3
4305fe37a0
Add test
2019-09-07 09:55:09 -07:00
bjorn3
c9a25abbc4
Basic i128 support
2019-09-07 09:55:09 -07:00
Marcin Mielniczuk
85a41d449c
Treat FIFOs' type as __WASI_FILETYPE_UNKNOWN.
2019-09-06 20:38:50 -07:00
Marcin Mielniczuk
c2d2b8066b
Add .vscode to .gitignore
2019-09-06 20:38:50 -07:00
Marcin Mielniczuk
d308c47822
Add a no-op implementation of fd_advise on Windows
...
Windows apparently has no similar syscall available.
2019-09-06 18:06:51 -07:00
Zack Slayton
1497825173
Updating link to Fuchsia blog post
2019-09-06 14:19:17 -07:00
Nicolas B. Pierron
3b0e244316
Fix binary64.clif to work with fold_redundant_jump. ( #987 )
2019-09-06 14:29:04 -06:00
Nicolas B. Pierron
1c5711c12b
Basic Block: Fix IR builder library example. ( #989 )
2019-09-06 14:27:02 -06:00
Nicolas B. Pierron
592f5445dd
Fix legalize-br-table test case for basic blocks. ( #990 )
2019-09-06 14:26:17 -06:00
Nicolas B. Pierron
891944dba1
Generate basic-blocks instead of Ebb in frontend::switch. ( #981 )
2019-09-06 14:07:06 -06:00
Benjamin Bouvier
e35cf861db
Fixes #984 : Add a isa::lookup_by_name function;
...
This removes the explicit dependency on target-lexicon for the embedder,
which can instead use the ISA's name directly. It can simplify
dependency management, in particular avoid the need for synchronizing
the target-lexicon dependencies versions.
It also tweak the error when an ISA isn't built as part of Cranelift to
be a SupportDisabled error; this was dead code before this.
2019-09-06 16:19:01 +02:00
Benjamin Bouvier
dca2e7e9a7
Add basic test for the pinned register;
2019-09-06 16:18:27 +02:00
Benjamin Bouvier
c1609b70e8
[codegen] Allow using the pinned register as the heap base via a setting;
2019-09-06 16:18:27 +02:00
Benjamin Bouvier
660b8b28b8
[codegen] Add a pinned register that's entirely under the control of the user;
2019-09-06 16:18:27 +02:00
Benjamin Bouvier
d1d2e790b9
[meta] Morph a few pub into pub(crate), and remove dead code;
2019-09-06 15:47:20 +02:00
Benjamin Bouvier
8fba449b7b
[meta] Introduce the EntityRefs structure instead of using dynamic lookup;
2019-09-06 15:47:20 +02:00
Benjamin Bouvier
29e3ec51c1
[meta] Introduce the Immediates structure instead of using dynamic lookup;
2019-09-06 15:47:20 +02:00
stefson
bafd79330d
upgrade to latest target-lexicon 0.8.1
...
this fixes the compile for arm and aarch64
reported via https://github.com/CraneStation/cranelift/issues/977
2019-09-06 15:20:04 +02:00
Dan Gohman
d858ebb4aa
Bump version to 0.42.0
2019-09-05 17:36:04 -07:00
Jakub Konka
2941c2022f
Refactor wasmtime-wasi crate
...
Changes:
* uses Rust edition 2018
* returns wasm32 errno directly rather than relying on
wasi_common::{host, memory} modules
* wraps extraction of memory and WASI context in a macro
2019-09-05 17:35:12 -07:00
Dan Gohman
6a09c5538f
Update lightbeam to latest master.
2019-09-05 17:15:55 -07:00
Artur Jamro
ade5c0dd2f
Trace log access to cache system
2019-09-05 17:14:32 -07:00