@@ -61,42 +61,52 @@ impl Divmod for i64 {}
61
61
intrinsics ! {
62
62
#[ maybe_use_optimized_c_shim]
63
63
#[ arm_aeabi_alias = __aeabi_idiv]
64
+ /// Returns `n / d`
64
65
pub extern "C" fn __divsi3( a: i32 , b: i32 ) -> i32 {
65
66
a. div( b)
66
67
}
67
68
68
69
#[ maybe_use_optimized_c_shim]
69
- pub extern "C" fn __divdi3( a: i64 , b: i64 ) -> i64 {
70
- a. div( b)
70
+ /// Returns `n % d`
71
+ pub extern "C" fn __modsi3( a: i32 , b: i32 ) -> i32 {
72
+ a. mod_( b)
71
73
}
72
-
73
- #[ win64_128bit_abi_hack]
74
- pub extern "C" fn __divti3( a: i128 , b: i128 ) -> i128 {
75
- a. div( b)
74
+
75
+ #[ maybe_use_optimized_c_shim]
76
+ /// Returns `n / d` and sets `*rem = n % d`
77
+ pub extern "C" fn __divmodsi4( a: i32 , b: i32 , rem: & mut i32 ) -> i32 {
78
+ a. divmod( b, rem, |a, b| __divsi3( a, b) )
76
79
}
77
80
78
81
#[ maybe_use_optimized_c_shim]
79
- pub extern "C" fn __modsi3( a: i32 , b: i32 ) -> i32 {
80
- a. mod_( b)
82
+ /// Returns `n / d`
83
+ pub extern "C" fn __divdi3( a: i64 , b: i64 ) -> i64 {
84
+ a. div( b)
81
85
}
82
86
83
87
#[ maybe_use_optimized_c_shim]
88
+ /// Returns `n % d`
84
89
pub extern "C" fn __moddi3( a: i64 , b: i64 ) -> i64 {
85
90
a. mod_( b)
86
91
}
87
92
88
- #[ win64_128bit_abi_hack]
89
- pub extern "C" fn __modti3( a: i128 , b: i128 ) -> i128 {
90
- a. mod_( b)
93
+ #[ aapcs_on_arm]
94
+ /// Returns `n / d` and sets `*rem = n % d`
95
+ pub extern "C" fn __divmoddi4( a: i64 , b: i64 , rem: & mut i64 ) -> i64 {
96
+ a. divmod( b, rem, |a, b| __divdi3( a, b) )
91
97
}
92
98
93
- #[ maybe_use_optimized_c_shim]
94
- pub extern "C" fn __divmodsi4( a: i32 , b: i32 , rem: & mut i32 ) -> i32 {
95
- a. divmod( b, rem, |a, b| __divsi3( a, b) )
99
+ #[ win64_128bit_abi_hack]
100
+ /// Returns `n / d`
101
+ pub extern "C" fn __divti3( a: i128 , b: i128 ) -> i128 {
102
+ a. div( b)
96
103
}
97
104
98
- #[ aapcs_on_arm]
99
- pub extern "C" fn __divmoddi4( a: i64 , b: i64 , rem: & mut i64 ) -> i64 {
100
- a. divmod( b, rem, |a, b| __divdi3( a, b) )
105
+ #[ win64_128bit_abi_hack]
106
+ /// Returns `n % d`
107
+ pub extern "C" fn __modti3( a: i128 , b: i128 ) -> i128 {
108
+ a. mod_( b)
101
109
}
110
+
111
+ // there is no `__divmodti4`
102
112
}
0 commit comments