]> Cypherpunks repositories - gostls13.git/commit
crypto/subtle: add speculation barrier after DIT
authorRoland Shoemaker <roland@golang.org>
Thu, 4 Dec 2025 21:26:52 +0000 (13:26 -0800)
committerRoland Shoemaker <roland@golang.org>
Fri, 5 Dec 2025 18:22:34 +0000 (10:22 -0800)
commit2244bd7eeb17cb3d361908d3a441ecfc2c4a82b5
tree6442e9a749e929668196e85fc13b1f21e9db50d0
parentf84f8d86beb08631217e77d725a4b6528ed91dc2
crypto/subtle: add speculation barrier after DIT

When enabling DIT on ARM64, add speculation barrier instructions to
ensure that subsequent instructions are executed using the updated
DIT state.

See https://developer.apple.com/documentation/xcode/writing-arm64-code-for-apple-platforms#Enable-DIT-for-constant-time-cryptographic-operations
which recommends doing this. The Arm documentation for DIT doesn't tell
you to do this, but it seems prudent.

Change-Id: Idbc87b332650a77b8cb3509c11377bf5c724f3cf
Reviewed-on: https://go-review.googlesource.com/c/go/+/726980
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Cherry Mui <cherryyz@google.com>
src/internal/runtime/sys/dit_arm64.s