]> Cypherpunks repositories - gostls13.git/commitdiff
[dev.regabi] cmd/compile: replace ir.Name map with ir.NameSet for SSA 2
authorBaokun Lee <bk@golangcn.org>
Sat, 23 Jan 2021 09:05:01 +0000 (17:05 +0800)
committerBaokun Lee <bk@golangcn.org>
Sat, 23 Jan 2021 10:38:11 +0000 (10:38 +0000)
Same as CL 284897, the last one.

Passes toolstash -cmp.

Updates #43819

Change-Id: I0bd8958b3717fb58a5a6576f1819a85f33b76e2d
Reviewed-on: https://go-review.googlesource.com/c/go/+/285913
Run-TryBot: Baokun Lee <bk@golangcn.org>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Matthew Dempsky <mdempsky@google.com>
Trust: Baokun Lee <bk@golangcn.org>

src/cmd/compile/internal/ssa/deadstore.go

index 0cf9931dbcd83d077890c9c0c937555abf3bc4f3..31d3f62d4e7cef68637d8c2552f22a7ad085122d 100644 (file)
@@ -299,7 +299,7 @@ func elimUnreadAutos(f *Func) {
        // Loop over all ops that affect autos taking note of which
        // autos we need and also stores that we might be able to
        // eliminate.
-       seen := make(map[*ir.Name]bool)
+       var seen ir.NameSet
        var stores []*Value
        for _, b := range f.Blocks {
                for _, v := range b.Values {
@@ -317,7 +317,7 @@ func elimUnreadAutos(f *Func) {
                                // If we haven't seen the auto yet
                                // then this might be a store we can
                                // eliminate.
-                               if !seen[n] {
+                               if !seen.Has(n) {
                                        stores = append(stores, v)
                                }
                        default:
@@ -327,7 +327,7 @@ func elimUnreadAutos(f *Func) {
                                // because dead loads haven't been
                                // eliminated yet.
                                if v.Uses > 0 {
-                                       seen[n] = true
+                                       seen.Add(n)
                                }
                        }
                }
@@ -336,7 +336,7 @@ func elimUnreadAutos(f *Func) {
        // Eliminate stores to unread autos.
        for _, store := range stores {
                n, _ := store.Aux.(*ir.Name)
-               if seen[n] {
+               if seen.Has(n) {
                        continue
                }