From: Dmitriy Vyukov Date: Tue, 6 Nov 2012 16:54:22 +0000 (+0400) Subject: runtime: mark race instrumentation callbacks as nosplitstack X-Git-Tag: go1.1rc2~1958 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=0ead18c59e357d79f10e3132d4b1b2fede577cbb;p=gostls13.git runtime: mark race instrumentation callbacks as nosplitstack It speedups the race detector somewhat, but also prevents getcallerpc() from obtaining lessstack(). R=golang-dev, iant CC=golang-dev https://golang.org/cl/6812091 --- diff --git a/src/pkg/runtime/race.c b/src/pkg/runtime/race.c index bea16cc832..ef7eec2b6b 100644 --- a/src/pkg/runtime/race.c +++ b/src/pkg/runtime/race.c @@ -47,6 +47,8 @@ runtime·racefini(void) } // Called from instrumented code. +// If we split stack, getcallerpc() can return runtime·lessstack(). +#pragma textflag 7 void runtime·racewrite(uintptr addr) { @@ -58,6 +60,8 @@ runtime·racewrite(uintptr addr) } // Called from instrumented code. +// If we split stack, getcallerpc() can return runtime·lessstack(). +#pragma textflag 7 void runtime·raceread(uintptr addr) { @@ -69,6 +73,7 @@ runtime·raceread(uintptr addr) } // Called from instrumented code. +#pragma textflag 7 void runtime·racefuncenter(uintptr pc) { @@ -83,6 +88,7 @@ runtime·racefuncenter(uintptr pc) } // Called from instrumented code. +#pragma textflag 7 void runtime·racefuncexit(void) {