]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/compile/internal/ssa: use strings.Builder
authorcuiweixie <cuiweixie@gmail.com>
Mon, 5 Sep 2022 07:03:02 +0000 (15:03 +0800)
committerGopher Robot <gobot@golang.org>
Wed, 7 Sep 2022 01:29:43 +0000 (01:29 +0000)
Change-Id: Ieb15b54d36f18d1fbccbafe5451a4758df797718
Reviewed-on: https://go-review.googlesource.com/c/go/+/428359
Run-TryBot: Robert Griesemer <gri@google.com>
Reviewed-by: Ian Lance Taylor <iant@google.com>
Reviewed-by: Robert Griesemer <gri@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Run-TryBot: Ian Lance Taylor <iant@google.com>
Auto-Submit: Ian Lance Taylor <iant@google.com>

src/cmd/compile/internal/ssa/compile.go
src/cmd/compile/internal/ssa/debug_lines_test.go
src/cmd/compile/internal/ssa/debug_test.go
src/cmd/compile/internal/ssa/gen/main.go
src/cmd/compile/internal/ssa/html.go
src/cmd/compile/internal/ssa/print.go

index 5e898ab96f4a4b2f1f195d52ef18c611ede75ee7..3be2cc7c3738e55abf82312db27f4f095f79c221 100644 (file)
@@ -5,7 +5,6 @@
 package ssa
 
 import (
-       "bytes"
        "cmd/internal/src"
        "fmt"
        "hash/crc32"
@@ -152,7 +151,7 @@ func Compile(f *Func) {
                        keys = append(keys, key)
                }
                sort.Strings(keys)
-               buf := new(bytes.Buffer)
+               buf := new(strings.Builder)
                fmt.Fprintf(buf, "%s: ", f.Name)
                for _, key := range keys {
                        fmt.Fprintf(buf, "%s=%d ", key, f.ruleMatches[key])
index 7b8b5eb180c184b351e22879cc18aafd6addd25e..23b511ddb2eb4e73e171ae66a7065fdacdfc652d 100644 (file)
@@ -11,6 +11,7 @@ import (
        "internal/buildcfg"
        "runtime"
        "sort"
+       "strings"
 
        "fmt"
        "internal/testenv"
@@ -157,7 +158,7 @@ func compileAndDump(t *testing.T, file, function, moreGCFlags string) []byte {
                fmt.Printf("About to run %s\n", asCommandLine("", cmd))
        }
 
-       var stdout, stderr bytes.Buffer
+       var stdout, stderr strings.Builder
        cmd.Stdout = &stdout
        cmd.Stderr = &stderr
 
index c807863ea65bbf4b02e55ff31aa05283d7158dbe..f3f8eeeb417249afa870da8da259b42b70d049e1 100644 (file)
@@ -5,7 +5,6 @@
 package ssa_test
 
 import (
-       "bytes"
        "flag"
        "fmt"
        "internal/testenv"
@@ -298,7 +297,7 @@ func runDbgr(dbg dbgr, maxNext int) *nextHist {
 }
 
 func runGo(t *testing.T, dir string, args ...string) string {
-       var stdout, stderr bytes.Buffer
+       var stdout, stderr strings.Builder
        cmd := exec.Command(testenv.GoToolPath(t), args...)
        cmd.Dir = dir
        if *dryrun {
index 2cf0a919fa6ebc2b07871249ce391439c44bb4e9..b1a7cf9f6f2f98702250e0b1b35168f73f64f3ae 100644 (file)
@@ -94,7 +94,7 @@ type regInfo struct {
 type regMask uint64
 
 func (a arch) regMaskComment(r regMask) string {
-       var buf bytes.Buffer
+       var buf strings.Builder
        for i := uint64(0); r != 0; i++ {
                if r&1 != 0 {
                        if buf.Len() == 0 {
index 1e6060ab32248e872206da29eb92786a64ef501f..c3950697d30b4b7d7e7eb2406d6ff0ae6007b59f 100644 (file)
@@ -848,7 +848,7 @@ func (w *HTMLWriter) WriteSources(phase string, all []*FuncLines) {
        if w == nil {
                return // avoid generating HTML just to discard it
        }
-       var buf bytes.Buffer
+       var buf strings.Builder
        fmt.Fprint(&buf, "<div class=\"lines\" style=\"width: 8%\">")
        filename := ""
        for _, fl := range all {
@@ -890,7 +890,7 @@ func (w *HTMLWriter) WriteAST(phase string, buf *bytes.Buffer) {
                return // avoid generating HTML just to discard it
        }
        lines := strings.Split(buf.String(), "\n")
-       var out bytes.Buffer
+       var out strings.Builder
 
        fmt.Fprint(&out, "<div>")
        for _, l := range lines {
@@ -1053,7 +1053,7 @@ func (b *Block) LongHTML() string {
 }
 
 func (f *Func) HTML(phase string, dot *dotWriter) string {
-       buf := new(bytes.Buffer)
+       buf := new(strings.Builder)
        if dot != nil {
                dot.writeFuncSVG(buf, phase, f)
        }
@@ -1082,7 +1082,7 @@ func (d *dotWriter) writeFuncSVG(w io.Writer, phase string, f *Func) {
        }
        buf := new(bytes.Buffer)
        cmd.Stdout = buf
-       bufErr := new(bytes.Buffer)
+       bufErr := new(strings.Builder)
        cmd.Stderr = bufErr
        err = cmd.Start()
        if err != nil {
index aea9ce9e33acf40ac463a3ef89a8dfbe30a0514a..85ba6b72c6c83304b649e6fb05476979ee17f5f3 100644 (file)
@@ -5,9 +5,9 @@
 package ssa
 
 import (
-       "bytes"
        "fmt"
        "io"
+       "strings"
 
        "cmd/internal/notsha256"
        "cmd/internal/src"
@@ -25,7 +25,7 @@ func hashFunc(f *Func) []byte {
 }
 
 func (f *Func) String() string {
-       var buf bytes.Buffer
+       var buf strings.Builder
        p := stringFuncPrinter{w: &buf, printDead: true}
        fprintFunc(p, f)
        return buf.String()