Commit Graph

112 Commits

Author SHA1 Message Date
bjorn3
16e936b93f Rustfmt 2018-09-26 15:40:11 +02:00
bjorn3
a1b8e02a88 Rustup to rustc 1.30.0-nightly (cb6d2dfa8 2018-09-16) 2018-09-17 18:49:10 +02:00
bjorn3
470a310f2e Implement place_field for unsized places 2018-09-16 15:28:27 +02:00
bjorn3
19eb4194b2 Fix unsize coerce for structs containing PhantomData like Unique 2018-09-16 14:49:45 +02:00
bjorn3
73248114ea Implement unsize of adt's (cc #14) 2018-09-16 12:02:03 +02:00
bjorn3
6196146ac4 Implement trait objects (cc #14) 2018-09-08 18:00:06 +02:00
bjorn3
62a0203a5a Rustfmt 2018-09-08 17:24:52 +02:00
bjorn3
8adc744645 Implement Box rvalue 2018-09-04 19:04:25 +02:00
bjorn3
42066522fb Perform some optimizations 2018-09-02 13:36:45 +02:00
bjorn3
9878eea61c Implement indexing for slices 2018-08-30 20:22:35 +02:00
bjorn3
fa4a37759b Rvalue::Len 2018-08-30 20:22:25 +02:00
bjorn3
12282a8ebc Implement unsize array -> slice and trait object -> trait object 2018-08-30 20:21:58 +02:00
bjorn3
b5082f7da8 Support unsized types 2018-08-30 20:21:21 +02:00
bjorn3
6f58f94cdb Add Caches to FunctionCx 2018-08-26 17:14:12 +02:00
bjorn3
0d15d9e5dd Rustup to rustc 1.30.0-nightly (63d66494a 2018-08-23) 2018-08-24 14:51:02 +02:00
bjorn3
d87edae73b Add CValue variant ByValPair 2018-08-22 12:35:07 +02:00
bjorn3
65641b8872 Rustfmt 2018-08-22 12:31:45 +02:00
bjorn3
8cd9bf3162 Use *_imm in some places 2018-08-22 11:45:54 +02:00
bjorn3
954d1e7bf2 Don't hardcode usize being 64 bit (fixes #8) 2018-08-22 10:54:32 +02:00
bjorn3
8a1c86473c Remove CValue::Func 2018-08-19 10:50:39 +02:00
bjorn3
ca59e4405e Reduce verbosity of output 2018-08-15 16:17:59 +02:00
bjorn3
e6fb515406 Craneliftup 2018-08-15 12:36:13 +02:00
bjorn3
0f26781a86 Support simplejit and faerie at the same time 2018-08-14 20:58:24 +02:00
bjorn3
178aa32b0c Make FunctionCx generic over Backend 2018-08-14 20:31:16 +02:00
bjorn3
4b10e6e613 Workaround missing encoding for icmp.i8 2018-08-14 11:58:39 +02:00
bjorn3
1031c659e0 Refactoring of constant.rs in preparation for static codegen 2018-08-13 12:13:43 +02:00
bjorn3
48701d758d Crash on some less code and fix a bug in discriminant read 2018-08-09 15:08:54 +02:00
bjorn3
f4e622cedc Add basic ssa analyzer 2018-08-09 10:46:56 +02:00
bjorn3
21c52c70b3 Rustfmt 2018-08-08 12:45:34 +02:00
bjorn3
efd203aa0b Implement indexing for arrays 2018-08-08 12:22:16 +02:00
bjorn3
40176e03fd Fix some bugs 2018-08-08 10:26:25 +02:00
bjorn3
376ec8c258 Don't crash on checked binops (treated like unchecked ones atm) 2018-08-08 09:35:35 +02:00
bjorn3
f001808249 Run rustfmt 0.9.0-nightly (69ad879 2018-07-27) 2018-07-31 12:25:16 +02:00
bjorn3
82dbd07806 Add support for calling C abi functions 2018-07-30 18:20:37 +02:00
bjorn3
37b61e0ca6 Rustup to rustc 1.29.0-nightly (866a71325 2018-07-29) 2018-07-30 16:57:40 +02:00
bjorn3
75a45965bb Add support for binop rem on floats 2018-07-30 15:34:34 +02:00
bjorn3
ebaa122d34 Fix non-closure rust-call functions and fix a field projection bug 2018-07-29 16:58:32 +02:00
bjorn3
4fad0f714f Add some basic intrinsic support (only size_of atm) 2018-07-21 18:38:08 +02:00
bjorn3
a3b53eb451 Better comment handling 2018-07-20 13:51:34 +02:00
bjorn3
2b5e55fb17 Refactor fn sig handling in preparation for supporting closures 2018-07-20 13:36:53 +02:00
bjorn3
bf2c35f05d Implement char to uint cast 2018-07-19 19:37:34 +02:00
bjorn3
1138d38d87 Extract abi handling to abi.rs 2018-07-19 19:33:42 +02:00
bjorn3
dabfac3df7 Fix a panic 2018-07-19 17:56:52 +02:00
bjorn3
5951efb748 Implement int casts 2018-07-18 16:22:29 +02:00
bjorn3
d0ef7f455c Add docs and expand some wildcard patterns 2018-07-18 11:55:52 +02:00
bjorn3
af3234cfd7 [WIP] Add arbitrary constant support 2018-07-16 15:13:37 +02:00
bjorn3
42ea584b8e Better handling of ref types equality in write_cvalue 2018-07-15 20:11:49 +02:00
bjorn3
a95a6729b1 Implement some more stuff and ignore some unimplemented stuff instead of panicking 2018-07-14 16:39:49 +02:00
bjorn3
25fef30186 More debugging output 2018-07-14 12:21:45 +02:00
bjorn3
92b14263a4 Update to cranelift 0.14 2018-07-14 12:04:15 +02:00
bjorn3
aee8d75057 Bug on TyParam in cton_type_from_ty and print mir before creating function§ 2018-06-30 18:55:01 +02:00
bjorn3
24e2eb25d4 Fix some warnings 2018-06-30 16:38:49 +02:00
bjorn3
7ca1f256cc Remove some cretonne bug workarounds and add ir comments 2018-06-30 16:27:11 +02:00
bjorn3
4bff31e36d Add drop shim 2018-06-28 20:27:43 +02:00
bjorn3
5508d44e2b Support bool constants and fix a u8 const error 2018-06-27 15:23:40 +02:00
bjorn3
75430b22e3 Be honnest about {u/i}128 support 2018-06-26 20:30:47 +02:00
bjorn3
a7e674006c Store TyLayout inside CValue and CPlace 2018-06-26 20:23:51 +02:00
bjorn3
c53d58f923 Implement some traits for FunctionCx 2018-06-24 14:25:29 +02:00
bjorn3
f62381865f Better monomorphization 2018-06-24 14:01:41 +02:00
bjorn3
0479604be1 Implement some more things 2018-06-23 18:54:15 +02:00
bjorn3
6de95c89d9 Implement enums 2018-06-23 18:26:54 +02:00
bjorn3
c7e7e1fe0f Split common utils out of base.rs 2018-06-22 19:18:53 +02:00