Commit Graph

138 Commits

Author SHA1 Message Date
bjorn3
c40788c1b2 Simplify define_global_for_alloc_id 2018-08-13 15:34:18 +02:00
bjorn3
1031c659e0 Refactoring of constant.rs in preparation for static codegen 2018-08-13 12:13:43 +02:00
bjorn3
c2e46950eb Update Cargo.lock 2018-08-13 11:39:55 +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
8e2394874e Group drop glue instances in unimpl log 2018-08-11 15:36:08 +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
9a8c25ae75 Improve mini_core_hello_world.rs 2018-08-11 14:52:00 +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
dc323d7ffa Don't call finalize_all and then finalize_function 2018-08-11 12:07:42 +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
5629c423ff Add #!/bin/bash to build.sh 2018-08-10 19:09:21 +02:00
bjorn3
742abd011b Implement intrinsic arith_offset 2018-08-09 15:56:24 +02:00
bjorn3
e1ac09a3f0 Implement bool -> int cast 2018-08-09 15:44:01 +02:00
bjorn3
913daae0b4 Color libcore build output 2018-08-09 15:43:47 +02:00
bjorn3
4c312faf90 brz <-> brnz 2018-08-09 15:36:02 +02:00
bjorn3
11df0f5bd1 Remove patch "0004-Disable-float-fmt-because-it-is-big" 2018-08-09 15:33:18 +02:00
bjorn3
a45f0ee6e3 Add a log for unimplemented stuff 2018-08-09 15:30:26 +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
e9422fd4d4 Implement Rvalue::Aggregate(AggregateKind::Array, ...) 2018-08-09 11:42:35 +02:00
bjorn3
2fd0d52834 Rustfmt 2018-08-09 11:25:14 +02:00
bjorn3
566803f288 Implement raw ptr -> usize, fn ptr -> usize, usize -> raw ptr casts 2018-08-09 11:23:04 +02:00
bjorn3
9a2b1d4ac3 Implement float -> float and int -> float casts 2018-08-09 11:16:46 +02:00
bjorn3
6c86274943 Implement raw ptr -> usize cast 2018-08-09 11:07:10 +02:00
bjorn3
f900b99e27 Improve build.sh 2018-08-09 10:55:13 +02:00
bjorn3
f4e622cedc Add basic ssa analyzer 2018-08-09 10:46:56 +02:00
bjorn3
72fa53bac3 Use correct dylib extension for local os 2018-08-08 19:46:16 +02:00
bjorn3
5c4a8b0ca0 Make sure build.sh exits with non-zero error code on errors 2018-08-08 19:42:11 +02:00
bjorn3
5b85e0fec8 Rustfmt 2018-08-08 19:33:37 +02:00
bjorn3
7b29b4cec1 Update message about crashing on libcore 2018-08-08 16:03:06 +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
0b88b4ef09 Add patch to disable float fmt, because it is big 2018-08-08 14:58:47 +02:00
bjorn3
c4705af4e2 Implement intrinsics {ctlz,cttz}{,_nonzero} and ctpop 2018-08-08 14:39:46 +02:00
bjorn3
d4b6bce39c Workaround two bugs 2018-08-08 12:53:09 +02:00
bjorn3
21c52c70b3 Rustfmt 2018-08-08 12:45:34 +02:00
bjorn3
822a181c87 Implement NullOp::SizeOf 2018-08-08 12:44:41 +02:00
bjorn3
1305d1ef23 Implement Rvalue::Repeat 2018-08-08 12:30:25 +02:00
bjorn3
efd203aa0b Implement indexing for arrays 2018-08-08 12:22:16 +02:00
bjorn3
ece497cc84 Some misc changes 2018-08-08 10:39:10 +02:00