Commit Graph

52 Commits

Author SHA1 Message Date
bjorn3
0d15d9e5dd Rustup to rustc 1.30.0-nightly (63d66494a 2018-08-23) 2018-08-24 14:51:02 +02:00
bjorn3
65641b8872 Rustfmt 2018-08-22 12:31:45 +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
a3760040b2 Disable some prinln!'s 2018-08-15 15:28:08 +02:00
bjorn3
7f2a887c83 Use either SimpleJIT or faerie, but not both 2018-08-15 14:45:32 +02:00
bjorn3
e6fb515406 Craneliftup 2018-08-15 12:36:13 +02:00
bjorn3
178aa32b0c Make FunctionCx generic over Backend 2018-08-14 20:31:16 +02:00
bjorn3
f67ad9c120 Refactoring 2018-08-14 19:42:22 +02:00
bjorn3
0978710ffd Codegen minicore 2018-08-14 12:13:07 +02:00
bjorn3
57ba6411c2 Measure translation speed 2018-08-11 15:21:26 +02:00
bjorn3
af69258971 Use tcx.symbol_name 2018-08-11 14:30:05 +02:00
bjorn3
39cc4fd3fc Don't translate intrinsic func operand 2018-08-11 14:24:05 +02:00
bjorn3
d5a5aec022 Use get_function_name_and_sig for calling function from backend 2018-08-11 14:10:00 +02:00
bjorn3
50375db36c Rustfmt 2018-08-11 13:59:34 +02:00
bjorn3
2e0d6d49bf Deduplicate function name generation 2018-08-11 13:59:08 +02:00
bjorn3
419cbcbe2f Refactor abi.rs to make it easier to change the abi 2018-08-11 12:37:50 +02:00
bjorn3
b391524b4f Move return codegen to abi.rs 2018-08-11 11:01:48 +02:00
bjorn3
4df09f7325 Pass CPlace to codegen_intrinsic_call 2018-08-11 10:58:31 +02:00
bjorn3
973f191136 Move more code to codegen_intrinsic_call 2018-08-10 19:43:01 +02:00
bjorn3
29ab744f62 A small change 2018-08-10 19:31:02 +02:00
bjorn3
5ebcea23e4 Extract codegen_intrinsic_call 2018-08-10 19:20:13 +02:00
bjorn3
742abd011b Implement intrinsic arith_offset 2018-08-09 15:56:24 +02:00
bjorn3
2fd0d52834 Rustfmt 2018-08-09 11:25:14 +02:00
bjorn3
f4e622cedc Add basic ssa analyzer 2018-08-09 10:46:56 +02:00
bjorn3
5b85e0fec8 Rustfmt 2018-08-08 19:33:37 +02:00
bjorn3
620d65c661 Fix some small bugs 2018-08-08 16:00:14 +02:00
bjorn3
7f2e68e38e Better unimplemented stuff handling 2018-08-08 15:38:03 +02:00
bjorn3
c4705af4e2 Implement intrinsics {ctlz,cttz}{,_nonzero} and ctpop 2018-08-08 14:39:46 +02:00
bjorn3
ece497cc84 Some misc changes 2018-08-08 10:39:10 +02:00
bjorn3
40176e03fd Fix some bugs 2018-08-08 10:26:25 +02:00
bjorn3
018612cf22 Implement overflowing_* and *_with_overflowing 2018-08-08 09:49:42 +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
4901a66df1 Implement intrinsics assume and (un)likely 2018-07-30 16:02:26 +02:00
bjorn3
dc3ec67046 Implement intrinsics copy and copy_nonoverlapping 2018-07-30 15:58:46 +02:00
bjorn3
75a45965bb Add support for binop rem on floats 2018-07-30 15:34:34 +02:00
bjorn3
9b06ec8f1d Implement intrinsic discriminant_value and fix bug in discriminant reading 2018-07-30 14:36:32 +02:00
bjorn3
812fd6daca Implement some intrinsics 2018-07-29 17:22:40 +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
3a0f5dc9ec Fix a bug when the same function is called with different signatures 2018-07-27 19:01:38 +02:00
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
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