Commit Graph

85 Commits

Author SHA1 Message Date
bjorn3
4b10e6e613 Workaround missing encoding for icmp.i8 2018-08-14 11:58:39 +02:00
bjorn3
b9d7164eff Fix and test checked binops 2018-08-13 19:14:55 +02:00
bjorn3
1031c659e0 Refactoring of constant.rs in preparation for static codegen 2018-08-13 12:13: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
46ebc2bc5c Make the hello world example runnable 2018-08-11 15:05:57 +02:00
bjorn3
af69258971 Use tcx.symbol_name 2018-08-11 14:30:05 +02:00
bjorn3
2e0d6d49bf Deduplicate function name generation 2018-08-11 13:59:08 +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
5ebcea23e4 Extract codegen_intrinsic_call 2018-08-10 19:20:13 +02:00
bjorn3
e1ac09a3f0 Implement bool -> int cast 2018-08-09 15:44:01 +02:00
bjorn3
4c312faf90 brz <-> brnz 2018-08-09 15:36:02 +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
5b85e0fec8 Rustfmt 2018-08-08 19:33:37 +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
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
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
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
dc4f234115 Implement float binops 2018-07-29 17:09:17 +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
ab00acfb55 Add binop impls for TyBool 2018-07-26 10:59:57 +02:00
bjorn3
7862e2ea1c Implement some intrinsics 2018-07-26 10:48:50 +02:00
bjorn3
eb077f67ac Support metadata writing 2018-07-23 11:17:39 +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
85eaa2c0c9 Better libcore building instructions and rustup 2018-07-19 18:41:37 +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