From: Ian Lance Taylor Date: Fri, 12 Apr 2013 12:23:38 +0000 (-0700) Subject: runtime: add a hook to disable precise GC X-Git-Tag: go1.1rc2~111 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=709e03f43dce8e6fde3398e01255c08d22cb1ee2;p=gostls13.git runtime: add a hook to disable precise GC This will let us ask people to rebuild the Go system without precise GC, and then rebuild and retest their program, to see if precise GC is causing whatever problem they are having. R=golang-dev, r CC=golang-dev https://golang.org/cl/8700043 --- diff --git a/src/pkg/runtime/mgc0.c b/src/pkg/runtime/mgc0.c index 64b5f0464a..f9dbdbb4a1 100644 --- a/src/pkg/runtime/mgc0.c +++ b/src/pkg/runtime/mgc0.c @@ -19,6 +19,7 @@ enum { DebugMark = 0, // run second pass to check mark CollectStats = 0, ScanStackByFrames = 0, + IgnorePreciseGC = 0, // Four bits per word (see #defines below). wordsPerBitmapWord = sizeof(void*)*8/4, @@ -771,6 +772,9 @@ scanblock(Workbuf *wbuf, Obj *wp, uintptr nobj, bool keepworking) pc = defaultProg; } + if(IgnorePreciseGC) + pc = defaultProg; + pc++; stack_top.b = (uintptr)b;