From 965e9ba0fb6ed8b511860beaefa7a3ac97a81c36 Mon Sep 17 00:00:00 2001 From: Cuong Manh Le Date: Fri, 10 Feb 2023 02:13:05 +0700 Subject: [PATCH] [release-branch.go1.20] cmd/compile: disable inline static init optimization There are a plenty of regression in 1.20 with this optimization. This CL disable inline static init, so it's safer to backport to 1.20 branch. The optimization will be enabled again during 1.21 cycle. Fixes #58444 Change-Id: If5916008597b46146b4dc7108c6b389d53f35e95 Reviewed-on: https://go-review.googlesource.com/c/go/+/467015 Reviewed-by: Keith Randall Reviewed-by: Keith Randall Run-TryBot: Cuong Manh Le TryBot-Result: Gopher Robot Reviewed-by: Matthew Dempsky Auto-Submit: Cuong Manh Le Reviewed-on: https://go-review.googlesource.com/c/go/+/467035 Run-TryBot: Matthew Dempsky --- src/cmd/compile/internal/base/flag.go | 2 +- test/fixedbugs/issue56778.go | 2 +- test/inline.go | 2 +- test/noinit.go | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/cmd/compile/internal/base/flag.go b/src/cmd/compile/internal/base/flag.go index 25f8458e5c..be555c3d06 100644 --- a/src/cmd/compile/internal/base/flag.go +++ b/src/cmd/compile/internal/base/flag.go @@ -167,7 +167,7 @@ func ParseFlags() { Debug.ConcurrentOk = true Debug.InlFuncsWithClosures = 1 - Debug.InlStaticInit = 1 + Debug.InlStaticInit = 0 if buildcfg.Experiment.Unified { Debug.Unified = 1 } diff --git a/test/fixedbugs/issue56778.go b/test/fixedbugs/issue56778.go index 8bb5c3e213..3c27501fd2 100644 --- a/test/fixedbugs/issue56778.go +++ b/test/fixedbugs/issue56778.go @@ -1,4 +1,4 @@ -// compiledir +// compiledir -d=inlstaticinit=1 // Copyright 2022 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style diff --git a/test/inline.go b/test/inline.go index cf2cd8cd60..1aa8fccbbd 100644 --- a/test/inline.go +++ b/test/inline.go @@ -1,4 +1,4 @@ -// errorcheckwithauto -0 -m -d=inlfuncswithclosures=1 +// errorcheckwithauto -0 -m -d=inlfuncswithclosures=1 -d=inlstaticinit=1 // Copyright 2015 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style diff --git a/test/noinit.go b/test/noinit.go index ed8e572e51..505467cf8f 100644 --- a/test/noinit.go +++ b/test/noinit.go @@ -1,4 +1,4 @@ -// run +// run -gcflags=-d=inlstaticinit=1 //go:build !gcflags_noopt // Copyright 2010 The Go Authors. All rights reserved. -- 2.50.0