1
0
mirror of https://github.com/golang/go synced 2024-11-20 10:44:41 -07:00
go/src/runtime/race0.go
Russ Cox 59e3e5354d [dev.cc] runtime: convert race implementation from C to Go
The conversion was done with an automated tool and then
modified only as necessary to make it compile and run.

[This CL is part of the removal of C code from package runtime.
See golang.org/s/dev.cc for an overview.]

LGTM=r
R=r
CC=austin, dvyukov, golang-codereviews, iant, khr
https://golang.org/cl/172250044
2014-11-11 17:08:14 -05:00

38 lines
2.2 KiB
Go

// Copyright 2014 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.
// +build !race
// Dummy race detection API, used when not built with -race.
package runtime
import (
"unsafe"
)
const raceenabled = false
// Because raceenabled is false, none of these functions should be called.
func raceReadObjectPC(t *_type, addr unsafe.Pointer, callerpc, pc uintptr) { gothrow("race") }
func raceWriteObjectPC(t *_type, addr unsafe.Pointer, callerpc, pc uintptr) { gothrow("race") }
func raceinit() uintptr { gothrow("race"); return 0 }
func racefini() { gothrow("race") }
func racemapshadow(addr unsafe.Pointer, size uintptr) { gothrow("race") }
func racewritepc(addr unsafe.Pointer, callerpc, pc uintptr) { gothrow("race") }
func racereadpc(addr unsafe.Pointer, callerpc, pc uintptr) { gothrow("race") }
func racereadrangepc(addr unsafe.Pointer, sz, callerpc, pc uintptr) { gothrow("race") }
func racewriterangepc(addr unsafe.Pointer, sz, callerpc, pc uintptr) { gothrow("race") }
func raceacquire(addr unsafe.Pointer) { gothrow("race") }
func raceacquireg(gp *g, addr unsafe.Pointer) { gothrow("race") }
func racerelease(addr unsafe.Pointer) { gothrow("race") }
func racereleaseg(gp *g, addr unsafe.Pointer) { gothrow("race") }
func racereleasemerge(addr unsafe.Pointer) { gothrow("race") }
func racereleasemergeg(gp *g, addr unsafe.Pointer) { gothrow("race") }
func racefingo() { gothrow("race") }
func racemalloc(p unsafe.Pointer, sz uintptr) { gothrow("race") }
func racegostart(pc uintptr) uintptr { gothrow("race"); return 0 }
func racegoend() { gothrow("race") }