bjorn3
6129921529
More 128bit support
...
* UnOp::Neg
* ctpop
* bitreverse
Also replaces `if let Some(64u128) = ...` with `if ... = Some(u64u128)`
to be able to compile cg_clif using cg_clif, as cranelift_frontend::Switch
doesn't support i128 yet.
2019-10-06 15:51:43 +02:00
bjorn3
58a9b648e8
Update cranelift, faerie and target-lexicon
2019-10-03 18:55:01 +02:00
bjorn3
ce0be229d7
Use upstream cranelift
2019-09-08 19:18:17 +02:00
Atul Bhosale
f481a4b685
Format code using 'cargo fmt'
2019-08-31 22:58:09 +05:30
bjorn3
2a20cc0b94
Use anonymous lifetimes where possible
2019-08-18 16:52:07 +02:00
bjorn3
7c7a8e8367
Workaround for missing icmp{,_imm}.i128 legalizations
...
Fixes #667
2019-08-15 11:36:23 +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
581b6ea5be
Misc changes
2019-08-14 11:36:24 +02:00
bjorn3
63b82238bb
Implement 128bit checked add and sub
2019-07-26 11:30:39 +02:00
bjorn3
4d35be684d
Implement 128bit comparison binops
2019-07-26 11:29:35 +02:00
bjorn3
65e337cdf3
Implement 128bit multiply with overflow
2019-07-26 11:29:35 +02:00
bjorn3
88ad25f45e
Implement 128bit shl and shr binops
2019-07-26 11:29:35 +02:00
bjorn3
641a210ff6
Implement most 128bit binops
2019-07-26 11:29:35 +02:00