]> git.codecow.com Git - nano25519.git/commitdiff
Loop over cmov to simplify for upcoming base accessor pattern change.
authorChris Duncan <chris@codecow.com>
Fri, 21 Aug 2026 18:27:19 +0000 (11:27 -0700)
committerChris Duncan <chris@codecow.com>
Fri, 21 Aug 2026 18:27:19 +0000 (11:27 -0700)
src/assembly/ge.ts

index 5b226562d58f974c9f48f4ce370cbb2656713137..f60e893fd39d54fb408d93f60acc16d2aca2e6fe 100644 (file)
@@ -41,14 +41,9 @@ function ge_cmov8_base (t: ge_precomp, pos: i32, b: i8): void {
        const precomp = base(pos)
 
        ge_precomp_0(t)
-       ge_cmov(t, precomp[0], equal(babs, 1))
-       ge_cmov(t, precomp[1], equal(babs, 2))
-       ge_cmov(t, precomp[2], equal(babs, 3))
-       ge_cmov(t, precomp[3], equal(babs, 4))
-       ge_cmov(t, precomp[4], equal(babs, 5))
-       ge_cmov(t, precomp[5], equal(babs, 6))
-       ge_cmov(t, precomp[6], equal(babs, 7))
-       ge_cmov(t, precomp[7], equal(babs, 8))
+       for (let i: i8 = 0; i < 8; i++) {
+               ge_cmov(t, precomp[i], equal(babs, i + 1))
+       }
 
        fe_copy(minust.yplusx, t.yminusx)
        fe_copy(minust.yminusx, t.yplusx)