
Add build tags and a few other changes so that libgo builds on Solaris. Patch partially from Rainer Orth. Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/386215
50 lines
993 B
Go
50 lines
993 B
Go
// Copyright 2011 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.
|
|
|
|
package runtime
|
|
|
|
import _ "unsafe"
|
|
|
|
var executablePath string
|
|
|
|
//extern getexecname
|
|
func getexecname() *byte
|
|
|
|
//extern getpagesize
|
|
func getPageSize() int32
|
|
|
|
//extern sysconf
|
|
func sysconf(int32) _C_long
|
|
|
|
func osinit() {
|
|
ncpu = getncpu()
|
|
if physPageSize == 0 {
|
|
physPageSize = uintptr(getPageSize())
|
|
}
|
|
}
|
|
|
|
func sysargs(argc int32, argv **byte) {
|
|
executablePath = gostringnocopy(getexecname())
|
|
}
|
|
|
|
//go:linkname solarisExecutablePath os.solarisExecutablePath
|
|
|
|
// solarisExecutablePath is called from the os package to fetch the
|
|
// saved executable path.
|
|
func solarisExecutablePath() string {
|
|
return executablePath
|
|
}
|
|
|
|
func setProcessCPUProfiler(hz int32) {
|
|
setProcessCPUProfilerTimer(hz)
|
|
}
|
|
|
|
func setThreadCPUProfiler(hz int32) {
|
|
setThreadCPUProfilerHz(hz)
|
|
}
|
|
|
|
//go:nosplit
|
|
func validSIGPROF(mp *m, c *sigctxt) bool {
|
|
return true
|
|
}
|