diff options
author | Ian Lance Taylor <ian@gcc.gnu.org> | 2015-04-17 21:29:20 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@gcc.gnu.org> | 2015-04-17 21:29:20 +0000 |
commit | d6c2d7c1ca10991d6c8159325a69a5f0ba48b94f (patch) | |
tree | 77e29dc8ecd2f053caff12333b2bea420f4d41ef | |
parent | 5fdb119fd5fb0892b653e829beb4e8e9afaf9e4c (diff) | |
download | gcc-d6c2d7c1ca10991d6c8159325a69a5f0ba48b94f.zip gcc-d6c2d7c1ca10991d6c8159325a69a5f0ba48b94f.tar.gz gcc-d6c2d7c1ca10991d6c8159325a69a5f0ba48b94f.tar.bz2 |
re PR go/64683 (FAIL: runtime/pprof -- testing.go:278: The entry did not match)
PR go/64683
runtime/pprof: Assume function with no name is in runtime.
GCC PR 65797 causes some of the runtime functions to be
compiled with no name in the debug info. This in turn causes
the runtime/pprof test to fail as reported in GCC PR 64683.
There are no good choices when a function has no name in the
debug info, but here we assume that if we see such a function
while reading the runtime functions, we assume that it is also
a runtime function.
From-SVN: r222200
-rw-r--r-- | libgo/go/runtime/pprof/pprof.go | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/libgo/go/runtime/pprof/pprof.go b/libgo/go/runtime/pprof/pprof.go index 9c63ccd..38593af 100644 --- a/libgo/go/runtime/pprof/pprof.go +++ b/libgo/go/runtime/pprof/pprof.go @@ -351,6 +351,10 @@ func printStackRecord(w io.Writer, stk []uintptr, allFrames bool) { if !show && !strings.Contains(name, ".") && strings.HasPrefix(name, "__go_") { continue } + if !show && name == "" { + // This can happen due to http://gcc.gnu.org/PR65797. + continue + } show = true fmt.Fprintf(w, "#\t%#x\t%s+%#x\t%s:%d\n", pc, name, pc-f.Entry(), file, line) } |