From d07fc5489756a4430c05ee2af62097b0bc5bb243 Mon Sep 17 00:00:00 2001 From: Chris Duncan Date: Sat, 15 Aug 2026 22:54:12 -0700 Subject: [PATCH] Fix similar issue with asc bit shift operand masking when checking canonicity. --- src/assembly/ge.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/assembly/ge.ts b/src/assembly/ge.ts index c82639f..c9e4c58 100644 --- a/src/assembly/ge.ts +++ b/src/assembly/ge.ts @@ -169,13 +169,13 @@ export function ge_has_small_order (p: ge_p3): i32 { * true if `s < p` */ export function ge_is_canonical (s: StaticArray): u8 { - let c: u8 = (s[31] & 0x7f) ^ 0x7f + let c: i32 = (s[31] & 0x7f) ^ 0x7f for (let i = 30; i > 0; i--) { c |= s[i] ^ 0xff } c = (c - 1) >> 8 - const d: u8 = (0xec - s[0]) >> 8 - return 1 - (c & d & 1) + const d: i32 = (0xec - s[0]) >> 8 + return u8(1 - (c & d & 1)) } const ge_scalarmult_base_e: StaticArray = new StaticArray(64) -- 2.52.0