From 932c1e3dd32f636ab3f25b23d9dcef194a577bca Mon Sep 17 00:00:00 2001 From: Marvin Stenger Date: Sun, 6 Sep 2015 16:59:57 +0200 Subject: [PATCH] cmd/compile/internal: some janitoring Nicer swaps, loops (removed tmp variables). Use of bool instead of int. This change passes go build -toolexec 'toolstash -cmp' -a std. Change-Id: I541904c74b57297848decc51a8a4913a8eca4af3 Reviewed-on: https://go-review.googlesource.com/14316 Run-TryBot: Brad Fitzpatrick TryBot-Result: Gobot Gobot Reviewed-by: Brad Fitzpatrick --- src/cmd/compile/internal/amd64/ggen.go | 36 ++++++++---------------- src/cmd/compile/internal/arm/cgen.go | 7 +---- src/cmd/compile/internal/arm/ggen.go | 4 +-- src/cmd/compile/internal/arm64/cgen.go | 8 +----- src/cmd/compile/internal/arm64/ggen.go | 18 ++++++------ src/cmd/compile/internal/gc/cgen.go | 4 +-- src/cmd/compile/internal/gc/plive.go | 6 ++-- src/cmd/compile/internal/gc/subr.go | 7 +---- src/cmd/compile/internal/gc/typecheck.go | 10 +++---- src/cmd/compile/internal/ppc64/cgen.go | 8 +----- src/cmd/compile/internal/ppc64/ggen.go | 18 ++++++------ src/cmd/compile/internal/x86/ggen.go | 36 ++++++++---------------- 12 files changed, 50 insertions(+), 112 deletions(-) diff --git a/src/cmd/compile/internal/amd64/ggen.go b/src/cmd/compile/internal/amd64/ggen.go index 5aae563241..f1f4955d4a 100644 --- a/src/cmd/compile/internal/amd64/ggen.go +++ b/src/cmd/compile/internal/amd64/ggen.go @@ -187,13 +187,13 @@ func dodiv(op int, nl *gc.Node, nr *gc.Node, res *gc.Node) { t := nl.Type t0 := t - check := 0 + check := false if gc.Issigned[t.Etype] { - check = 1 + check = true if gc.Isconst(nl, gc.CTINT) && nl.Int() != -(1< 0; q-- { n1.Type = z.Type gins(x86.AMOVQ, &z, &n1) n1.Xoffset += 8 @@ -584,12 +575,7 @@ func clearfat(nl *gc.Node) { } gc.Nodconst(&z, gc.Types[gc.TUINT8], 0) - for { - tmp15 := c - c-- - if tmp15 <= 0 { - break - } + for ; c > 0; c-- { n1.Type = z.Type gins(x86.AMOVB, &z, &n1) n1.Xoffset++ diff --git a/src/cmd/compile/internal/arm/cgen.go b/src/cmd/compile/internal/arm/cgen.go index 6c1a84c417..289da5d888 100644 --- a/src/cmd/compile/internal/arm/cgen.go +++ b/src/cmd/compile/internal/arm/cgen.go @@ -205,12 +205,7 @@ func blockcopy(n, res *gc.Node, osrc, odst, w int64) { gc.Regfree(&nend) } else { var p *obj.Prog - for { - tmp14 := c - c-- - if tmp14 <= 0 { - break - } + for ; c > 0; c-- { p = gins(op, &src, &tmp) p.From.Type = obj.TYPE_MEM p.From.Offset = int64(dir) diff --git a/src/cmd/compile/internal/arm/ggen.go b/src/cmd/compile/internal/arm/ggen.go index 8ab384eada..193d4af27d 100644 --- a/src/cmd/compile/internal/arm/ggen.go +++ b/src/cmd/compile/internal/arm/ggen.go @@ -120,9 +120,7 @@ func appendpp(p *obj.Prog, as int, ftype int, freg int, foffset int32, ttype int */ func cgen_hmul(nl *gc.Node, nr *gc.Node, res *gc.Node) { if nl.Ullman < nr.Ullman { - tmp := nl - nl = nr - nr = tmp + nl, nr = nr, nl } t := nl.Type diff --git a/src/cmd/compile/internal/arm64/cgen.go b/src/cmd/compile/internal/arm64/cgen.go index 9a7a8f9482..a7f1c18b55 100644 --- a/src/cmd/compile/internal/arm64/cgen.go +++ b/src/cmd/compile/internal/arm64/cgen.go @@ -132,13 +132,7 @@ func blockcopy(n, res *gc.Node, osrc, odst, w int64) { // ADDs. That will produce shorter, more // pipeline-able code. var p *obj.Prog - for { - tmp14 := c - c-- - if tmp14 <= 0 { - break - } - + for ; c > 0; c-- { p = gins(op, &src, &tmp) p.From.Type = obj.TYPE_MEM p.From.Offset = int64(dir) diff --git a/src/cmd/compile/internal/arm64/ggen.go b/src/cmd/compile/internal/arm64/ggen.go index b647fce141..2cbd6637d3 100644 --- a/src/cmd/compile/internal/arm64/ggen.go +++ b/src/cmd/compile/internal/arm64/ggen.go @@ -151,13 +151,13 @@ func dodiv(op int, nl *gc.Node, nr *gc.Node, res *gc.Node) { t := nl.Type t0 := t - check := 0 + check := false if gc.Issigned[t.Etype] { - check = 1 + check = true if gc.Isconst(nl, gc.CTINT) && nl.Int() != -(1<= 0; i-- { a[i].Down = f f = a[i] } diff --git a/src/cmd/compile/internal/gc/typecheck.go b/src/cmd/compile/internal/gc/typecheck.go index 7c9d85fb69..fdeaa5bccc 100644 --- a/src/cmd/compile/internal/gc/typecheck.go +++ b/src/cmd/compile/internal/gc/typecheck.go @@ -3073,11 +3073,10 @@ func typecheckcomplit(np **Node) { setlineno(ll.N) typecheck(&ll.N, Erv) if f == nil { - tmp12 := bad - bad++ - if tmp12 == 0 { + if bad == 0 { Yyerror("too many values in struct initializer") } + bad++ continue } @@ -3110,11 +3109,10 @@ func typecheckcomplit(np **Node) { l = ll.N setlineno(l) if l.Op != OKEY { - tmp13 := bad - bad++ - if tmp13 == 0 { + if bad == 0 { Yyerror("mixture of field:value and value initializers") } + bad++ typecheck(&ll.N, Erv) continue } diff --git a/src/cmd/compile/internal/ppc64/cgen.go b/src/cmd/compile/internal/ppc64/cgen.go index 4f3092c9ef..740e64cc83 100644 --- a/src/cmd/compile/internal/ppc64/cgen.go +++ b/src/cmd/compile/internal/ppc64/cgen.go @@ -126,13 +126,7 @@ func blockcopy(n, res *gc.Node, osrc, odst, w int64) { // ADDs. That will produce shorter, more // pipeline-able code. var p *obj.Prog - for { - tmp14 := c - c-- - if tmp14 <= 0 { - break - } - + for ; c > 0; c-- { p = gins(op, &src, &tmp) p.From.Type = obj.TYPE_MEM p.From.Offset = int64(dir) diff --git a/src/cmd/compile/internal/ppc64/ggen.go b/src/cmd/compile/internal/ppc64/ggen.go index 2779140ca0..173e2f0c6c 100644 --- a/src/cmd/compile/internal/ppc64/ggen.go +++ b/src/cmd/compile/internal/ppc64/ggen.go @@ -141,13 +141,13 @@ func dodiv(op int, nl *gc.Node, nr *gc.Node, res *gc.Node) { t := nl.Type t0 := t - check := 0 + check := false if gc.Issigned[t.Etype] { - check = 1 + check = true if gc.Isconst(nl, gc.CTINT) && nl.Int() != -(1< 0; q-- { n1.Type = z.Type gins(x86.AMOVL, &z, &n1) n1.Xoffset += 4 } gc.Nodconst(&z, gc.Types[gc.TUINT8], 0) - for { - tmp15 := c - c-- - if tmp15 <= 0 { - break - } + for ; c > 0; c-- { n1.Type = z.Type gins(x86.AMOVB, &z, &n1) n1.Xoffset++ @@ -213,13 +203,13 @@ func dodiv(op int, nl *gc.Node, nr *gc.Node, res *gc.Node, ax *gc.Node, dx *gc.N t := nl.Type t0 := t - check := 0 + check := false if gc.Issigned[t.Etype] { - check = 1 + check = true if gc.Isconst(nl, gc.CTINT) && nl.Int() != -1<