aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/compile/internal/ssa/schedule.go
diff options
context:
space:
mode:
authorPhilip Hofer <phofer@umich.edu>2017-03-03 13:44:18 -0800
committerMatthew Dempsky <mdempsky@google.com>2017-03-09 21:40:47 +0000
commitb0e91d836a0abd46899cf78fdd93303afcf6c637 (patch)
tree161359a455652648f81b967f834be8fe39ece98d /src/cmd/compile/internal/ssa/schedule.go
parente471ad9189d1eba54c8cb5414c47e413cea78df2 (diff)
downloadgo-b0e91d836a0abd46899cf78fdd93303afcf6c637.tar.gz
go-b0e91d836a0abd46899cf78fdd93303afcf6c637.zip
cmd/compile: clean up ssa.Value memory arg usage
This change adds a method to replace expressions of the form v.Args[len(v.Args)-1] so that the code's intention to walk memory arguments is explicit. Passes toolstash-check. Change-Id: I0c80d73bc00989dd3cdf72b4f2c8e1075a2515e0 Reviewed-on: https://go-review.googlesource.com/37757 Run-TryBot: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Keith Randall <khr@golang.org>
Diffstat (limited to 'src/cmd/compile/internal/ssa/schedule.go')
-rw-r--r--src/cmd/compile/internal/ssa/schedule.go8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/cmd/compile/internal/ssa/schedule.go b/src/cmd/compile/internal/ssa/schedule.go
index b0a2f23102..356d44787f 100644
--- a/src/cmd/compile/internal/ssa/schedule.go
+++ b/src/cmd/compile/internal/ssa/schedule.go
@@ -314,11 +314,11 @@ func storeOrder(values []*Value, sset *sparseSet, storeNumber []int32) []*Value
if v.Op == OpInitMem || v.Op == OpPhi {
continue
}
- a := v.Args[len(v.Args)-1]
+ a := v
if v.Op == OpSelect1 {
- a = a.Args[len(a.Args)-1]
+ a = a.Args[0]
}
- sset.add(a.ID) // record that a is used
+ sset.add(a.MemoryArg().ID) // record that v's memory arg is used
}
if v.Op == OpNilCheck {
hasNilCheck = true
@@ -364,7 +364,7 @@ func storeOrder(values []*Value, sset *sparseSet, storeNumber []int32) []*Value
if w.Op == OpSelect1 {
w = w.Args[0]
}
- w = w.Args[len(w.Args)-1]
+ w = w.MemoryArg()
}
var stack []*Value
for _, v := range values {