diff options
author | Keith Randall <keithr@alum.mit.edu> | 2018-09-07 14:55:09 -0700 |
---|---|---|
committer | Keith Randall <khr@golang.org> | 2018-10-03 19:54:16 +0000 |
commit | 9a8372f8bd5a39d2476bfa9247407b51f9193b9e (patch) | |
tree | c8383f43af15466e5320044f5910c55073c41592 /test/live2.go | |
parent | cbafcc55e80d5b444e659a892b739c04a27980d3 (diff) | |
download | go-9a8372f8bd5a39d2476bfa9247407b51f9193b9e.tar.gz go-9a8372f8bd5a39d2476bfa9247407b51f9193b9e.zip |
cmd/compile,runtime: remove ambiguously live logic
The previous CL introduced stack objects. This CL removes the old
ambiguously live liveness analysis. After this CL we're relying
on stack objects exclusively.
Update a bunch of liveness tests to reflect the new world.
Fixes #22350
Change-Id: I739b26e015882231011ce6bc1a7f426049e59f31
Reviewed-on: https://go-review.googlesource.com/c/134156
Reviewed-by: Austin Clements <austin@google.com>
Reviewed-by: Cherry Zhang <cherryyz@google.com>
Diffstat (limited to 'test/live2.go')
-rw-r--r-- | test/live2.go | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/test/live2.go b/test/live2.go index cc1b0b7acf..cea312f075 100644 --- a/test/live2.go +++ b/test/live2.go @@ -10,7 +10,6 @@ package main // issue 8142: lost 'addrtaken' bit on inlined variables. -// no inlining in this test, so just checking that non-inlined works. func printnl() @@ -28,15 +27,15 @@ func newT40() *T40 { } func bad40() { - t := newT40() // ERROR "live at call to makemap: .autotmp_[0-9]+ ret$" - printnl() // ERROR "live at call to printnl: .autotmp_[0-9]+ ret$" - useT40(t) // ERROR "live at call to useT40: .autotmp_[0-9]+ ret$" + t := newT40() // ERROR "live at call to makemap: ret$" "stack object ret T40$" "stack object .autotmp_[0-9]+ map.hdr\[int\]int$" + printnl() // ERROR "live at call to printnl: ret$" + useT40(t) } func good40() { - ret := T40{} - ret.m = make(map[int]int, 42) // ERROR "live at call to makemap: .autotmp_[0-9]+ ret$" + ret := T40{} // ERROR "stack object ret T40$" + ret.m = make(map[int]int, 42) // ERROR "live at call to makemap: ret$" "stack object .autotmp_[0-9]+ map.hdr\[int\]int$" t := &ret - printnl() // ERROR "live at call to printnl: .autotmp_[0-9]+ ret$" - useT40(t) // ERROR "live at call to useT40: .autotmp_[0-9]+ ret$" + printnl() // ERROR "live at call to printnl: ret$" + useT40(t) } |