race.mx raw
1 // Copyright 2015 The Go Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style
3 // license that can be found in the LICENSE file.
4
5 //go:build race
6
7 package race
8
9 import (
10 "internal/abi"
11 "unsafe"
12 )
13
14 const Enabled = true
15
16 // Functions below pushed from runtime.
17
18 //go:linkname Acquire
19 func Acquire(addr unsafe.Pointer)
20
21 //go:linkname Release
22 func Release(addr unsafe.Pointer)
23
24 //go:linkname ReleaseMerge
25 func ReleaseMerge(addr unsafe.Pointer)
26
27 //go:linkname Disable
28 func Disable()
29
30 //go:linkname Enable
31 func Enable()
32
33 //go:linkname Read
34 func Read(addr unsafe.Pointer)
35
36 //go:linkname ReadPC
37 func ReadPC(addr unsafe.Pointer, callerpc, pc uintptr)
38
39 //go:linkname ReadObjectPC
40 func ReadObjectPC(t *abi.Type, addr unsafe.Pointer, callerpc, pc uintptr)
41
42 //go:linkname Write
43 func Write(addr unsafe.Pointer)
44
45 //go:linkname WritePC
46 func WritePC(addr unsafe.Pointer, callerpc, pc uintptr)
47
48 //go:linkname WriteObjectPC
49 func WriteObjectPC(t *abi.Type, addr unsafe.Pointer, callerpc, pc uintptr)
50
51 //go:linkname ReadRange
52 func ReadRange(addr unsafe.Pointer, len int)
53
54 //go:linkname WriteRange
55 func WriteRange(addr unsafe.Pointer, len int)
56
57 //go:linkname Errors
58 func Errors() int
59