Commit Graph

124 Commits

Author SHA1 Message Date
bjorn3
3f574e9f7b Use ranlib instead of ar x 2018-10-20 15:19:07 +02:00
bjorn3
42b6d734bf Rustup to rustc 1.31.0-nightly (46880f41b 2018-10-15) 2018-10-16 14:16:37 +02:00
bjorn3
b5dffe9765 Rustfmt 2018-10-10 19:07:13 +02:00
bjorn3
4177e804e9 Some more changes 2018-10-10 19:04:20 +02:00
bjorn3
0fa547ac98 Use absolute compile time paths for some log files 2018-10-06 14:48:34 +02:00
bjorn3
a94dd977bf Move intrinsics codegen to intrinsics.rs 2018-10-03 18:21:52 +02:00
bjorn3
742a795c78 Use FunctionBuilder::call_mem{cpy,move} 2018-09-26 15:42:07 +02:00
bjorn3
a83e7766b7 Update Cargo.lock 2018-09-22 13:55:23 +02:00
bjorn3
a1b8e02a88 Rustup to rustc 1.30.0-nightly (cb6d2dfa8 2018-09-16) 2018-09-17 18:49:10 +02:00
bjorn3
7c510c0661 Remove some code 2018-09-16 17:48:13 +02:00
bjorn3
e7ca9a186b Fix jit 2018-09-09 14:45:23 +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
d549d0f180 Update Cargo.lock 2018-09-05 19:43:42 +02:00
bjorn3
42066522fb Perform some optimizations 2018-09-02 13:36:45 +02:00
bjorn3
b5082f7da8 Support unsized types 2018-08-30 20:21:21 +02:00
bjorn3
42887dfdd9 Remove CodegenCx 2018-08-26 16:58:52 +02:00
bjorn3
e66f012d79 Remove stabilized feature gate 2018-08-26 16:28:00 +02:00
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
72f48776a1 Support cross-compiling (untested) 2018-08-18 16:36:47 +02:00
bjorn3
871be2a469 Codegen entry wrapper (fixes #13) 2018-08-17 13:21:03 +02:00
bjorn3
7a3ba963e1 Rustfmt 2018-08-17 13:01:56 +02:00
bjorn3
f27dfc3ac9 Make CodegenCx generic over Backend 2018-08-17 12:57:41 +02:00
bjorn3
7d3f2ba49f Change build.sh 2018-08-15 15:24:05 +02:00
bjorn3
7f2a8f8a66 Disable some example which don't compile yet 2018-08-15 14:49:36 +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
b752c88fef Put metadata loader in its own file 2018-08-15 12:07:08 +02:00
bjorn3
5ea8bae114 Rustup to rustc 1.30.0-nightly (67390c0c3 2018-08-14) 2018-08-15 11:34:35 +02:00
bjorn3
a8ca0f02fc Support emitting object files (fixes #5) 2018-08-14 22:01:18 +02:00
bjorn3
0f26781a86 Support simplejit and faerie at the same time 2018-08-14 20:58:24 +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
257a607e3e Change build.sh a bit 2018-08-13 19:40:40 +02:00
bjorn3
c7ed1ce033 Rustfmt 2018-08-13 18:04:39 +02:00
bjorn3
4615359e86 Define data for all allocs during finalization 2018-08-13 16:58:07 +02:00
bjorn3
1031c659e0 Refactoring of constant.rs in preparation for static codegen 2018-08-13 12:13:43 +02:00
bjorn3
23b4db227a Implement basic incremental compilation 2018-08-12 20:49:43 +02:00
bjorn3
5859b9b65d Rustfmt 2018-08-12 18:56:05 +02:00
bjorn3
57ba6411c2 Measure translation speed 2018-08-11 15:21:26 +02:00
bjorn3
46ebc2bc5c Make the hello world example runnable 2018-08-11 15:05:57 +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
dc323d7ffa Don't call finalize_all and then finalize_function 2018-08-11 12:07:42 +02:00
bjorn3
a45f0ee6e3 Add a log for unimplemented stuff 2018-08-09 15:30:26 +02:00
bjorn3
f4e622cedc Add basic ssa analyzer 2018-08-09 10:46:56 +02:00
bjorn3
7f2e68e38e Better unimplemented stuff handling 2018-08-08 15:38:03 +02:00
bjorn3
5c601f7316 Rustfmt 2018-08-07 16:43:09 +02:00
bjorn3
e0b1176ae5 Update Cargo.lock and rustup to rustc 1.30.0-nightly (73c78734b 2018-08-05) 2018-08-07 16:34:45 +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
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
2b5e55fb17 Refactor fn sig handling in preparation for supporting closures 2018-07-20 13:36:53 +02:00
bjorn3
1138d38d87 Extract abi handling to abi.rs 2018-07-19 19:33:42 +02:00
bjorn3
f52727b8e6 Implement some binops for TyRawPtr 2018-07-18 15:17:22 +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
af3234cfd7 [WIP] Add arbitrary constant support 2018-07-16 15:13:37 +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
92b14263a4 Update to cranelift 0.14 2018-07-14 12:04:15 +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
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
bjorn3
9d40131d81 Add cretonne_module 2018-06-19 19:51:29 +02:00
bjorn3
9f4f9eb1d7 Implement indirect calls 2018-06-18 18:39:07 +02:00
bjorn3
4d615dba0e Initial commit 2018-06-17 18:05:11 +02:00