]> Cypherpunks repositories - gostls13.git/commit
runtime/internal/atomic: don't use Cas in atomic.Load on ARM
authorYuval Pavel Zholkover <paulzhol@gmail.com>
Thu, 15 Feb 2018 10:21:48 +0000 (12:21 +0200)
committerCherry Zhang <cherryyz@google.com>
Wed, 18 Apr 2018 15:34:14 +0000 (15:34 +0000)
commit0a4b962c17a9584a177c06b3c0c3119f250bbbaa
tree6fcccbef2c9a7e50ab0d1ab70ba9f865849f55c1
parent96f6cc15949c27df4fe5df3c5ac9952f37543333
runtime/internal/atomic: don't use Cas in atomic.Load on ARM

Instead issue a memory barrier on ARMv7 after reading the address.

Fixes #23777

Change-Id: I7aff2ab0246af64b437ebe0b31d4b30d351890d8
Reviewed-on: https://go-review.googlesource.com/94275
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Reviewed-by: Cherry Zhang <cherryyz@google.com>
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
12 files changed:
src/runtime/internal/atomic/asm_arm.s
src/runtime/internal/atomic/atomic_arm.go
src/runtime/internal/atomic/sys_linux_arm.s
src/runtime/internal/atomic/sys_nonlinux_arm.s
src/sync/atomic/asm_arm.s
src/sync/atomic/asm_darwin_arm.s
src/sync/atomic/asm_freebsd_arm.s
src/sync/atomic/asm_linux_arm.s
src/sync/atomic/asm_nacl_arm.s
src/sync/atomic/asm_netbsd_arm.s
src/sync/atomic/asm_openbsd_arm.s
src/sync/atomic/asm_plan9_arm.s