Skip to content

Commit

Permalink
Merge remote-tracking branch 'go/release-branch.go1.23' into update-g…
Browse files Browse the repository at this point in the history
…o1.23.6
  • Loading branch information
awly committed Feb 11, 2025
2 parents 7426231 + a991f9c commit 65c3f5f
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 5 deletions.
4 changes: 2 additions & 2 deletions VERSION
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
go1.23.5
time 2025-01-10T16:44:59Z
go1.23.6
time 2025-01-31T18:38:03Z
20 changes: 17 additions & 3 deletions src/crypto/internal/nistec/p256_asm_ppc64le.s
Original file line number Diff line number Diff line change
Expand Up @@ -126,14 +126,23 @@ GLOBL p256mul<>(SB), 8, $160
#define PH V31

#define CAR1 V6

#define SEL V8
#define ZER V9

// func p256NegCond(val *p256Point, cond int)
TEXT ·p256NegCond(SB), NOSPLIT, $0-16
MOVD val+0(FP), P1ptr
MOVD $16, R16

MOVD cond+8(FP), R6
CMP $0, R6
BC 12, 2, LR // just return if cond == 0
// Copy cond into SEL (cond is R1 + 8 (cond offset) + 32)
MOVD $40, R17
LXVDSX (R1)(R17), SEL
// Zeroize ZER
VSPLTISB $0, ZER
// SEL controls whether to return the original value (Y1H/Y1L)
// or the negated value (T1H/T1L).
VCMPEQUD SEL, ZER, SEL

MOVD $p256mul<>+0x00(SB), CPOOL

Expand All @@ -150,6 +159,9 @@ TEXT ·p256NegCond(SB), NOSPLIT, $0-16
VSUBUQM PL, Y1L, T1L // subtract part2 giving result
VSUBEUQM PH, Y1H, CAR1, T1H // subtract part1 using carry from part2

VSEL T1H, Y1H, SEL, T1H
VSEL T1L, Y1L, SEL, T1L

XXPERMDI T1H, T1H, $2, T1H
XXPERMDI T1L, T1L, $2, T1L

Expand All @@ -166,6 +178,8 @@ TEXT ·p256NegCond(SB), NOSPLIT, $0-16
#undef PL
#undef PH
#undef CAR1
#undef SEL
#undef ZER

#define P3ptr R3
#define P1ptr R4
Expand Down

0 comments on commit 65c3f5f

Please sign in to comment.