From: Cherry Zhang Date: Fri, 30 Oct 2020 21:16:51 +0000 (-0400) Subject: runtime: add a comment about thread pointer alignment on darwin/arm64 X-Git-Tag: go1.16beta1~375 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=fd56942fe3725feaa53bed67daf7412742e4f2ab;p=gostls13.git runtime: add a comment about thread pointer alignment on darwin/arm64 Address a review comment in CL 266373. Change-Id: Ic21bd5c4f87fd0c7dc594155a10fe23602698187 Reviewed-on: https://go-review.googlesource.com/c/go/+/266777 Trust: Cherry Zhang Reviewed-by: Austin Clements --- diff --git a/src/runtime/race_arm64.s b/src/runtime/race_arm64.s index 59373a9f3f..5b1a1cb89a 100644 --- a/src/runtime/race_arm64.s +++ b/src/runtime/race_arm64.s @@ -25,12 +25,15 @@ // The race ctx, ThreadState *thr below, is passed in R0 and loaded in racecalladdr. +// Darwin may return unaligned thread pointer. Align it. (See tls_arm64.s) +// No-op on other OSes. #ifdef TLS_darwin #define TP_ALIGN AND $~7, R0 #else #define TP_ALIGN #endif +// Load g from TLS. (See tls_arm64.s) #define load_g \ MRS_TPIDR_R0 \ TP_ALIGN \