Skip to content

Commit 0bf6071

Browse files
cuonglmgopherbot
authored andcommitted
Revert "cmd/compile/internal: merge stack slots for selected local auto vars"
This reverts CL 553055. Reason for revert: causes crypto/ecdsa failures on linux ppc64/s390x builders Change-Id: I9266b030693a5b6b1e667a009de89d613755b048 Reviewed-on: https://go-review.googlesource.com/c/go/+/575236 Reviewed-by: Dmitri Shuralyov <[email protected]> Reviewed-by: Than McIntosh <[email protected]> Auto-Submit: Than McIntosh <[email protected]> LUCI-TryBot-Result: Go LUCI <[email protected]>
1 parent 89f7805 commit 0bf6071

File tree

14 files changed

+222
-1512
lines changed

14 files changed

+222
-1512
lines changed

src/cmd/compile/internal/base/debug.go

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,10 +41,6 @@ type DebugFlags struct {
4141
LoopVarHash string `help:"for debugging changes in loop behavior. Overrides experiment and loopvar flag."`
4242
LocationLists int `help:"print information about DWARF location list creation"`
4343
MaxShapeLen int `help:"hash shape names longer than this threshold (default 500)" concurrent:"ok"`
44-
MergeLocals int `help:"merge together non-interfering local stack slots" concurrent:"ok"`
45-
MergeLocalsDumpFunc string `help:"dump specified func in merge locals"`
46-
MergeLocalsHash string `help:"hash value for debugging stack slot merging of local variables" concurrent:"ok"`
47-
MergeLocalsTrace int `help:"trace debug output for locals merging"`
4844
Nil int `help:"print information about nil checks"`
4945
NoOpenDefer int `help:"disable open-coded defers" concurrent:"ok"`
5046
NoRefName int `help:"do not include referenced symbol names in object file" concurrent:"ok"`

src/cmd/compile/internal/base/flag.go

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -184,7 +184,6 @@ func ParseFlags() {
184184
Debug.SyncFrames = -1 // disable sync markers by default
185185
Debug.ZeroCopy = 1
186186
Debug.RangeFuncCheck = 1
187-
Debug.MergeLocals = 1
188187

189188
Debug.Checkptr = -1 // so we can tell whether it is set explicitly
190189

@@ -261,9 +260,6 @@ func ParseFlags() {
261260
if Debug.PGOHash != "" {
262261
PGOHash = NewHashDebug("pgohash", Debug.PGOHash, nil)
263262
}
264-
if Debug.MergeLocalsHash != "" {
265-
MergeLocalsHash = NewHashDebug("mergelocals", Debug.MergeLocalsHash, nil)
266-
}
267263

268264
if Flag.MSan && !platform.MSanSupported(buildcfg.GOOS, buildcfg.GOARCH) {
269265
log.Fatalf("%s/%s does not support -msan", buildcfg.GOOS, buildcfg.GOARCH)

src/cmd/compile/internal/base/hashdebug.go

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -53,10 +53,9 @@ func (d *HashDebug) SetInlineSuffixOnly(b bool) *HashDebug {
5353
// The default compiler-debugging HashDebug, for "-d=gossahash=..."
5454
var hashDebug *HashDebug
5555

56-
var FmaHash *HashDebug // for debugging fused-multiply-add floating point changes
57-
var LoopVarHash *HashDebug // for debugging shared/private loop variable changes
58-
var PGOHash *HashDebug // for debugging PGO optimization decisions
59-
var MergeLocalsHash *HashDebug // for debugging local stack slot merging changes
56+
var FmaHash *HashDebug // for debugging fused-multiply-add floating point changes
57+
var LoopVarHash *HashDebug // for debugging shared/private loop variable changes
58+
var PGOHash *HashDebug // for debugging PGO optimization decisions
6059

6160
// DebugHashMatchPkgFunc reports whether debug variable Gossahash
6261
//

src/cmd/compile/internal/ir/name.go

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -194,7 +194,6 @@ const (
194194
nameLibfuzzer8BitCounter // if PEXTERN should be assigned to __sancov_cntrs section
195195
nameCoverageAuxVar // instrumentation counter var or pkg ID for cmd/cover
196196
nameAlias // is type name an alias
197-
nameNonMergeable // not a candidate for stack slot merging
198197
)
199198

200199
func (n *Name) Readonly() bool { return n.flags&nameReadonly != 0 }
@@ -210,7 +209,6 @@ func (n *Name) InlLocal() bool { return n.flags&nameInlLocal !=
210209
func (n *Name) OpenDeferSlot() bool { return n.flags&nameOpenDeferSlot != 0 }
211210
func (n *Name) Libfuzzer8BitCounter() bool { return n.flags&nameLibfuzzer8BitCounter != 0 }
212211
func (n *Name) CoverageAuxVar() bool { return n.flags&nameCoverageAuxVar != 0 }
213-
func (n *Name) NonMergeable() bool { return n.flags&nameNonMergeable != 0 }
214212

215213
func (n *Name) setReadonly(b bool) { n.flags.set(nameReadonly, b) }
216214
func (n *Name) SetNeedzero(b bool) { n.flags.set(nameNeedzero, b) }
@@ -225,7 +223,6 @@ func (n *Name) SetInlLocal(b bool) { n.flags.set(nameInlLocal, b
225223
func (n *Name) SetOpenDeferSlot(b bool) { n.flags.set(nameOpenDeferSlot, b) }
226224
func (n *Name) SetLibfuzzer8BitCounter(b bool) { n.flags.set(nameLibfuzzer8BitCounter, b) }
227225
func (n *Name) SetCoverageAuxVar(b bool) { n.flags.set(nameCoverageAuxVar, b) }
228-
func (n *Name) SetNonMergeable(b bool) { n.flags.set(nameNonMergeable, b) }
229226

230227
// OnStack reports whether variable n may reside on the stack.
231228
func (n *Name) OnStack() bool {

0 commit comments

Comments
 (0)