mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
cmd/compile: disable name preservation on copies in expand_calls
Apparently CL 309330 caused the compiler OOMing on some large input (giant generated switch statement). I don't quite understand it for now. Disable it for now. Change-Id: I19c84f3f5e158897bff0b32d6217fcff3c66874d Reviewed-on: https://go-review.googlesource.com/c/go/+/311829 Trust: Cherry Zhang <cherryyz@google.com> Run-TryBot: Cherry Zhang <cherryyz@google.com> Reviewed-by: Than McIntosh <thanm@google.com> TryBot-Result: Go Bot <gobot@golang.org>
This commit is contained in:
parent
60ab197bc2
commit
109d7580a5
2 changed files with 14 additions and 9 deletions
|
|
@ -1450,6 +1450,7 @@ func expandCalls(f *Func) {
|
||||||
|
|
||||||
// Step 6: elide any copies introduced.
|
// Step 6: elide any copies introduced.
|
||||||
// Update named values.
|
// Update named values.
|
||||||
|
if false { // TODO: reeanable. It caused compiler OOMing on large input.
|
||||||
for _, name := range f.Names {
|
for _, name := range f.Names {
|
||||||
values := f.NamedValues[name]
|
values := f.NamedValues[name]
|
||||||
for i, v := range values {
|
for i, v := range values {
|
||||||
|
|
@ -1462,6 +1463,7 @@ func expandCalls(f *Func) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
for _, b := range f.Blocks {
|
for _, b := range f.Blocks {
|
||||||
for _, v := range b.Values {
|
for _, v := range b.Values {
|
||||||
for i, a := range v.Args {
|
for i, a := range v.Args {
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,8 @@
|
||||||
// errorcheckwithauto -0 -l -live -wb=0 -d=ssa/insert_resched_checks/off
|
// errorcheckwithauto -0 -l -live -wb=0 -d=ssa/insert_resched_checks/off
|
||||||
// +build amd64,goexperiment.regabidefer,goexperiment.regabiargs
|
// +build amd64,goexperiment.regabidefer,goexperiment.regabiargs,ignore
|
||||||
|
|
||||||
|
// Disabled for now. The compiler sometimes has bad name-value association
|
||||||
|
// for args, causing args appears as autotmps.
|
||||||
|
|
||||||
// Copyright 2014 The Go Authors. All rights reserved.
|
// Copyright 2014 The Go Authors. All rights reserved.
|
||||||
// Use of this source code is governed by a BSD-style
|
// Use of this source code is governed by a BSD-style
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue