aboutsummaryrefslogtreecommitdiff
path: root/libgo/go/runtime/runtime.go
diff options
context:
space:
mode:
Diffstat (limited to 'libgo/go/runtime/runtime.go')
-rw-r--r--libgo/go/runtime/runtime.go17
1 files changed, 7 insertions, 10 deletions
diff --git a/libgo/go/runtime/runtime.go b/libgo/go/runtime/runtime.go
index e63130b..58710de 100644
--- a/libgo/go/runtime/runtime.go
+++ b/libgo/go/runtime/runtime.go
@@ -19,20 +19,17 @@ import (
//
//go:linkname tickspersecond runtime.tickspersecond
-var ticks struct {
- lock mutex
- pad uint32 // ensure 8-byte alignment of val on 386
- val uint64
-}
+var ticksLock mutex
+var ticksVal uint64
// Note: Called by runtime/pprof in addition to runtime code.
func tickspersecond() int64 {
- r := int64(atomic.Load64(&ticks.val))
+ r := int64(atomic.Load64(&ticksVal))
if r != 0 {
return r
}
- lock(&ticks.lock)
- r = int64(ticks.val)
+ lock(&ticksLock)
+ r = int64(ticksVal)
if r == 0 {
t0 := nanotime()
c0 := cputicks()
@@ -46,9 +43,9 @@ func tickspersecond() int64 {
if r == 0 {
r++
}
- atomic.Store64(&ticks.val, uint64(r))
+ atomic.Store64(&ticksVal, uint64(r))
}
- unlock(&ticks.lock)
+ unlock(&ticksLock)
return r
}