chiark / gitweb /
symm/rijndael-x86ish-aesni.S: Fix conflict in 32-bit register allocation.
authorMark Wooding <mdw@distorted.org.uk>
Thu, 11 Aug 2016 09:02:56 +0000 (10:02 +0100)
committerMark Wooding <mdw@distorted.org.uk>
Thu, 11 Aug 2016 09:02:56 +0000 (10:02 +0100)
commitc410f911b7a30fb364c2c599ea679245ccc3c708
tree172067ed393941142490c4c4c2a676972042a703
parenta13b573023a59dc1e2febef1142aa4b1d1af67b7
symm/rijndael-x86ish-aesni.S: Fix conflict in 32-bit register allocation.

Since 28321c9..., the context pointer in ECX was overwritten with the
GOT pointer, used to find the end-swapping table, resulting in an abort.
Reallocate so that the round count, which is loaded /after/ the endswap
pointer, ends up in ECX, and the context pointer goes in EAX, which
doesn't get clobbered.

This doesn't affect 64-bit targets.
symm/rijndael-x86ish-aesni.S