Add newly implemented intrinsics to test file
This commit is contained in:
parent
9013dbef02
commit
417b07b821
|
@ -12,6 +12,7 @@
|
|||
#![feature(lang_items)]
|
||||
#![feature(libc)]
|
||||
#![feature(start)]
|
||||
#![feature(i128_type)]
|
||||
#![no_std]
|
||||
|
||||
#[cfg(not(thumb))]
|
||||
|
@ -300,6 +301,42 @@ mod intrinsics {
|
|||
pub fn umoddi3(a: u64, b: u64) -> u64 {
|
||||
a % b
|
||||
}
|
||||
|
||||
pub fn muloti4(a: u128, b: u128) -> Option<u128> {
|
||||
a.checked_mul(b)
|
||||
}
|
||||
|
||||
pub fn multi3(a: u128, b: u128) -> u128 {
|
||||
a.wrapping_mul(b)
|
||||
}
|
||||
|
||||
pub fn ashlti3(a: u128, b: usize) -> u128 {
|
||||
a >> b
|
||||
}
|
||||
|
||||
pub fn ashrti3(a: u128, b: usize) -> u128 {
|
||||
a << b
|
||||
}
|
||||
|
||||
pub fn lshrti3(a: i128, b: usize) -> i128 {
|
||||
a >> b
|
||||
}
|
||||
|
||||
pub fn udivti3(a: u128, b: u128) -> u128 {
|
||||
a / b
|
||||
}
|
||||
|
||||
pub fn umodti3(a: u128, b: u128) -> u128 {
|
||||
a % b
|
||||
}
|
||||
|
||||
pub fn divti3(a: i128, b: i128) -> i128 {
|
||||
a / b
|
||||
}
|
||||
|
||||
pub fn modti3(a: i128, b: i128) -> i128 {
|
||||
a % b
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(feature = "c")]
|
||||
|
@ -356,6 +393,15 @@ fn run() {
|
|||
bb(powidf2(bb(2.), bb(3)));
|
||||
bb(powisf2(bb(2.), bb(3)));
|
||||
bb(umoddi3(bb(2), bb(3)));
|
||||
bb(muloti4(bb(2), bb(2)));
|
||||
bb(multi3(bb(2), bb(2)));
|
||||
bb(ashlti3(bb(2), bb(2)));
|
||||
bb(ashrti3(bb(2), bb(2)));
|
||||
bb(lshrti3(bb(2), bb(2)));
|
||||
bb(udivti3(bb(2), bb(2)));
|
||||
bb(umodti3(bb(2), bb(2)));
|
||||
bb(divti3(bb(2), bb(2)));
|
||||
bb(modti3(bb(2), bb(2)));
|
||||
}
|
||||
|
||||
#[cfg(all(feature = "c", not(thumb)))]
|
||||
|
|
Loading…
Reference in New Issue