Skip to content

Conversation

@negativeExponent
Copy link
Contributor

No description provided.

Changed from logical OR (||) to bitwise OR (|) for checking if the 64-bit multiply result is zero. While both operators produce the same final boolean result when both operands are zero or non-zero, the bitwise OR is the correct operation for combining register values to check if the complete 64-bit result (high 32 bits | low 32 bits) equals zero.

Applies to long multiply instructions: UMULLS, UMLALS, SMULLS, SMLALS
This change replaces the runtime initialization with a precomputed constexpr table
of 256 entries, providing the same values at compile time.
@negativeExponent negativeExponent changed the title Arm fix Arm fixes Dec 12, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant