Commit Graph

44 Commits

Author SHA1 Message Date
bjorn3
5f54cc7658 Implement checked_mul
Fixes #6
2020-06-20 15:15:28 +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
5c6bf836fe Implement #[link_section]
Fixes #1047
2020-06-20 12:01:24 +02:00
bjorn3
eab4c9063e Sync fn_sig_for_fn_abi with upstream for generator resume args
Fixes #970
2020-04-18 15:45:42 +02:00
bjorn3
9ab2af56aa Rustup to rustc 1.43.0-nightly (4ad624882 2020-03-03) 2020-03-04 15:04:28 +01:00
bjorn3
c8de552c01 Tls support 2020-02-26 14:41:05 +01:00
bjorn3
e9d3569e08 Run libcore tests 2019-11-24 15:44:39 +01:00
bjorn3
b0bcb23eb4 Fix signed cast to 128bit integer 2019-11-16 16:44:26 +01:00
bjorn3
5407b51aa7 Rustup to rustc 1.40.0-nightly (9e346646e 2019-11-08) 2019-11-09 11:14:18 +01:00
bjorn3
1f90b04cd6 Fix float -> u/i128 cast
The original test casts were optimized away by rustc,
so cg_clif never saw them.

cc #668
2019-08-21 14:35:48 +02:00
bjorn3
b2d6705fe2 Implement u/i128 <-> float casts
Fixes #668
2019-08-21 14:01:29 +02:00
bjorn3
3fcd54088c Implement saturating_{add,sub} intrinsics 2019-08-20 10:40:08 +02:00
bjorn3
f99d31dbfe Implement pow{f32,f64} intrinsics 2019-08-19 17:16:21 +02:00
bjorn3
edbb5730ea Implement copysign{f32,f64} intrinsics 2019-08-19 16:27:09 +02:00
bjorn3
2558bf2f6b Workaround for missing #[rustc_args_required_const(..)] support
cc #666
2019-08-16 16:04:50 +02:00
bjorn3
9505d60a24 Cast rhs to lhs type for shl and shr 2019-08-14 15:18:05 +02:00
bjorn3
f5b0a68fbf Fix some warnings 2019-08-12 16:00:10 +02:00
bjorn3
314141392a Implement log2{f32,f64} intrinsics 2019-08-12 15:54:24 +02:00
bjorn3
7602a46bb9 Implement simd_extract 2019-08-05 16:28:27 +02:00
bjorn3
2f0093b8c2 Test mutex locking 2019-08-01 11:15:40 +02:00
bjorn3
b806070a88 Fix simd_cast 2019-07-31 09:46:05 +02:00
bjorn3
69526d464f Implement some float simd intrinsics 2019-07-30 14:37:20 +02:00
bjorn3
ee4927e069 Fix _mm_movemask_epi8
The order of iteration was wrong
2019-07-29 18:59:17 +02:00
bjorn3
63646b1956 Implement llvm.x86.avx2.pmovmskb llvm intrinsic 2019-07-29 12:50:20 +02:00
bjorn3
9cb787fe70 Implement and test simd_shuffle* 2019-07-29 11:23:53 +02:00
bjorn3
76b89476c3 [WIP] simd_shuffle* 2019-07-29 11:03:55 +02:00
bjorn3
90f2b12d47 Fix simd comparison 2019-07-29 11:03:55 +02:00
bjorn3
7fdd058c60 Emulate some simd intrinsics 2019-07-29 11:03:55 +02:00
bjorn3
436a24a85d Implement many more float intrinsics 2019-07-27 16:52:00 +02:00
bjorn3
b46c8bfb7e Use std checked_div 2019-07-26 11:32:04 +02:00
bjorn3
7f5c2dab9d Remove some unnecessary changes 2019-07-26 11:30:39 +02:00
bjorn3
5180becc7c Fix 128bit CValue::const_val 2019-07-26 11:30:39 +02:00
bjorn3
63b82238bb Implement 128bit checked add and sub 2019-07-26 11:30:39 +02:00
bjorn3
65e337cdf3 Implement 128bit multiply with overflow 2019-07-26 11:29:35 +02:00
bjorn3
834a3bf49c [WIP] 2019-07-26 11:29:35 +02:00
bjorn3
641a210ff6 Implement most 128bit binops 2019-07-26 11:29:35 +02:00
bjorn3
c814ee0d2a [WIP] 2019-07-26 11:28:04 +02:00
bjorn3
4e1d219f06 Implement some float intrinsics 2019-06-26 16:06:12 +02:00
bjorn3
d7274ac5fd Fix load and store for ByValPair values with differently sized components 2019-06-23 15:23:06 +02:00
bjorn3
bab8113954 Fix discriminant_value intrinsic
Fixes #349
2019-02-16 17:18:51 +01:00
bjorn3
de94b62ba4 Fix atomic_xchg* intrinsics 2019-02-16 16:24:03 +01:00
bjorn3
26289edf1a Fix cttz{,_nonzero} intrinsics 2019-02-16 15:42:20 +01:00
bjorn3
5721542164 Fix BinOp::Offset
fixes #341
2019-02-16 14:02:15 +01:00
bjorn3
223611dcb2 Fix and enable libstd building 2019-02-11 19:40:07 +01:00