summaryrefslogtreecommitdiffstats
path: root/vendor/modernc.org/libc/sync.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/modernc.org/libc/sync.go')
-rw-r--r--vendor/modernc.org/libc/sync.go17
1 files changed, 17 insertions, 0 deletions
diff --git a/vendor/modernc.org/libc/sync.go b/vendor/modernc.org/libc/sync.go
new file mode 100644
index 00000000..f4f91f6c
--- /dev/null
+++ b/vendor/modernc.org/libc/sync.go
@@ -0,0 +1,17 @@
+// Copyright 2021 The Libc 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 libc // import "modernc.org/libc"
+
+import (
+ "sync/atomic"
+)
+
+var __sync_synchronize_dummy int32
+
+// __sync_synchronize();
+func X__sync_synchronize(t *TLS) {
+ // Attempt to implement a full memory barrier without assembler.
+ atomic.StoreInt32(&__sync_synchronize_dummy, atomic.LoadInt32(&__sync_synchronize_dummy)+1)
+}