}
}
-// Called from instrumented code.
+// Called from runtime·racefuncenter (assembly).
#pragma textflag 7
void
-runtime·racefuncenter(uintptr pc)
+runtime·racefuncenter1(uintptr pc)
{
// If the caller PC is lessstack, use slower runtime·callers
// to walk across the stack split to find the real caller.
--- /dev/null
+// Copyright 2013 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+// +build race
+
+TEXT runtime·racefuncenter(SB),7,$0
+ PUSHQ DX // save function entry context (for closures)
+ CALL runtime·racefuncenter1(SB)
+ POPQ DX
+ RET