Commit Graph

6452 Commits

Author SHA1 Message Date
Andrew Brown
659725b465 Add x86-specific SIMD settings, e.g. SSE2
Also, ties SIMD ISA predicates to the shared enable_simd setting
2019-07-16 17:07:44 -07:00
Andrew Brown
f2c48009e8 Disable SIMD features by default 2019-07-16 17:07:44 -07:00
Andrew Brown
8378297f33 Prepare legalizer codegen for SIMD features
Contains fixes from @bnjbvr to codegen as a part of https://github.com/bnjbvr/cranelift/pull/2; necessary for SIMD features to work
2019-07-16 17:07:44 -07:00
Jakub Konka
c3994bf57b Use Travis for Win builds as well 2019-07-16 08:41:20 +02:00
Jakub Konka
adadf835f0 Bump required Rust version to 1.36 2019-07-15 15:51:31 -07:00
Jakub Konka
1531fabf43 Update wasmtime-wasi to new wasi-common interface 2019-07-15 15:36:12 -07:00
Jakub Konka
667f272edd Rewrite majority of impl reusing libstd (#34)
* Rewrite FdEntry reusing as much libstd as possible

* Use the new FdEntry, FdObject, Descriptor struct in *nix impl

* Adapt Windows impl

* Remove unnecessary check in fd_read

Check `host_nread == 0` caused premature FdEntry closure and removal
which ultimately was resulting in an attempt at "double closing" of
the same file descriptor at the end of the Wasm program:
...
fd_close(fd=4)
    -> errno=WASI_ESUCCESS
fd_close(fd=4)
    -> errno=WASI_EBADF

* Use libstd vectored IO

* Use std:🧵:yield_now to implement sched_yield

* Add logging to integration tests

* Add preliminary support for host-specific errors

* Operate on std::fs::File in path_get on *nix

* Add cross-platform RawString type encapsulating OsStrExt

* Fix Windows build

* Update Travis and README to Rust v1.36

* Remove unused winx::handle::close helper

* Refactor Descriptor into raw handles/fds

* Strip readlinkat in prep for path_get host-independent

* Strip openat in prep for path_get host-independent

* Move ManuallyDrop up one level from Descriptor to FdObject

* Make (c)iovec host fns unsafe

* Swap unwraps/expects for Results in fdentry_impl on nix

* Rewrite fd_pread/write and implement for Win

* Use File::sync_all to impl fd_sync

* Use File::sync_data to impl fd_datasync

* Rewind file cursor after fd_p{read, write} on Windows

* Add fd_p{read, write} tests

* Handle errors instead of panicking in path_get

* Use File::set_len to impl fd_allocate

* Add test for fd_allocate

* Replace all panics with Results

* Document the point of RawString
2019-07-15 15:34:28 -07:00
Dan Gohman
67dd0b5015 Bump version to 0.35.0 2019-07-12 15:48:19 -07:00
Artur Jamro
a64ada7e30 Do not import libc on windows (#848)
* Do not import libc on windows
2019-07-12 15:41:59 -07:00
Artur Jamro
9e884b4433 Add support for some serde serialization (#847)
* Add support for some serde serialization
2019-07-12 15:30:50 -07:00
Nicolas B. Pierron
8edc40cb49 BB-like manual legalization for x86 ISA 2019-07-12 14:20:26 +02:00
Mark McCaskey
f856b124fd Use Default trait for Position and DisplayFunctionAnnotations (#843) 2019-07-12 11:21:00 +02:00
Benson Chau
6a19866da2 issue #772: added an memmap replacement to support selinux 2019-07-11 18:16:41 -07:00
Jef
7cc6a1d9f3 Fix stack depth in rem, update cranelift-codegen 2019-07-11 13:10:47 +02:00
Benjamin Bouvier
bfc1468688 [docs] Don't accidentally generate doc tests; 2019-07-11 11:48:45 +02:00
Benjamin Bouvier
062ed8f6ea [docs] Remove rst annotations in instructions doc comments; 2019-07-11 11:48:45 +02:00
Benjamin Bouvier
abc3397017 [docs] Remove special handling of CDSL python modules; 2019-07-11 11:48:45 +02:00
Benjamin Bouvier
55f36ce81a [docs] Update docs to point to the docs.rs website; 2019-07-11 11:48:45 +02:00
Benjamin Bouvier
d5b80b2803 [meta] Generate full documentation for instructions in InstBuilder; 2019-07-11 11:48:45 +02:00
Dan Gohman
6b7ebfdddc Rust 1.36, with wasm32-wasi support, is now stable! 2019-07-10 12:27:21 -07:00
Benjamin Bouvier
84a6795873 [meta] Riscv: add back stacknull encodings for copy_nop; 2019-07-10 17:51:09 +02:00
Dan Gohman
59f6c81e4f Bump version to 0.34.0 2019-07-09 12:31:58 -07:00
Benjamin Bouvier
41a3d88b37 Fixes #837: Use an u64 comparison instead of a usize comparison in meta; 2019-07-09 18:15:30 +02:00
Sean Stangl
237d48477a Fix an outdated comment referring to FunctionLayout instead of Layout 2019-07-09 18:05:36 +02:00
Nicolas B. Pierron
3ac7466cab Legalize br_table to a BB-like format. 2019-07-09 16:48:54 +02:00
Nicolas B. Pierron
1963c223b1 Legalize trapz/trapnz to a BB-like format. 2019-07-09 16:02:49 +02:00
Benjamin Bouvier
f11fc34066 Build fix: add crates::predicates to the Riscv enc_tables file; 2019-07-09 11:31:21 +02:00
Benjamin Bouvier
56f6908020 [meta] Legalization: Don't generate a variable for replaced instructions;
(since they're unused)
2019-07-09 10:56:50 +02:00
Benjamin Bouvier
cd4c28ad97 [meta] Legalization: Unprefix some module paths to make code neater; 2019-07-09 10:56:50 +02:00
Benjamin Bouvier
15d8b95e72 [meta] Legalization: remove spurious Option wrapping for type variables; 2019-07-09 10:56:50 +02:00
Benjamin Bouvier
f1222dce10 [meta] Legalization: emit typeof type variables for results in all the cases; 2019-07-09 10:56:50 +02:00
Benjamin Bouvier
3545363006 Add ir::Types::lane_of as an alias of lane_type to be used in typevar constraints; 2019-07-09 10:56:50 +02:00
Benjamin Bouvier
4fef03f5f8 [meta] Legalization: remove spurious assert;
This assert was added when porting legalization from Python to Rust and
doesn't hold when we have derived type variables.
2019-07-09 10:56:50 +02:00
superriva
5672cd651c Fix mem::uninitialized depricated since 1.38
Fix for `https://github.com/CraneStation/cranelift/issues/826`.
This fix will require 1.36 minimal version for all Cranelift. Right?

Update cranelift-simplejit/src/memory.rs

Co-Authored-By: bjorn3 <bjorn3@users.noreply.github.com>

Update memory.rs
2019-07-08 15:21:56 +02:00
Nicolas B. Pierron
f431465802 Replace newly inserted fallthrough by jump. 2019-07-08 15:17:49 +02:00
Nicolas B. Pierron
8bfdfbe68b Use BB-like EBB in filetests/regalloc/*.clif 2019-07-08 15:17:49 +02:00
Nicolas B. Pierron
a1a4b9bfb1 Use BB-like EBB in filetests/verifier/*.clif 2019-07-08 15:17:49 +02:00
Nicolas B. Pierron
8c65ec0dde Use BB-like EBB in filetests/regress/*.clif 2019-07-08 15:17:49 +02:00
Nicolas B. Pierron
3c6ca9049e Use BB-like EBB in filetests/simple_gvn/*.clif 2019-07-08 15:17:49 +02:00
Nicolas B. Pierron
560619f749 Use BB-like EBB in filetests/cfg/*.clif 2019-07-08 15:17:49 +02:00
Nicolas B. Pierron
3970fa2752 Use BB-like EBB in filetests/postopt/*.clif 2019-07-08 15:17:49 +02:00
Nicolas B. Pierron
4316917cb9 Use BB-like EBB in filetests/parser/*.clif 2019-07-08 15:17:49 +02:00
Nicolas B. Pierron
7b36cb58a0 Use BB-like EBB in filetests/isa/x86/*.clif 2019-07-08 15:17:49 +02:00
Nicolas B. Pierron
77eb34e20f Use BB-like EBB in filetests/isa/riscv/*.clif 2019-07-08 15:17:49 +02:00
Nicolas B. Pierron
40eede927b Use BB-like EBB in filetests/domtree/*.clif 2019-07-08 15:17:49 +02:00
Nicolas B. Pierron
44abcbec1e Use BB-like EBB in filetests/licm/*.clif 2019-07-08 15:17:49 +02:00
Nicolas B. Pierron
bc75eee0cd Use BB-like EBB in docs/*.clif 2019-07-08 15:17:49 +02:00
Jef
f53dc0b309 Fix problems found by fuzzing 2019-07-08 13:52:10 +02:00
Dan Gohman
9d91a937dc Update wasmtime-wasi-c to cloudabi-utils 223dadc5.
We already had a forward-port of d5abd351d, so this just contains a
minor and unobservable bug fix.
2019-07-06 07:18:36 +02:00
Benjamin Bouvier
563525b090 [meta] Remove mentions to Python in comments of the non-meta crate; 2019-07-05 17:50:17 +02:00