// errorcheckwithauto -0 -l -live -wb=0 -d=ssa/insert_resched_checks/off
+
//go:build !ppc64 && !ppc64le && !goexperiment.regabiargs
-// +build !ppc64,!ppc64le,!goexperiment.regabiargs
// ppc64 needs a better tighten pass to make f18 pass
// rescheduling checks need to be turned off because there are some live variables across the inserted check call
// this used to have a spurious "live at entry to f11a: ~r0"
func f11a() *int {
- select { // ERROR "stack object .autotmp_[0-9]+ \[2\]struct"
+ select { // ERROR "stack object .autotmp_[0-9]+ \[2\]runtime.scase$"
case <-c:
return nil
case <-c:
// get to the bottom of the function.
// This used to have a spurious "live at call to printint: p".
printint(1) // nothing live here!
- select { // ERROR "stack object .autotmp_[0-9]+ \[2\]struct"
+ select { // ERROR "stack object .autotmp_[0-9]+ \[2\]runtime.scase$"
case <-c:
return nil
case <-c:
// Unlike previous, the cases in this select fall through,
// so we can get to the println, so p is not dead.
printint(1) // ERROR "live at call to printint: p$"
- select { // ERROR "live at call to selectgo: p$" "stack object .autotmp_[0-9]+ \[2\]struct"
+ select { // ERROR "live at call to selectgo: p$" "stack object .autotmp_[0-9]+ \[2\]runtime.scase$"
case <-c:
case <-c:
}
// we care that the println lines have no live variables
// and therefore no output.
if b {
- select { // ERROR "live at call to selectgo:( .autotmp_[0-9]+)+$" "stack object .autotmp_[0-9]+ \[4\]struct \{"
+ select { // ERROR "live at call to selectgo:( .autotmp_[0-9]+)+$" "stack object .autotmp_[0-9]+ \[4\]runtime.scase$"
case <-fc38():
printnl()
case fc38() <- *fi38(1): // ERROR "live at call to fc38:( .autotmp_[0-9]+)+$" "live at call to fi38:( .autotmp_[0-9]+)+$" "stack object .autotmp_[0-9]+ string$"