Commit Graph

65 Commits

Author SHA1 Message Date
bjorn3
7862e2ea1c Implement some intrinsics 2018-07-26 10:48:50 +02:00
bjorn3
874208bcd5 Add closure support (fixes #2) 2018-07-26 10:14:27 +02:00
bjorn3
ae44a1a172 Add support for metadata loading 2018-07-24 14:10:53 +02:00
bjorn3
eb077f67ac Support metadata writing 2018-07-23 11:17:39 +02:00
bjorn3
e40d025843 Eval const values 2018-07-22 18:30:53 +02:00
bjorn3
4fad0f714f Add some basic intrinsic support (only size_of atm) 2018-07-21 18:38:08 +02:00
bjorn3
0350f2faa9 Don't panic on intrinsics 2018-07-20 14:20:37 +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
12e129579d Fix a bug 2018-07-19 19:42:07 +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
b454bc34fb
Add a known panic case 2018-07-19 19:08:37 +02:00
bjorn3
c48beb652e Add RUST_BACKTRACE=1 to .travis.yml 2018-07-19 18:58:30 +02:00
bjorn3
e89b062b76 Add .travis.yml 2018-07-19 18:52:13 +02:00
bjorn3
85eaa2c0c9 Better libcore building instructions and rustup 2018-07-19 18:41:37 +02:00
bjorn3
75d8fefc18 Mention needing a nightly compiler in readme 2018-07-19 17:59:13 +02:00
bjorn3
dabfac3df7 Fix a panic 2018-07-19 17:56:52 +02:00
bjorn3
5f57ac5725 Workaround a bug 2018-07-18 16:29:40 +02:00
bjorn3
5951efb748 Implement int casts 2018-07-18 16:22:29 +02:00
bjorn3
f52727b8e6 Implement some binops for TyRawPtr 2018-07-18 15:17:22 +02:00
bjorn3
fdc625e18a Implement casting between TyRef and TyRawPtr 2018-07-18 14:21:13 +02:00
bjorn3
9e45cc490f Monomorphize type of constant 2018-07-18 13:46:56 +02:00
bjorn3
9a9054ad23 Disable define_function to prevent crashing on things cranelift doesn't yet support 2018-07-18 13:43:17 +02:00
bjorn3
9615f3a137 Add instructions to build libcore 2018-07-18 13:35:03 +02:00
bjorn3
425b527dc3 Add patch to disable u128 and i128 2018-07-18 12:25:01 +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
ee45f7d6bc Add cranelift submodule 2018-07-15 20:30:03 +02:00
bjorn3
42ea584b8e Better handling of ref types equality in write_cvalue 2018-07-15 20:11:49 +02:00
bjorn3
4694fa4f3d Move const val handling to constant.rs 2018-07-14 16:45:20 +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
0c592a6bb1 Add some warnings 2018-07-14 12:07:35 +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
4beb931641 Use DefPathBasedNames 2018-06-30 18:22:20 +02:00
bjorn3
24e2eb25d4 Fix some warnings 2018-06-30 16:38:49 +02:00
bjorn3
bb017326be Move some code around 2018-06-30 16:37:02 +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
d8c5152f30 Nicer verifier errors 2018-06-28 20:13:51 +02:00
bjorn3
e7a6890140 Implement Rvalue::Ref 2018-06-27 16:08:56 +02:00
bjorn3
e42ab29517 Implement some UnOp's 2018-06-27 15:57:52 +02:00
bjorn3
518aa42b49 Implement all binops for integers 2018-06-27 15:47:58 +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
aee975e0e2 Fix some bugs 2018-06-26 20:29:32 +02:00
bjorn3
a7e674006c Store TyLayout inside CValue and CPlace 2018-06-26 20:23:51 +02:00
bjorn3
bdad2d427d Implement SetDiscriminant 2018-06-24 14:29:56 +02:00