Commit a87e4a2d authored by Russ Cox's avatar Russ Cox

[dev.cc] runtime: fix linux build

TBR=austin
CC=golang-codereviews
https://golang.org/cl/176760044
parent 1d05d588
...@@ -134,6 +134,10 @@ func (ts *timespec) set_sec(x int32) { ...@@ -134,6 +134,10 @@ func (ts *timespec) set_sec(x int32) {
ts.tv_sec = x ts.tv_sec = x
} }
func (ts *timespec) set_nsec(x int32) {
ts.tv_nsec = x
}
type timeval struct { type timeval struct {
tv_sec int32 tv_sec int32
tv_usec int32 tv_usec int32
......
...@@ -96,6 +96,10 @@ func (ts *timespec) set_sec(x int32) { ...@@ -96,6 +96,10 @@ func (ts *timespec) set_sec(x int32) {
ts.tv_sec = int64(x) ts.tv_sec = int64(x)
} }
func (ts *timespec) set_nsec(x int32) {
ts.tv_nsec = int64(x)
}
type timeval struct { type timeval struct {
tv_sec int64 tv_sec int64
tv_usec int64 tv_usec int64
......
...@@ -88,6 +88,10 @@ func (ts *timespec) set_sec(x int32) { ...@@ -88,6 +88,10 @@ func (ts *timespec) set_sec(x int32) {
ts.tv_sec = x ts.tv_sec = x
} }
func (ts *timespec) set_nsec(x int32) {
ts.tv_nsec = x
}
type sigaltstackt struct { type sigaltstackt struct {
ss_sp *byte ss_sp *byte
ss_flags int32 ss_flags int32
......
...@@ -48,8 +48,8 @@ func futexsleep(addr *uint32, val uint32, ns int64) { ...@@ -48,8 +48,8 @@ func futexsleep(addr *uint32, val uint32, ns int64) {
// is not, even timediv is too heavy, and we really need to use just an // is not, even timediv is too heavy, and we really need to use just an
// ordinary machine instruction. // ordinary machine instruction.
if ptrSize == 8 { if ptrSize == 8 {
ts.set_sec(ns / 1000000000) ts.set_sec(int32(ns / 1000000000))
ts.set_nsec(ns % 1000000000) ts.set_nsec(int32(ns % 1000000000))
} else { } else {
ts.tv_nsec = 0 ts.tv_nsec = 0
ts.set_sec(timediv(ns, 1000000000, (*int32)(unsafe.Pointer(&ts.tv_nsec)))) ts.set_sec(timediv(ns, 1000000000, (*int32)(unsafe.Pointer(&ts.tv_nsec))))
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment