Commit 99740b4f authored by Martin Storsjö's avatar Martin Storsjö Committed by Niels Möller

salsa20: Don't return via W64_EXIT within the Lpartial subfunction

The Lpartial subfunction is entered with plain call instructions,
and the win64 epilogue should only run when actually exiting the
whole salsa20_crypt function.
parent 05964538
2013-04-23 Niels Möller <nisse@lysator.liu.se>
From Martin Storsjö:
* x86_64/salsa20-crypt.asm (Lpartial): Don't return via W64_EXIT
within this subfunction.
* x86_64/machine.m4 (W64_ENTRY): Use movdqu instead of movdqa for
saving xmm registers, since the stack is not guaranteed to be
16-byte aligned on win64.
......
......@@ -224,10 +224,11 @@ PROLOGUE(nettle_salsa20_crypt)
shr $16, XREG(T64)
.Llt2:
test $1, LENGTH
jz .Lend
jz .Lret
xor (SRC, POS), LREG(T64)
mov LREG(T64), (DST, POS)
jmp .Lend
.Lret:
ret
EPILOGUE(nettle_salsa20_crypt)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment