aboutsummaryrefslogtreecommitdiff
path: root/src/runtime/time_nofake.go
diff options
context:
space:
mode:
authorAustin Clements <austin@google.com>2019-09-01 10:37:44 -0400
committerAustin Clements <austin@google.com>2019-09-04 17:56:09 +0000
commit4af3c17f8cd37288a5bb9bc53e8b88c58f5624d1 (patch)
tree0d8dd44ab11f568977ca4521d896323fcd744c37 /src/runtime/time_nofake.go
parent6719d889e1a333989c6f461a66090d5583eeaedf (diff)
downloadgo-4af3c17f8cd37288a5bb9bc53e8b88c58f5624d1.tar.gz
go-4af3c17f8cd37288a5bb9bc53e8b88c58f5624d1.zip
runtime: wrap nanotime, walltime, and write
In preparation for general faketime support, this renames the existing nanotime, walltime, and write functions to nanotime1, walltime1, and write1 and wraps them with trivial Go functions. This will let us inject different implementations on all platforms when faketime is enabled. Updates #30439. Change-Id: Ice5ccc513a32a6d89ea051638676d3ee05b00418 Reviewed-on: https://go-review.googlesource.com/c/go/+/192738 Run-TryBot: Austin Clements <austin@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Diffstat (limited to 'src/runtime/time_nofake.go')
-rw-r--r--src/runtime/time_nofake.go25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/runtime/time_nofake.go b/src/runtime/time_nofake.go
new file mode 100644
index 0000000000..233097d170
--- /dev/null
+++ b/src/runtime/time_nofake.go
@@ -0,0 +1,25 @@
+// 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.
+
+// +build !nacl
+
+package runtime
+
+import "unsafe"
+
+//go:nosplit
+func nanotime() int64 {
+ return nanotime1()
+}
+
+func walltime() (sec int64, nsec int32) {
+ return walltime1()
+}
+
+// write must be nosplit on Windows (see write1)
+//
+//go:nosplit
+func write(fd uintptr, p unsafe.Pointer, n int32) int32 {
+ return write1(fd, p, n)
+}