@@ -96,36 +96,38 @@ intrinsics! {
96
96
}
97
97
}
98
98
99
- #[ cfg_attr( not( stage0) , lang = "i128_shl" ) ]
100
- pub fn rust_i128_shl ( a : i128 , b : u32 ) -> i128 {
101
- __ashlti3 ( a as _ , b) as _
102
- }
103
- #[ cfg_attr( not( stage0) , lang = "i128_shlo" ) ]
104
- pub fn rust_i128_shlo ( a : i128 , b : u128 ) -> ( i128 , bool ) {
105
- ( rust_i128_shl ( a, b as _ ) , b >= 128 )
106
- }
107
- #[ cfg_attr( not( stage0) , lang = "u128_shl" ) ]
108
- pub fn rust_u128_shl ( a : u128 , b : u32 ) -> u128 {
109
- __ashlti3 ( a, b)
110
- }
111
- #[ cfg_attr( not( stage0) , lang = "u128_shlo" ) ]
112
- pub fn rust_u128_shlo ( a : u128 , b : u128 ) -> ( u128 , bool ) {
113
- ( rust_u128_shl ( a, b as _ ) , b >= 128 )
114
- }
99
+ u128_lang_items ! {
100
+ #[ lang = "i128_shl" ]
101
+ pub fn rust_i128_shl( a: i128 , b: u32 ) -> i128 {
102
+ __ashlti3( a as _, b) as _
103
+ }
104
+ #[ lang = "i128_shlo" ]
105
+ pub fn rust_i128_shlo( a: i128 , b: u128 ) -> ( i128 , bool ) {
106
+ ( rust_i128_shl( a, b as _) , b >= 128 )
107
+ }
108
+ #[ lang = "u128_shl" ]
109
+ pub fn rust_u128_shl( a: u128 , b: u32 ) -> u128 {
110
+ __ashlti3( a, b)
111
+ }
112
+ #[ lang = "u128_shlo" ]
113
+ pub fn rust_u128_shlo( a: u128 , b: u128 ) -> ( u128 , bool ) {
114
+ ( rust_u128_shl( a, b as _) , b >= 128 )
115
+ }
115
116
116
- #[ cfg_attr( not( stage0) , lang = "i128_shr" ) ]
117
- pub fn rust_i128_shr ( a : i128 , b : u32 ) -> i128 {
118
- __ashrti3 ( a, b)
119
- }
120
- #[ cfg_attr( not( stage0) , lang = "i128_shro" ) ]
121
- pub fn rust_i128_shro ( a : i128 , b : u128 ) -> ( i128 , bool ) {
122
- ( rust_i128_shr ( a, b as _ ) , b >= 128 )
123
- }
124
- #[ cfg_attr( not( stage0) , lang = "u128_shr" ) ]
125
- pub fn rust_u128_shr ( a : u128 , b : u32 ) -> u128 {
126
- __lshrti3 ( a, b)
127
- }
128
- #[ cfg_attr( not( stage0) , lang = "u128_shro" ) ]
129
- pub fn rust_u128_shro ( a : u128 , b : u128 ) -> ( u128 , bool ) {
130
- ( rust_u128_shr ( a, b as _ ) , b >= 128 )
117
+ #[ lang = "i128_shr" ]
118
+ pub fn rust_i128_shr( a: i128 , b: u32 ) -> i128 {
119
+ __ashrti3( a, b)
120
+ }
121
+ #[ lang = "i128_shro" ]
122
+ pub fn rust_i128_shro( a: i128 , b: u128 ) -> ( i128 , bool ) {
123
+ ( rust_i128_shr( a, b as _) , b >= 128 )
124
+ }
125
+ #[ lang = "u128_shr" ]
126
+ pub fn rust_u128_shr( a: u128 , b: u32 ) -> u128 {
127
+ __lshrti3( a, b)
128
+ }
129
+ #[ lang = "u128_shro" ]
130
+ pub fn rust_u128_shro( a: u128 , b: u128 ) -> ( u128 , bool ) {
131
+ ( rust_u128_shr( a, b as _) , b >= 128 )
132
+ }
131
133
}
0 commit comments