On 10/25/26 8:21 PM, Sam Price wrote:
Two week soft poke.

The 64 bit signed integer modulus is currently broken in gcc.  I see two possible ways to fix this. - Fixing the assembly version.  I tracked the algorithm back to Koren's text book "Computer Arithmetic Algorithms" section 3.2, and added defines rather than registers to make it a bit easier to read. - Applying the patch that's similar to the version Xilinx/AMD has been using. They reverted the assembly version, and use the stock version other bsps use.

The assembly version is a lot smaller, and uses 20-30% less instructions than the base version. Both of the provided patches were tested with the gcc torture tests.  Showing stock version broken, and the patches fixing signed 64 bit integer modulus.
Michael Eager usually chimes in on microblaze stuff.  Essentially waiting on his input.
jeff

Reply via email to