cmd/compile/internal/ssa: use strings.Builder

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>
This commit is contained in:
cuiweixie 2022-09-05 15:03:02 +08:00 committed by Gopher Robot
parent 431446d0a0
commit 095b6f050f
6 changed files with 11 additions and 12 deletions

View 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])

View 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

View 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 {

View 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 {

View 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 {

View 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()