aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@gcc.gnu.org>2015-01-20 16:11:36 +0000
committerIan Lance Taylor <ian@gcc.gnu.org>2015-01-20 16:11:36 +0000
commit73cb399d519cb8ca4a25b0be074aca16096f6e51 (patch)
tree825e4e089cc744fa47a383aaa458b35b3c2d7ff0
parenta9ce4e4a70e10377a3033ded9392d67a92a0e2c1 (diff)
downloadgcc-73cb399d519cb8ca4a25b0be074aca16096f6e51.zip
gcc-73cb399d519cb8ca4a25b0be074aca16096f6e51.tar.gz
gcc-73cb399d519cb8ca4a25b0be074aca16096f6e51.tar.bz2
re PR go/64683 (FAIL: runtime/pprof -- testing.go:278: The entry did not match)
PR go/64683 runtime/pprof: Let memory profiler test pass if value not collected. Since gccgo's GC is not precise, the transient value may not be collected. Let the regexp match that case as well. From-SVN: r219900
-rw-r--r--libgo/go/runtime/pprof/mprof_test.go6
1 files changed, 4 insertions, 2 deletions
diff --git a/libgo/go/runtime/pprof/mprof_test.go b/libgo/go/runtime/pprof/mprof_test.go
index d4a9485..44a3850 100644
--- a/libgo/go/runtime/pprof/mprof_test.go
+++ b/libgo/go/runtime/pprof/mprof_test.go
@@ -85,10 +85,12 @@ func TestMemoryProfiler(t *testing.T) {
# 0x[0-9,a-f]+ runtime_pprof_test\.TestMemoryProfiler\+0x[0-9,a-f]+ .*/mprof_test.go:64
`, (1<<10)*memoryProfilerRun, (1<<20)*memoryProfilerRun),
- fmt.Sprintf(`0: 0 \[%v: %v\] @ 0x[0-9,a-f x]+
+ // This should start with "0: 0" but gccgo's imprecise
+ // GC means that sometimes the value is not collected.
+ fmt.Sprintf(`(0|%v): (0|%v) \[%v: %v\] @ 0x[0-9,a-f x]+
# 0x[0-9,a-f]+ pprof_test\.allocateTransient2M\+0x[0-9,a-f]+ .*/mprof_test.go:30
# 0x[0-9,a-f]+ runtime_pprof_test\.TestMemoryProfiler\+0x[0-9,a-f]+ .*/mprof_test.go:65
-`, memoryProfilerRun, (2<<20)*memoryProfilerRun),
+`, memoryProfilerRun, (2<<20)*memoryProfilerRun, memoryProfilerRun, (2<<20)*memoryProfilerRun),
}
for _, test := range tests {