diff options
author | gVisor bot <gvisor-bot@google.com> | 2020-03-30 19:43:21 +0000 |
---|---|---|
committer | gVisor bot <gvisor-bot@google.com> | 2020-03-30 19:43:21 +0000 |
commit | f3107d487ab9b08a38cd690633d9f5e717d41e69 (patch) | |
tree | 05d0ae54a7e280f6964260dbdbb7446a96095db1 /pkg/atomicbitops/atomicbitops_noasm.go | |
parent | a940cfd7d37682bcd3c34edbd24fb22f2e4d24f6 (diff) | |
parent | 3fac85da951f9f56d0232718ea7584250cf11f31 (diff) |
Merge release-20200219.0-259-g3fac85d (automated)
Diffstat (limited to 'pkg/atomicbitops/atomicbitops_noasm.go')
-rwxr-xr-x | pkg/atomicbitops/atomicbitops_noasm.go | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/pkg/atomicbitops/atomicbitops_noasm.go b/pkg/atomicbitops/atomicbitops_noasm.go index 3b2898256..4e9c27b98 100755 --- a/pkg/atomicbitops/atomicbitops_noasm.go +++ b/pkg/atomicbitops/atomicbitops_noasm.go @@ -20,6 +20,7 @@ import ( "sync/atomic" ) +//go:nosplit func AndUint32(addr *uint32, val uint32) { for { o := atomic.LoadUint32(addr) @@ -30,6 +31,7 @@ func AndUint32(addr *uint32, val uint32) { } } +//go:nosplit func OrUint32(addr *uint32, val uint32) { for { o := atomic.LoadUint32(addr) @@ -40,6 +42,7 @@ func OrUint32(addr *uint32, val uint32) { } } +//go:nosplit func XorUint32(addr *uint32, val uint32) { for { o := atomic.LoadUint32(addr) @@ -50,6 +53,7 @@ func XorUint32(addr *uint32, val uint32) { } } +//go:nosplit func CompareAndSwapUint32(addr *uint32, old, new uint32) (prev uint32) { for { prev = atomic.LoadUint32(addr) @@ -62,6 +66,7 @@ func CompareAndSwapUint32(addr *uint32, old, new uint32) (prev uint32) { } } +//go:nosplit func AndUint64(addr *uint64, val uint64) { for { o := atomic.LoadUint64(addr) @@ -72,6 +77,7 @@ func AndUint64(addr *uint64, val uint64) { } } +//go:nosplit func OrUint64(addr *uint64, val uint64) { for { o := atomic.LoadUint64(addr) @@ -82,6 +88,7 @@ func OrUint64(addr *uint64, val uint64) { } } +//go:nosplit func XorUint64(addr *uint64, val uint64) { for { o := atomic.LoadUint64(addr) @@ -92,6 +99,7 @@ func XorUint64(addr *uint64, val uint64) { } } +//go:nosplit func CompareAndSwapUint64(addr *uint64, old, new uint64) (prev uint64) { for { prev = atomic.LoadUint64(addr) |