mirror of
https://github.com/golang/go.git
synced 2025-11-11 06:01:06 +00:00
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>
This commit is contained in:
parent
cbafcc55e8
commit
9a8372f8bd
16 changed files with 375 additions and 334 deletions
|
|
@ -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)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue