runtime: use staticbytes in intstring for small v

Triggers 21 times during make.bash.

Change-Id: I7efb34200439256151304bb66cd309913f7c9c9e
Reviewed-on: https://go-review.googlesource.com/110557
Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Martin Möhrmann <moehrmann@google.com>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
This commit is contained in:
Josh Bleecher Snyder 2018-04-30 23:05:41 -07:00
parent 6a8cff5730
commit 2f2e8f9c81
1 changed files with 7 additions and 2 deletions

View File

@ -229,8 +229,13 @@ func stringStructOf(sp *string) *stringStruct {
return (*stringStruct)(unsafe.Pointer(sp))
}
func intstring(buf *[4]byte, v int64) string {
var s string
func intstring(buf *[4]byte, v int64) (s string) {
if v >= 0 && v < runeSelf {
stringStructOf(&s).str = unsafe.Pointer(&staticbytes[v])
stringStructOf(&s).len = 1
return
}
var b []byte
if buf != nil {
b = buf[:]