@@ -5,8 +5,6 @@ use stdarch_test::assert_instr;
5
5
unsafe extern "unadjusted" {
6
6
#[ link_name = "llvm.x86.addcarry.64" ]
7
7
fn llvm_addcarry_u64 ( a : u8 , b : u64 , c : u64 ) -> ( u8 , u64 ) ;
8
- #[ link_name = "llvm.x86.addcarryx.u64" ]
9
- fn llvm_addcarryx_u64 ( a : u8 , b : u64 , c : u64 , d : * mut u64 ) -> u8 ;
10
8
#[ link_name = "llvm.x86.subborrow.64" ]
11
9
fn llvm_subborrow_u64 ( a : u8 , b : u64 , c : u64 ) -> ( u8 , u64 ) ;
12
10
}
@@ -35,7 +33,7 @@ pub unsafe fn _addcarry_u64(c_in: u8, a: u64, b: u64, out: &mut u64) -> u8 {
35
33
#[ cfg_attr( test, assert_instr( adc) ) ]
36
34
#[ stable( feature = "simd_x86_adx" , since = "1.33.0" ) ]
37
35
pub unsafe fn _addcarryx_u64 ( c_in : u8 , a : u64 , b : u64 , out : & mut u64 ) -> u8 {
38
- llvm_addcarryx_u64 ( c_in, a, b, out as * mut _ )
36
+ _addcarry_u64 ( c_in, a, b, out)
39
37
}
40
38
41
39
/// Adds unsigned 64-bit integers `a` and `b` with unsigned 8-bit carry-in `c_in`.
@@ -95,27 +93,27 @@ mod tests {
95
93
let a = u64:: MAX ;
96
94
let mut out = 0 ;
97
95
98
- let r = _addcarry_u64 ( 0 , a, 1 , & mut out) ;
96
+ let r = _addcarryx_u64 ( 0 , a, 1 , & mut out) ;
99
97
assert_eq ! ( r, 1 ) ;
100
98
assert_eq ! ( out, 0 ) ;
101
99
102
- let r = _addcarry_u64 ( 0 , a, 0 , & mut out) ;
100
+ let r = _addcarryx_u64 ( 0 , a, 0 , & mut out) ;
103
101
assert_eq ! ( r, 0 ) ;
104
102
assert_eq ! ( out, a) ;
105
103
106
- let r = _addcarry_u64 ( 1 , a, 1 , & mut out) ;
104
+ let r = _addcarryx_u64 ( 1 , a, 1 , & mut out) ;
107
105
assert_eq ! ( r, 1 ) ;
108
106
assert_eq ! ( out, 1 ) ;
109
107
110
- let r = _addcarry_u64 ( 1 , a, 0 , & mut out) ;
108
+ let r = _addcarryx_u64 ( 1 , a, 0 , & mut out) ;
111
109
assert_eq ! ( r, 1 ) ;
112
110
assert_eq ! ( out, 0 ) ;
113
111
114
- let r = _addcarry_u64 ( 0 , 3 , 4 , & mut out) ;
112
+ let r = _addcarryx_u64 ( 0 , 3 , 4 , & mut out) ;
115
113
assert_eq ! ( r, 0 ) ;
116
114
assert_eq ! ( out, 7 ) ;
117
115
118
- let r = _addcarry_u64 ( 1 , 3 , 4 , & mut out) ;
116
+ let r = _addcarryx_u64 ( 1 , 3 , 4 , & mut out) ;
119
117
assert_eq ! ( r, 0 ) ;
120
118
assert_eq ! ( out, 8 ) ;
121
119
}
0 commit comments