mirror of
https://github.com/golang/go
synced 2024-11-18 03:54:50 -07:00
644c16c76c
It should alias to Xchg instead of Swap. Found when testing #16985. Change-Id: If9fd734a1f89b8b2656f421eb31b9d1b0d95a49f Reviewed-on: https://go-review.googlesource.com/28512 Run-TryBot: Cherry Zhang <cherryyz@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Keith Randall <khr@golang.org>
20 lines
696 B
Go
20 lines
696 B
Go
// +build amd64
|
|
|
|
// Copyright 2016 The Go Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style
|
|
// license that can be found in the LICENSE file.
|
|
|
|
package main
|
|
|
|
import "sync/atomic"
|
|
|
|
var x uint32
|
|
|
|
func atomics() {
|
|
_ = atomic.LoadUint32(&x) // ERROR "intrinsic substitution for LoadUint32"
|
|
atomic.StoreUint32(&x, 1) // ERROR "intrinsic substitution for StoreUint32"
|
|
atomic.AddUint32(&x, 1) // ERROR "intrinsic substitution for AddUint32"
|
|
atomic.SwapUint32(&x, 1) // ERROR "intrinsic substitution for SwapUint32"
|
|
atomic.CompareAndSwapUint32(&x, 1, 2) // ERROR "intrinsic substitution for CompareAndSwapUint32"
|
|
}
|