|
@@ -103,40 +103,20 @@ intrinsics! {
|
|
|
pub extern "C" fn __lshrti3(a: u128, b: u32) -> u128 {
|
|
|
a.lshr(b)
|
|
|
}
|
|
|
-}
|
|
|
|
|
|
-u128_lang_items! {
|
|
|
- #[lang = "i128_shl"]
|
|
|
- pub fn rust_i128_shl(a: i128, b: u32) -> i128 {
|
|
|
- __ashlti3(a as _, b) as _
|
|
|
- }
|
|
|
- #[lang = "i128_shlo"]
|
|
|
- pub fn rust_i128_shlo(a: i128, b: u128) -> (i128, bool) {
|
|
|
- (rust_i128_shl(a, b as _), b >= 128)
|
|
|
- }
|
|
|
- #[lang = "u128_shl"]
|
|
|
- pub fn rust_u128_shl(a: u128, b: u32) -> u128 {
|
|
|
- __ashlti3(a, b)
|
|
|
- }
|
|
|
- #[lang = "u128_shlo"]
|
|
|
- pub fn rust_u128_shlo(a: u128, b: u128) -> (u128, bool) {
|
|
|
- (rust_u128_shl(a, b as _), b >= 128)
|
|
|
+ pub extern "C" fn __rust_i128_shlo(a: i128, b: u128) -> (i128, bool) {
|
|
|
+ (__ashlti3(a as _, b as _) as _, b >= 128)
|
|
|
}
|
|
|
|
|
|
- #[lang = "i128_shr"]
|
|
|
- pub fn rust_i128_shr(a: i128, b: u32) -> i128 {
|
|
|
- __ashrti3(a, b)
|
|
|
+ pub extern "C" fn __rust_u128_shlo(a: u128, b: u128) -> (u128, bool) {
|
|
|
+ (__ashlti3(a, b as _), b >= 128)
|
|
|
}
|
|
|
- #[lang = "i128_shro"]
|
|
|
- pub fn rust_i128_shro(a: i128, b: u128) -> (i128, bool) {
|
|
|
- (rust_i128_shr(a, b as _), b >= 128)
|
|
|
- }
|
|
|
- #[lang = "u128_shr"]
|
|
|
- pub fn rust_u128_shr(a: u128, b: u32) -> u128 {
|
|
|
- __lshrti3(a, b)
|
|
|
+
|
|
|
+ pub extern "C" fn __rust_i128_shro(a: i128, b: u128) -> (i128, bool) {
|
|
|
+ (__ashrti3(a, b as _), b >= 128)
|
|
|
}
|
|
|
- #[lang = "u128_shro"]
|
|
|
- pub fn rust_u128_shro(a: u128, b: u128) -> (u128, bool) {
|
|
|
- (rust_u128_shr(a, b as _), b >= 128)
|
|
|
+
|
|
|
+ pub extern "C" fn __rust_u128_shro(a: u128, b: u128) -> (u128, bool) {
|
|
|
+ (__lshrti3(a, b as _), b >= 128)
|
|
|
}
|
|
|
}
|