114 Commits

Author SHA1 Message Date
bjorn3
285c7c66dc Merge commit '03f01bbe901d60b71cf2c5ec766aef5e532ab79d' into update_cg_clif-2020-11-01 2020-11-03 11:00:04 +01:00
bjorn3
0a5968dfd2 Use the new cranelift-module interface
This updates Cranelift to include bytecodealliance/wasmtime#2249
2020-10-08 19:00:21 +02:00
bjorn3
c0507a63fb Invoke panic handler instead of trap for assert_* intrinsics 2020-09-29 13:22:01 +02:00
bjorn3
c8699076f9 Document almost all modules
Fixes #1082
2020-09-23 15:13:49 +02:00
bjorn3
217b3818b7 Rustup to rustc 1.48.0-nightly (c59199efc 2020-09-04) 2020-09-05 10:38:49 +02:00
CohenArthur
4e685a512e fmt: Run cargo fmt since it is available 2020-08-28 12:10:48 +02:00
CohenArthur
0d1f8c802e FunctionCx: Refactor fx.cx.tcx into fx.tcx 2020-08-22 16:47:31 +02:00
CohenArthur
7b534d653d FunctionCx: Rename codegen_cx -> cx 2020-08-22 16:17:58 +02:00
CohenArthur
ad4a7a1f0c FunctionCx: WIP: Fix syntax error on sed codegen_cx -> .codegen_cx 2020-08-22 15:21:38 +02:00
CohenArthur
cb69c7019c FunctionCx: Replace .module with .codegen_cx.module 2020-08-22 15:19:09 +02:00
CohenArthur
297d65c247 FunctionCx: WIP: Replace .tcx with .codegen_cx.tcx 2020-08-22 15:18:39 +02:00
bjorn3
c1a68b1386 Emulate the cpuid arch intrinsic 2020-08-15 19:08:19 +02:00
bjorn3
e8f1c5c53a Don't forbid i64x2 as simd type 2020-07-25 12:29:55 +02:00
bjorn3
67028cee51 Use PassMode::ByVal for Abi::Vector 2020-07-25 12:29:55 +02:00
bjorn3
95511cb3ee Add unaligned_volatile_{load,store} intrinsics 2020-07-23 12:37:27 +02:00
bjorn3
6345e4a1bc Implement variant_count intrinisic 2020-07-03 16:52:56 +02:00
bjorn3
699da394cc Validate simd and atomic intrinsic types 2020-07-03 16:52:37 +02:00
bjorn3
a299d0e632 Don't panic on unevaluatable promoted constants 2020-07-01 14:15:23 +02:00
bjorn3
eb89a2c092 Implement float_to_int_unchecked intrinsic 2020-06-30 19:02:00 +02:00
bjorn3
c674a32ab8 Implement f*_fast intrinsics 2020-06-30 19:01:17 +02:00
bjorn3
f5f24c7a5c Implement a few volatile intrinsics 2020-06-30 19:00:52 +02:00
bjorn3
aa6a4acd78 Fix ptr_offset_from intrinsic 2020-06-30 18:53:47 +02:00
bjorn3
48d4bc2fb6 Rustup to rustc 1.46.0-nightly (7750c3d46 2020-06-26) 2020-06-27 11:29:39 +02:00
bjorn3
eb8fd197ab Prelude cleanup 2020-06-20 18:44:49 +02:00
bjorn3
ef4186a85b Use Cranelift legalization for icmp.i128
The previous translation was wrong for signed 128bit comparisions

This fixes several libcore tests
2020-06-20 13:23:31 +02:00
bjorn3
bcd357a0ae Rustup to rustc 1.45.0-nightly (46e85b432 2020-05-24) 2020-05-25 12:41:33 +02:00
bjorn3
cd684e39e0 Fix saturated_* intrinsics for 128bit ints
Fixes #968
2020-04-17 14:14:24 +02:00
bjorn3
40cdcf0e5e Remove one usage of force_stack 2020-04-13 14:53:25 +02:00
bjorn3
dfb5d16fb3 Use bitcast to transmute where possible 2020-04-11 14:56:00 +02:00
bjorn3
291c75d10b Enable the rust_2018_idioms and unused_lifetimes lints and fix all warnings
They are set to deny by default in the rust-lang/rust repo
2020-04-09 12:12:55 +02:00
bjorn3
ac1c5d6954 Rustup to rustc 1.44.0-nightly (537ccdf3a 2020-04-02) 2020-04-03 11:54:18 +02:00
bjorn3
786c7d8d8c Rustup to rustc 1.44.0-nightly (76b11980a 2020-04-01) 2020-04-02 14:27:51 +02:00
bjorn3
017a9b7641 Rustup to rustc 1.44.0-nightly (699f83f52 2020-03-29) 2020-03-30 19:00:24 +02:00
bjorn3
33fd4c47aa Use 16bit simd indices 2020-03-27 16:42:28 +01:00
bjorn3
d2c5b4be68 Use vector icmp in simd_cmp! when possible 2020-03-27 16:41:05 +01:00
bjorn3
3f33fcbd30 Avoid using select in bool_to_zero_or_max_uint
It legalizes to a branch
2020-03-27 16:04:34 +01:00
bjorn3
f288959c00 Limit publicness to crate where possible and remove unused imports 2020-03-27 12:14:45 +01:00
bjorn3
6b30d508f7 Fix some FIXME's and add some new FIXME's 2020-03-21 16:52:02 +01:00
bjorn3
e9db3e7817 Avoid u/i*::{min.max}_value()
They will be deprecated in the future
2020-03-20 16:29:05 +01:00
bjorn3
d464169beb Rustup to rustc 1.44.0-nightly (7ceebd98c 2020-03-17) 2020-03-18 20:12:19 +01:00
bjorn3
992fae08c4 Simplify handling of unimplemented stuff 2020-03-17 16:26:56 +01:00
bjorn3
c7b2ffaebd Fix intrinsic name 2020-03-17 15:12:15 +01:00
bjorn3
d07c404bf4 Rename try intrinsic argument to match upstream 2020-03-17 14:53:32 +01:00
bjorn3
ebf13f1cce Rustup to rustc 1.43.0-nightly (dd6718796 2020-03-16) 2020-03-17 14:52:06 +01:00
bjorn3
1c02e6c368 Rustup to rustc 1.43.0-nightly (c20d7eecb 2020-03-11) 2020-03-12 21:04:00 +01:00
bjorn3
cc30c20293 Silence some warnings 2020-02-22 15:18:03 +01:00
bjorn3
c1bf153049 Rustup to rustc 1.43.0-nightly (8aa9d2014 2020-02-21) 2020-02-22 14:20:37 +01:00
bjorn3
430f738392 Update Cranelift for basic blocks 2020-02-14 18:23:29 +01:00
bjorn3
74c7a7b7c5 Replace unimplemented! with unreachable! when it will never be supported 2020-01-25 16:24:48 +01:00
bjorn3
ddd3d95a7e Make atomic instructions atomic using a global lock 2020-01-22 20:09:55 +01:00