// Find the byte-reordering table.
ldgot ecx
- movdqa xmm7, [INTADDR(endswap_tab, ecx)]
+ movdqa xmm5, [INTADDR(endswap_tab, ecx)]
// Calculate the number of subkey words again. (It's a good job
// we've got a fast multiplier.)
.align 16
endswap_block:
// End-swap ECX words starting at ESI. The end-swapping table is
- // already loaded into XMM7; and it's OK to work in 16-byte chunks.
+ // already loaded into XMM5; and it's OK to work in 16-byte chunks.
movdqu xmm1, [esi]
- pshufb xmm1, xmm7
+ pshufb xmm1, xmm5
movdqu [esi], xmm1
add esi, 16
sub ecx, 4
// Find the magic endianness-swapping table.
ldgot ecx
- movdqa xmm7, [INTADDR(endswap_tab, ecx)]
+ movdqa xmm5, [INTADDR(endswap_tab, ecx)]
// Load the input block and end-swap it. Also, start loading the
// keys.
mov eax, [esp + 8]
movdqu xmm0, [eax]
- pshufb xmm0, xmm7
+ pshufb xmm0, xmm5
mov eax, [esp + 4]
lea edx, [eax + w]
mov eax, [eax + nr]
aesenclast xmm0, xmm1
// Unpermute the ciphertext block and store it.
- pshufb xmm0, xmm7
+ pshufb xmm0, xmm5
mov eax, [esp + 12]
movdqu [eax], xmm0
// Find the magic endianness-swapping table.
ldgot ecx
- movdqa xmm7, [INTADDR(endswap_tab, ecx)]
+ movdqa xmm5, [INTADDR(endswap_tab, ecx)]
// Load the input block and end-swap it. Also, start loading the
// keys.
mov eax, [esp + 8]
movdqu xmm0, [eax]
- pshufb xmm0, xmm7
+ pshufb xmm0, xmm5
mov eax, [esp + 4]
lea edx, [eax + wi]
mov eax, [eax + nr]
aesdeclast xmm0, xmm1
// Unpermute the ciphertext block and store it.
- pshufb xmm0, xmm7
+ pshufb xmm0, xmm5
mov eax, [esp + 12]
movdqu [eax], xmm0