diff options
Diffstat (limited to 'src/runtime/cgo/openbsd.go')
-rw-r--r-- | src/runtime/cgo/openbsd.go | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/runtime/cgo/openbsd.go b/src/runtime/cgo/openbsd.go new file mode 100644 index 000000000..61af3a8e7 --- /dev/null +++ b/src/runtime/cgo/openbsd.go @@ -0,0 +1,31 @@ +// Copyright 2010 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 openbsd + +package cgo + +import _ "unsafe" // for go:linkname + +// Supply environ, __progname and __guard_local, because +// we don't link against the standard OpenBSD crt0.o and +// the libc dynamic library needs them. + +//go:linkname _environ environ +//go:linkname _progname __progname +//go:linkname _guard_local __guard_local + +var _environ uintptr +var _progname uintptr +var _guard_local uintptr + +//go:cgo_export_dynamic environ environ +//go:cgo_export_dynamic __progname __progname + +// This is normally marked as hidden and placed in the +// .openbsd.randomdata section. +//go:cgo_export_dynamic __guard_local __guard_local + +// We override pthread_create to support PT_TLS. +//go:cgo_export_dynamic pthread_create pthread_create |