mirror of
https://github.com/golang/go
synced 2024-11-25 04:27:56 -07:00
test/bench: use range in reverse-complement
1.9s gcc reverse-complement.c reverse-complement.go 4.5s / 3.5s original, with/without bounds checks 3.5s / 3.3s bounds check reduction 3.3s / 2.8s smarter garbage collector 2.6s / 2.3s assembler bytes.IndexByte 2.5s / 2.1s even smarter garbage collector 2.3s / 2.1s fix optimizer unnecessary spill bug 2.0s / 1.9s change loop to range (this CL) R=r https://golang.org/cl/166072
This commit is contained in:
parent
864c757a1c
commit
864c6bcbc7
@ -86,9 +86,9 @@ func main() {
|
||||
}
|
||||
|
||||
// This loop is the bottleneck.
|
||||
for r := 0; r < len(line); r++ {
|
||||
for _, c := range line {
|
||||
w--;
|
||||
buf[w] = complement[line[r]];
|
||||
buf[w] = complement[c];
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user