aboutsummaryrefslogtreecommitdiff
path: root/argon2/blamka_amd64.s
diff options
context:
space:
mode:
authorEgon Elbre <egonelbre@gmail.com>2021-07-01 18:56:44 +0300
committerGopher Robot <gobot@golang.org>2023-11-27 17:24:02 +0000
commitbda2f3f5cfce3f27039acccd823693f6d67c2a74 (patch)
tree884e7e0cd674a3af4a7bb051a972de8b9306b245 /argon2/blamka_amd64.s
parent325b735346247f48971d2b37d24dd180a35f391f (diff)
downloadgo-x-crypto-bda2f3f5cfce3f27039acccd823693f6d67c2a74.tar.xz
argon2: avoid clobbering BP
go vet was reporting blamka_amd64.s:203:1: [amd64] mixBlocksSSE2: invalid offset a+24(FP); expected a+8(FP) blamka_amd64.s:226:1: [amd64] xorBlocksSSE2: invalid offset a+24(FP); expected a+8(FP) blamka_amd64.s:204:1: frame pointer is clobbered before saving blamka_amd64.s:227:1: frame pointer is clobbered before saving Also fix a similar naming issue in sha3: sha3\keccakf_amd64.s:325:1: [amd64] keccakF1600: unknown variable state; offset 0 is a+0(FP) Updates golang/go#47027 Change-Id: Ia74852cdb0721ae0216787054197b0cac9e1c0f8 Reviewed-on: https://go-review.googlesource.com/c/crypto/+/332289 Reviewed-by: Michael Knyszek <mknyszek@google.com> Reviewed-by: Nicola Murino <nicola.murino@gmail.com> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: Dmitri Shuralyov <dmitshur@golang.org> Reviewed-by: Filippo Valsorda <filippo@golang.org>
Diffstat (limited to 'argon2/blamka_amd64.s')
-rw-r--r--argon2/blamka_amd64.s12
1 files changed, 6 insertions, 6 deletions
diff --git a/argon2/blamka_amd64.s b/argon2/blamka_amd64.s
index f3b653a..6713acc 100644
--- a/argon2/blamka_amd64.s
+++ b/argon2/blamka_amd64.s
@@ -199,8 +199,8 @@ TEXT ·mixBlocksSSE2(SB), 4, $0-32
MOVQ out+0(FP), DX
MOVQ a+8(FP), AX
MOVQ b+16(FP), BX
- MOVQ a+24(FP), CX
- MOVQ $128, BP
+ MOVQ c+24(FP), CX
+ MOVQ $128, DI
loop:
MOVOU 0(AX), X0
@@ -213,7 +213,7 @@ loop:
ADDQ $16, BX
ADDQ $16, CX
ADDQ $16, DX
- SUBQ $2, BP
+ SUBQ $2, DI
JA loop
RET
@@ -222,8 +222,8 @@ TEXT ·xorBlocksSSE2(SB), 4, $0-32
MOVQ out+0(FP), DX
MOVQ a+8(FP), AX
MOVQ b+16(FP), BX
- MOVQ a+24(FP), CX
- MOVQ $128, BP
+ MOVQ c+24(FP), CX
+ MOVQ $128, DI
loop:
MOVOU 0(AX), X0
@@ -238,6 +238,6 @@ loop:
ADDQ $16, BX
ADDQ $16, CX
ADDQ $16, DX
- SUBQ $2, BP
+ SUBQ $2, DI
JA loop
RET