]> Cypherpunks repositories - gostls13.git/commit
cmd/gc: don't copy string in range []byte(str)
authorDmitry Vyukov <dvyukov@google.com>
Tue, 3 Feb 2015 17:50:58 +0000 (20:50 +0300)
committerDmitry Vyukov <dvyukov@google.com>
Wed, 4 Feb 2015 04:37:21 +0000 (04:37 +0000)
commit71be0138421012d04e06991d37d19c9f5b1fa02b
tree6a5d6528e0e47d9b71ecfd3da9678a0b24517451
parent70321df02fcd3fac12ea650ffae7130fe7cd379f
cmd/gc: don't copy string in range []byte(str)

Using benchmark from the issue:

benchmark                    old ns/op     new ns/op     delta
BenchmarkRangeStringCast     2162          1152          -46.72%

benchmark                    old allocs     new allocs     delta
BenchmarkRangeStringCast     1              0              -100.00%

Fixes #2204

Change-Id: I92c5edd2adca4a7b6fba00713a581bf49dc59afe
Reviewed-on: https://go-review.googlesource.com/3790
Reviewed-by: Keith Randall <khr@golang.org>
src/cmd/gc/builtin.c
src/cmd/gc/go.h
src/cmd/gc/order.c
src/cmd/gc/runtime.go
src/cmd/gc/walk.c
src/runtime/string.go
src/runtime/string_test.go