From: Chris Duncan Date: Mon, 28 Sep 2026 15:14:15 +0000 (-0700) Subject: Eliminate dead code. X-Git-Url: https://git.codecow.com/?a=commitdiff_plain;h=e34bd35298f6c5ea795ca68db9c970f51d556ce3;p=nano25519.git Eliminate dead code. --- diff --git a/src/assembly/ed25519/fe.ts b/src/assembly/ed25519/fe.ts index 89b2092..82765b7 100644 --- a/src/assembly/ed25519/fe.ts +++ b/src/assembly/ed25519/fe.ts @@ -73,22 +73,6 @@ export function fe_add (h: FieldElement, f: FieldElement, g: FieldElement): void v128.store_lane(h_ptr, v128.add(v128.load(f_ptr, 32), v128.load(g_ptr, 32)), 0, 32) } -/** - * Conditionally copy values from one FieldElement to another. - * - * @param {usize} f FieldElement destination - * @param {usize} g FieldElement source - * @param {u64} b Copy `g` into `f` if 1, copy `f` into `f` if 0 - */ -//@ts-expect-error -@inline -export function fe_memcmov (f: usize, g: usize, b: u64): void { - const c = v128.splat(0 - b) - v128.store(f, v128.bitselect(v128.load(g), v128.load(f, 0), c)) - v128.store(f, v128.bitselect(v128.load(g, 16), v128.load(f, 16), c), 16) - v128.store_lane(f, v128.bitselect(v128.load(g, 32), v128.load(f, 32), c), 0, 32) -} - /** * Conditionally copy values from one FieldElement to another. * @@ -99,19 +83,12 @@ export function fe_memcmov (f: usize, g: usize, b: u64): void { //@ts-expect-error @inline export function fe_cmov (f: FieldElement, g: FieldElement, b: u64): void { - fe_memcmov(changetype(f), changetype(g), b) -} - -/** - * Copy values from one FieldElement to another. - * - * @param {usize} h pointer to FieldElement destination - * @param {usize} f pointer to FieldElement source - */ -//@ts-expect-error -@inline -export function fe_memcopy (h: usize, f: usize): void { - memory.copy(h, f, 40) + const f_ptr = changetype(f) + const g_ptr = changetype(g) + const c = v128.splat(0 - b) + v128.store(f_ptr, v128.bitselect(v128.load(g_ptr), v128.load(f_ptr, 0), c)) + v128.store(f_ptr, v128.bitselect(v128.load(g_ptr, 16), v128.load(f_ptr, 16), c), 16) + v128.store_lane(f_ptr, v128.bitselect(v128.load(g_ptr, 32), v128.load(f_ptr, 32), c), 0, 32) } /** @@ -126,35 +103,6 @@ export function fe_copy (h: FieldElement, f: FieldElement): void { memory.copy(changetype(h), changetype(f), 40) } -/** - * Conditionally swap values between two FieldElements. - * - * @param f FieldElement destination - * @param g FieldElement source - * @param b Copy `f` into `g` and `g` into `f` if 1, else copy self if 0 - */ -//@ts-expect-error -@inline -export function fe_cswap (f: FieldElement, g: FieldElement, b: u64): void { - const f_ptr = changetype(f) - const g_ptr = changetype(g) - const c = v128.splat(0 - b) - - const f03 = v128.load(f_ptr) - const g03 = v128.load(g_ptr) - const f47 = v128.load(f_ptr, 16) - const g47 = v128.load(g_ptr, 16) - const f89 = v128.load(f_ptr, 32) - const g89 = v128.load(g_ptr, 32) - - v128.store(f_ptr, v128.bitselect(g03, f03, c)) - v128.store(g_ptr, v128.bitselect(f03, g03, c)) - v128.store(f_ptr, v128.bitselect(g47, f47, c), 16) - v128.store(g_ptr, v128.bitselect(f47, g47, c), 16) - v128.store_lane(f_ptr, v128.bitselect(g89, f89, c), 0, 32) - v128.store_lane(g_ptr, v128.bitselect(f89, g89, c), 0, 32) -} - /** * Add a FieldElement to itself and store the sum. *