confid: Remove unsafe from divisor_add

This commit is contained in:
Alex Page 2023-06-28 18:32:09 -04:00
parent 4e25f1080e
commit c310018847

View file

@ -471,7 +471,7 @@ fn u2poly(src: &TDivisor, polyu: &mut [u64], polyv: &mut [u64]) -> i32 {
0_i32
}
unsafe fn divisor_add(src1: &TDivisor, src2: &TDivisor, dst: *mut TDivisor) {
fn divisor_add(src1: &TDivisor, src2: &TDivisor, dst: &mut TDivisor) {
let mut u1: [u64; 3] = [0; 3];
let mut u2: [u64; 3] = [0; 3];
let mut v1: [u64; 2] = [0; 2];
@ -605,32 +605,32 @@ unsafe fn divisor_add(src1: &TDivisor, src2: &TDivisor, dst: *mut TDivisor) {
vdeg = polynomial_div_monic(vdeg, &mut v, udeg, &u, None);
}
if udeg == 2_i32 {
(*dst).u[0_i32 as usize] = u[0_i32 as usize];
(*dst).u[1_i32 as usize] = u[1_i32 as usize];
(*dst).v[0_i32 as usize] = if vdeg >= 0_i32 {
dst.u[0_i32 as usize] = u[0_i32 as usize];
dst.u[1_i32 as usize] = u[1_i32 as usize];
dst.v[0_i32 as usize] = if vdeg >= 0_i32 {
v[0_i32 as usize]
} else {
0_i32 as u64
};
(*dst).v[1_i32 as usize] = if vdeg >= 1_i32 {
dst.v[1_i32 as usize] = if vdeg >= 1_i32 {
v[1_i32 as usize]
} else {
0_i32 as u64
};
} else if udeg == 1_i32 {
(*dst).u[0_i32 as usize] = u[0_i32 as usize];
(*dst).u[1_i32 as usize] = BAD;
(*dst).v[0_i32 as usize] = if vdeg >= 0_i32 {
dst.u[0_i32 as usize] = u[0_i32 as usize];
dst.u[1_i32 as usize] = BAD;
dst.v[0_i32 as usize] = if vdeg >= 0_i32 {
v[0_i32 as usize]
} else {
0_i32 as u64
};
(*dst).v[1_i32 as usize] = BAD;
dst.v[1_i32 as usize] = BAD;
} else {
(*dst).u[0_i32 as usize] = BAD;
(*dst).u[1_i32 as usize] = BAD;
(*dst).v[0_i32 as usize] = BAD;
(*dst).v[1_i32 as usize] = BAD;
dst.u[0_i32 as usize] = BAD;
dst.u[1_i32 as usize] = BAD;
dst.v[0_i32 as usize] = BAD;
dst.v[1_i32 as usize] = BAD;
};
}