]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/compile/internal/gc: unexport and make Hasdefer a bool
authorHÃ¥vard Haugen <havard.haugen@gmail.com>
Mon, 7 Sep 2015 20:19:30 +0000 (22:19 +0200)
committerBrad Fitzpatrick <bradfitz@golang.org>
Tue, 8 Sep 2015 05:45:29 +0000 (05:45 +0000)
Passes go build -a -toolexec 'toolstash -cmp' std cmd.

Change-Id: I804ee4252fa9be78cb277faf7f467e6c9cfdd4a6
Reviewed-on: https://go-review.googlesource.com/14319
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
src/cmd/compile/internal/gc/cgen.go
src/cmd/compile/internal/gc/go.go
src/cmd/compile/internal/gc/pgen.go
src/cmd/compile/internal/gc/reg.go
src/cmd/compile/internal/gc/walk.go

index 860db34f483468ec0ae62e1623e0df607764ff4a..951f84fca7a1c2875be885b6783ec393659aca24 100644 (file)
@@ -2399,7 +2399,7 @@ func Ginscall(f *Node, proc int) {
                if proc == 1 {
                        Ginscall(Newproc, 0)
                } else {
-                       if Hasdefer == 0 {
+                       if !hasdefer {
                                Fatalf("hasdefer=0 but has defer")
                        }
                        Ginscall(Deferproc, 0)
@@ -2622,7 +2622,7 @@ func cgen_ret(n *Node) {
        if n != nil {
                Genlist(n.List) // copy out args
        }
-       if Hasdefer != 0 {
+       if hasdefer {
                Ginscall(Deferreturn, 0)
        }
        Genlist(Curfn.Func.Exit)
index a6b1ef55ab1db850706bba725c1f6c1e81aa6a21..3e7d6aa80e1a9e51e3175a92a2bc246efaf4bf35 100644 (file)
@@ -616,7 +616,7 @@ var blockgen int32 // max block number
 
 var block int32 // current block number
 
-var Hasdefer int // flag that curfn has defer statetment
+var hasdefer bool // flag that curfn has defer statement
 
 var Curfn *Node
 
index f98d72b88c24a703ce327c8b323b440af1b92de4..5631d4e5ecbf3ad98acb1a33f85065b6d376d36f 100644 (file)
@@ -392,7 +392,7 @@ func compile(fn *Node) {
                goto ret
        }
 
-       Hasdefer = 0
+       hasdefer = false
        walk(Curfn)
        if nerrors != 0 {
                goto ret
@@ -487,7 +487,7 @@ func compile(fn *Node) {
        // TODO: Determine when the final cgen_ret can be omitted. Perhaps always?
        cgen_ret(nil)
 
-       if Hasdefer != 0 {
+       if hasdefer {
                // deferreturn pretends to have one uintptr argument.
                // Reserve space for it so stack scanner is happy.
                if Maxarg < int64(Widthptr) {
index c061df1fd4e7903aadb85ceb3ec18f7eb76ef362..388d713171e672f6ed0549077826622653b92af2 100644 (file)
@@ -486,7 +486,7 @@ func mkvar(f *Flow, a *obj.Addr) Bits {
        //
        // Disable registerization for results if using defer, because the deferred func
        // might recover and return, causing the current values to be used.
-       if node.Class == PEXTERN || (Hasdefer != 0 && node.Class == PPARAMOUT) {
+       if node.Class == PEXTERN || (hasdefer && node.Class == PPARAMOUT) {
                v.addr = 1
        }
 
index 38e22fc6cdbeaca270c30b489bcdb9038cb7e30c..4a79b6609ea67735a877b0e1f85cfbeafacb27e5 100644 (file)
@@ -231,7 +231,7 @@ func walkstmt(np **Node) {
                walkstmt(&n.Right)
 
        case ODEFER:
-               Hasdefer = 1
+               hasdefer = true
                switch n.Left.Op {
                case OPRINT, OPRINTN:
                        walkprintfunc(&n.Left, &n.Ninit)