| // Copyright 2019 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. |
| |
| //go:build !faketime |
| |
| package runtime |
| |
| import "unsafe" |
| |
| // faketime is the simulated time in nanoseconds since 1970 for the |
| // playground. |
| // |
| // Zero means not to use faketime. |
| var faketime int64 |
| |
| //go:nosplit |
| func nanotime() int64 { |
| return nanotime1() |
| } |
| |
| var overrideWrite func(fd uintptr, p unsafe.Pointer, n int32) int32 |
| |
| // write must be nosplit on Windows (see write1) |
| // |
| //go:nosplit |
| func write(fd uintptr, p unsafe.Pointer, n int32) int32 { |
| if overrideWrite != nil { |
| return overrideWrite(fd, noescape(p), n) |
| } |
| return write1(fd, p, n) |
| } |