diff options
author | 2025-02-14 16:54:10 +0000 | |
---|---|---|
committer | 2025-02-14 16:54:10 +0000 | |
commit | ebbdeee0bb91d5008a405e43114f1653ecdf8ce8 (patch) | |
tree | d9b1c087a34e6f5947d553f7cb04503b3c411e93 /vendor/modernc.org/libc/libc_musl_linux_386.go | |
parent | [bugfix] Drop status indices AFTER updating visibility (#3795) (diff) | |
download | gotosocial-ebbdeee0bb91d5008a405e43114f1653ecdf8ce8.tar.xz |
bump modernc.org/sqlite to v1.35.0-concurrency-workaround (#3797)
Diffstat (limited to 'vendor/modernc.org/libc/libc_musl_linux_386.go')
-rw-r--r-- | vendor/modernc.org/libc/libc_musl_linux_386.go | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/vendor/modernc.org/libc/libc_musl_linux_386.go b/vendor/modernc.org/libc/libc_musl_linux_386.go new file mode 100644 index 000000000..6bc843102 --- /dev/null +++ b/vendor/modernc.org/libc/libc_musl_linux_386.go @@ -0,0 +1,52 @@ +// Copyright 2023 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 ( + "math/bits" + "sync/atomic" + "unsafe" +) + +type long = int32 + +type ulong = uint32 + +// RawMem represents the biggest byte array the runtime can handle +type RawMem [1<<31 - 1]byte + +func a_crash() + +func _a_crash(tls *TLS) { + a_crash() +} + +func a_cas(p uintptr, t, s int32) int32 + +func _a_cas(tls *TLS, p uintptr, test, s int32) int32 { + return a_cas(p, test, s) +} + +func _a_store(tls *TLS, p uintptr, v int32) { + atomic.StoreInt32((*int32)(unsafe.Pointer(p)), v) +} + +func _a_clz_32(tls *TLS, x uint32) int32 { + return int32(bits.LeadingZeros32(x)) +} + +func _a_ctz_32(tls *TLS, x uint32) int32 { + return X__builtin_ctz(tls, x) +} + +func a_or(p uintptr, v int32) + +func _a_or(tls *TLS, p uintptr, v int32) { + a_or(p, v) +} + +func _a_swap(tls *TLS, p uintptr, v int32) int32 { + return atomic.SwapInt32((*int32)(unsafe.Pointer(p)), v) +} |