From: David Chase Date: Wed, 18 Jul 2018 15:23:56 +0000 (-0400) Subject: cmd/compile: avoid compressed dwarf when testing for gdb on OSX X-Git-Tag: go1.11beta2~25 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=2fe2aa0983588686d11fbeedeb5acaa3fe96d03e;p=gostls13.git cmd/compile: avoid compressed dwarf when testing for gdb on OSX Until we figure out how to deal with gdb on Darwin (doesn't read compressed DWARF from binaries), avoid compressing DWARF in that case so that the test will still yield meaningful results. This is also reported to be a problem for Windows. Problem also exists for lldb, but this test doesn't check lldb. Updates #25925 Change-Id: I85c0e5db75f3329957290500626a3ac7f078f608 Reviewed-on: https://go-review.googlesource.com/124712 Run-TryBot: David Chase TryBot-Result: Gobot Gobot Reviewed-by: Heschi Kreinick --- diff --git a/src/cmd/compile/internal/ssa/debug_test.go b/src/cmd/compile/internal/ssa/debug_test.go index d0a7a69db9..0a409bec2c 100644 --- a/src/cmd/compile/internal/ssa/debug_test.go +++ b/src/cmd/compile/internal/ssa/debug_test.go @@ -143,14 +143,21 @@ func TestNexting(t *testing.T) { optFlags += " -l" } - subTest(t, debugger+"-dbg", "hist", dbgFlags) - subTest(t, debugger+"-dbg", "scopes", dbgFlags) - subTest(t, debugger+"-dbg", "i22558", dbgFlags) + moreargs := []string{} + if !*useDelve && (runtime.GOOS == "darwin" || runtime.GOOS == "windows") { + // gdb and lldb on Darwin do not deal with compressed dwarf. + // also, Windows. + moreargs = append(moreargs, "-ldflags=-compressdwarf=false") + } + + subTest(t, debugger+"-dbg", "hist", dbgFlags, moreargs...) + subTest(t, debugger+"-dbg", "scopes", dbgFlags, moreargs...) + subTest(t, debugger+"-dbg", "i22558", dbgFlags, moreargs...) - subTest(t, debugger+"-dbg-race", "i22600", dbgFlags, "-race") + subTest(t, debugger+"-dbg-race", "i22600", dbgFlags, append(moreargs, "-race")...) - optSubTest(t, debugger+"-opt", "hist", optFlags) - optSubTest(t, debugger+"-opt", "scopes", optFlags) + optSubTest(t, debugger+"-opt", "hist", optFlags, moreargs...) + optSubTest(t, debugger+"-opt", "scopes", optFlags, moreargs...) } // subTest creates a subtest that compiles basename.go with the specified gcflags and additional compiler arguments,