cmd/internal/obj/x86: mark 2-instruction TLS access nonpreemptible
The 2-instruction TLS access sequence MOVQ TLS, BX MOVQ 0(BX)(TLS*1), BX is not async preemptible, as if it is preempted and resumed on a different thread, the TLS address may become invalid. May fix #35349. (This is a rare failure and I haven't been able to reproduce it.) Change-Id: Ie1a366fd0d7d73627dc62ee2de01c0aa09365f2b Reviewed-on: https://go-review.googlesource.com/c/go/+/206903 Run-TryBot: Cherry Zhang <cherryyz@google.com> Reviewed-by: Austin Clements <austin@google.com>
Showing
Please register or sign in to comment