mirror of https://github.com/golang/go.git
In the s390x assembly implementation of NIST P-256 curve, utilize faster multiply/square instructions introduced in the z14. These new instructions are designed for crypto and are constant time. The algorithm is unchanged except for faster multiplication when run on a z14 or later. On z13, the original mutiplication (also constant time) is used. P-256 performance is critical in many applications, such as Blockchain. name old time new time delta BaseMultP256 24396 ns/op 21564 ns/op 1.13x ScalarMultP256 87546 ns/op 72813 ns/op. 1.20x Change-Id: I7e6d8b420fac56d5f9cc13c9423e2080df854bac Reviewed-on: https://go-review.googlesource.com/c/146022 Reviewed-by: Michael Munday <mike.munday@ibm.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Michael Munday <mike.munday@ibm.com> |
||
|---|---|---|
| .. | ||
| cpu.go | ||
| cpu_386.go | ||
| cpu_amd64.go | ||
| cpu_amd64p32.go | ||
| cpu_arm.go | ||
| cpu_arm64.go | ||
| cpu_mips.go | ||
| cpu_mips64.go | ||
| cpu_mips64le.go | ||
| cpu_mipsle.go | ||
| cpu_no_init.go | ||
| cpu_ppc64x.go | ||
| cpu_s390x.go | ||
| cpu_s390x.s | ||
| cpu_s390x_test.go | ||
| cpu_test.go | ||
| cpu_wasm.go | ||
| cpu_x86.go | ||
| cpu_x86.s | ||
| cpu_x86_test.go | ||
| export_test.go | ||