bjorn3
|
68dcfc1c78
|
Move pass mode handling to abi/pass_mode.rs
|
2019-08-30 11:58:52 +02:00 |
|
bjorn3
|
6427eaf68b
|
Move abi.rs to abi/mod.rs
|
2019-08-30 11:51:33 +02:00 |
|
bjorn3
|
556d708f20
|
Rustup to rustc 1.39.0-nightly (72b2abfd6 2019-08-29)
|
2019-08-30 11:42:42 +02:00 |
|
bjorn3
|
d9d8c69af1
|
Split extract layout field of all CPlace variants into a sparate struct
|
2019-08-29 11:23:19 +02:00 |
|
bjorn3
|
1018a34662
|
Don't add stack_addr intructions to prelude
Speeds up simple-raytracer by 30% (cc #684)
Also reduces the size of the simple-raytracer binary from 9.2MB to 8.6MB
|
2019-08-28 17:59:48 +02:00 |
|
bjorn3
|
6127632c76
|
Use f{32,64}const insts instead of loading from a global value
|
2019-08-28 16:38:53 +02:00 |
|
bjorn3
|
40629999bc
|
Don't force RETURN_PLACE to stack
Speeds up simple-raytracer by 7% (cc #684)
|
2019-08-28 15:29:10 +02:00 |
|
bjorn3
|
b9dc950a11
|
Rustup to rustc 1.39.0-nightly (9b91b9c10 2019-08-26)
|
2019-08-27 11:01:36 +02:00 |
|
bjorn3
|
e704eb5259
|
Sync discriminant getter and setter with upstream
Fixes #683
|
2019-08-26 11:03:06 +02:00 |
|
bjorn3
|
bb634f3c88
|
Always use Linkage::Import for relocations targeting a static
|
2019-08-21 14:57:12 +02:00 |
|
bjorn3
|
1f90b04cd6
|
Fix float -> u/i128 cast
The original test casts were optimized away by rustc,
so cg_clif never saw them.
cc #668
|
2019-08-21 14:35:48 +02:00 |
|
bjorn3
|
b2d6705fe2
|
Implement u/i128 <-> float casts
Fixes #668
|
2019-08-21 14:01:29 +02:00 |
|
bjorn3
|
3fcd54088c
|
Implement saturating_{add,sub} intrinsics
|
2019-08-20 10:40:08 +02:00 |
|
bjorn3
|
f99d31dbfe
|
Implement pow{f32,f64} intrinsics
|
2019-08-19 17:16:21 +02:00 |
|
bjorn3
|
95908f61a0
|
Add unimpl! for cast between 128bit int and float
|
2019-08-19 16:43:25 +02:00 |
|
bjorn3
|
ae428a2d70
|
Fix saturating_{add,sub} for 8bit and 16bit ints
|
2019-08-19 16:42:56 +02:00 |
|
bjorn3
|
0e35e4ea19
|
Set correct linkage for statics
|
2019-08-19 16:27:21 +02:00 |
|
bjorn3
|
edbb5730ea
|
Implement copysign{f32,f64} intrinsics
|
2019-08-19 16:27:09 +02:00 |
|
bjorn3
|
ce860e5fde
|
Fix cross crate static duplicate codegen
|
2019-08-19 16:26:20 +02:00 |
|
bjorn3
|
2a20cc0b94
|
Use anonymous lifetimes where possible
|
2019-08-18 16:52:07 +02:00 |
|
bjorn3
|
1bee110d95
|
Let codegen_get_discriminant accept CValue instead of CPlace
|
2019-08-18 16:19:33 +02:00 |
|
bjorn3
|
5b818e5e0f
|
Use native ar to create archive files
Workaround for #672
|
2019-08-18 16:06:59 +02:00 |
|
bjorn3
|
43e68319fa
|
Rustup to rustc 1.39.0-nightly (2111aed0a 2019-08-17)
|
2019-08-18 11:30:13 +02:00 |
|
bjorn3
|
21141eb235
|
Don't keep alloc_map locked while calling data_id_for_static
Fixes #670
|
2019-08-17 12:42:57 +02:00 |
|
bjorn3
|
480db7dd9e
|
Implement system abi
|
2019-08-16 18:16:24 +02:00 |
|
bjorn3
|
2558bf2f6b
|
Workaround for missing #[rustc_args_required_const(..)] support
cc #666
|
2019-08-16 16:04:50 +02:00 |
|
bjorn3
|
7c7a8e8367
|
Workaround for missing icmp{,_imm}.i128 legalizations
Fixes #667
|
2019-08-15 11:36:23 +02:00 |
|
bjorn3
|
9505d60a24
|
Cast rhs to lhs type for shl and shr
|
2019-08-14 15:18:05 +02:00 |
|
bjorn3
|
b4e55cdedd
|
Refactor num.rs
|
2019-08-14 15:03:52 +02:00 |
|
bjorn3
|
db071db95a
|
Calculate sign in trans{,_checked}_int_binop instead of caller
|
2019-08-14 13:01:55 +02:00 |
|
bjorn3
|
32cb5b8c8e
|
Move discriminant get and set to discriminant.rs
|
2019-08-14 12:01:41 +02:00 |
|
bjorn3
|
883894a07a
|
Move trans_*_binop to num.rs
|
2019-08-14 11:52:39 +02:00 |
|
bjorn3
|
581b6ea5be
|
Misc changes
|
2019-08-14 11:36:24 +02:00 |
|
bjorn3
|
11b2b86b08
|
Fix some rustc tests
* Check for `#[rustc_error]` attribute.
* Use the same weak static type error message as cg_llvm
|
2019-08-13 19:42:16 +02:00 |
|
bjorn3
|
6f23a053e4
|
Fix a panic on type size overflow
|
2019-08-13 19:40:48 +02:00 |
|
bjorn3
|
70fbca287c
|
Fix intrinsic::transmute::<_, <uninhabited>>(...)
|
2019-08-13 19:39:59 +02:00 |
|
bjorn3
|
f02d135057
|
Print error for #[rustc_def_path] like expected
|
2019-08-13 19:39:46 +02:00 |
|
bjorn3
|
9fdef69fe4
|
Fix uninit intrinsic for zst values
|
2019-08-13 19:37:51 +02:00 |
|
bjorn3
|
f9c20ce244
|
Rustup to rustc 1.38.0-nightly (534b42394 2019-08-09)
|
2019-08-13 12:18:35 +02:00 |
|
bjorn3
|
36184d286c
|
Remove outdated FIXME and add some new FIXME
|
2019-08-13 11:46:59 +02:00 |
|
bjorn3
|
f93cd924ec
|
Implement float -> small int cast
Also workaround small signed int eq/ne binop clif bug
|
2019-08-12 17:25:16 +02:00 |
|
bjorn3
|
314141392a
|
Implement log2{f32,f64} intrinsics
|
2019-08-12 15:54:24 +02:00 |
|
bjorn3
|
57bc9d8daf
|
Extract jit imported symbols loading functionAlso make the staticlib load error non fatal
|
2019-08-11 19:04:56 +02:00 |
|
bjorn3
|
bd19af37f4
|
Remove debugging println
|
2019-08-11 18:12:49 +02:00 |
|
bjorn3
|
05b7312db2
|
Misc changes
|
2019-08-11 17:33:52 +02:00 |
|
bjorn3
|
9041db962d
|
Fix it
|
2019-08-11 17:06:18 +02:00 |
|
bjorn3
|
3000a3f63d
|
[WIP] Implement dylib loading for the JIT
|
2019-08-10 16:50:23 +02:00 |
|
bjorn3
|
dbac219207
|
Libtest support
|
2019-08-09 12:46:24 +02:00 |
|
bjorn3
|
e7a507863c
|
Implement real saturating behaviour for the saturating_* intrinsics with unsigned ints
|
2019-08-09 12:35:51 +02:00 |
|
bjorn3
|
6414f03644
|
Don't omit overflow checks for *_with_overflow intrinsics when compiling without debug assertions
|
2019-08-09 12:35:51 +02:00 |
|