summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2009-12-04 19:25:25 -0800
committerRuss Cox <rsc@golang.org>2009-12-04 19:25:25 -0800
commit7f7783d1bccff1881f6404bbcec5cc93aaf419c4 (patch)
treebbb735e38817110c36f40512c22649ee9986e546
parent041cd15311d759913d77f82b4c1f3cb2e0e55768 (diff)
downloadgolang-7f7783d1bccff1881f6404bbcec5cc93aaf419c4.tar.gz
test/bench: dead code in reverse-complement
R=r http://codereview.appspot.com/165065
-rw-r--r--test/bench/reverse-complement.go33
1 files changed, 3 insertions, 30 deletions
diff --git a/test/bench/reverse-complement.go b/test/bench/reverse-complement.go
index c8a525bc9..60e14dba8 100644
--- a/test/bench/reverse-complement.go
+++ b/test/bench/reverse-complement.go
@@ -61,37 +61,8 @@ var complement = [256]uint8{
'N': 'N', 'n': 'N',
}
-var in *bufio.Reader
-
-func reverseComplement(in []byte) []byte {
- outLen := len(in) + (len(in)+lineSize-1)/lineSize;
- out := make([]byte, outLen);
- j := 0;
- k := 0;
- for i := len(in) - 1; i >= 0; i-- {
- if k == lineSize {
- out[j] = '\n';
- j++;
- k = 0;
- }
- out[j] = complement[in[i]];
- j++;
- k++;
- }
- out[j] = '\n';
- j++;
- return out[0:j];
-}
-
-func output(buf []byte) {
- if len(buf) == 0 {
- return
- }
- os.Stdout.Write(reverseComplement(buf));
-}
-
func main() {
- in = bufio.NewReader(os.Stdin);
+ in := bufio.NewReader(os.Stdin);
buf := make([]byte, 1024*1024);
line, err := in.ReadSlice('\n');
for err == nil {
@@ -113,6 +84,8 @@ func main() {
w += len(nbuf) - len(buf);
buf = nbuf;
}
+
+ // This loop is the bottleneck.
for r := 0; r < len(line); r++ {
w--;
buf[w] = complement[line[r]];