Remove unnecessary unsafes
This commit is contained in:
parent
43caccc8b7
commit
063b4b5dc7
1 changed files with 8 additions and 8 deletions
|
@ -69,7 +69,7 @@ static mut f: [uint64_t; 6] = [
|
|||
1_i32 as uint64_t,
|
||||
];
|
||||
|
||||
unsafe fn residue_add(x: uint64_t, y: uint64_t) -> uint64_t {
|
||||
fn residue_add(x: uint64_t, y: uint64_t) -> uint64_t {
|
||||
let mut z: uint64_t = x.wrapping_add(y);
|
||||
if z >= 0x16a6b036d7f2a79_u64 {
|
||||
z = z.wrapping_sub(0x16a6b036d7f2a79_u64) as uint64_t as uint64_t;
|
||||
|
@ -77,7 +77,7 @@ unsafe fn residue_add(x: uint64_t, y: uint64_t) -> uint64_t {
|
|||
z
|
||||
}
|
||||
|
||||
unsafe fn residue_sub(x: uint64_t, y: uint64_t) -> uint64_t {
|
||||
fn residue_sub(x: uint64_t, y: uint64_t) -> uint64_t {
|
||||
let mut z: uint64_t = x.wrapping_sub(y);
|
||||
if x < y {
|
||||
z = z.wrapping_add(0x16a6b036d7f2a79_u64) as uint64_t as uint64_t;
|
||||
|
@ -112,14 +112,14 @@ fn ui128_quotient_mod(lo: u64, hi: u64) -> u64 {
|
|||
prod3lo >> 42_i32 | prod3hi << 22_i32
|
||||
}
|
||||
|
||||
unsafe fn residue_mul(x: uint64_t, y: uint64_t) -> uint64_t {
|
||||
fn residue_mul(x: uint64_t, y: uint64_t) -> uint64_t {
|
||||
let mut hi: uint64_t = 0;
|
||||
let lo: uint64_t = umul128(x, y, &mut hi);
|
||||
let quotient: uint64_t = ui128_quotient_mod(lo, hi);
|
||||
lo.wrapping_sub(quotient.wrapping_mul(0x16a6b036d7f2a79_u64)) as uint64_t
|
||||
}
|
||||
|
||||
unsafe fn residue_pow(x: uint64_t, mut y: uint64_t) -> uint64_t {
|
||||
fn residue_pow(x: uint64_t, mut y: uint64_t) -> uint64_t {
|
||||
if y == 0_i32 as u64 {
|
||||
return 1_i32 as uint64_t;
|
||||
}
|
||||
|
@ -142,7 +142,7 @@ unsafe fn residue_pow(x: uint64_t, mut y: uint64_t) -> uint64_t {
|
|||
res
|
||||
}
|
||||
|
||||
unsafe fn inverse(mut u: uint64_t, mut v: uint64_t) -> uint64_t {
|
||||
fn inverse(mut u: uint64_t, mut v: uint64_t) -> uint64_t {
|
||||
let mut tmp;
|
||||
let mut xu: int64_t = 1_i32 as int64_t;
|
||||
let mut xv: int64_t = 0_i32 as int64_t;
|
||||
|
@ -162,11 +162,11 @@ unsafe fn inverse(mut u: uint64_t, mut v: uint64_t) -> uint64_t {
|
|||
xu as uint64_t
|
||||
}
|
||||
|
||||
unsafe fn residue_inv(x: uint64_t) -> uint64_t {
|
||||
fn residue_inv(x: uint64_t) -> uint64_t {
|
||||
inverse(x, 0x16a6b036d7f2a79_u64 as uint64_t)
|
||||
}
|
||||
|
||||
unsafe fn residue_sqrt(what: uint64_t) -> uint64_t {
|
||||
fn residue_sqrt(what: uint64_t) -> uint64_t {
|
||||
if what == 0 {
|
||||
return 0_i32 as uint64_t;
|
||||
}
|
||||
|
@ -794,7 +794,7 @@ unsafe fn divisor_mul128(
|
|||
}
|
||||
}
|
||||
|
||||
unsafe fn rol(x: u32, shift: i32) -> u32 {
|
||||
fn rol(x: u32, shift: i32) -> u32 {
|
||||
x << shift | x >> (32_i32 - shift)
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue