Skip to content

Improve i386 SHA1Transform further.

Rika requested to merge runewalsh/source:sha1i386 into main

In sha1i386.inc,

  1. (Joke part.) Use MOVBEs under {$ifdef}s, so if the user suddenly wants to recompile packages with -CpCOREAVX2, he might get better performance on CPUs where MOVBE is one µop (other CPUs supposedly translate it to the same µops as MOV + BSWAP).

  2. (Non-joke part; though still gives nothing on my side.) Save 15 instructions (14 reads + 1 write). Rounds 0–15 and 40–59 use registers to the full extent, but rounds 17–39 and 60–79 have a spare edx that can pass a Data cell calculated on round X to its next use on round X + 3.

Edited by Rika

Merge request reports