- Sort Score
- Result 10 results
- Languages All
Results 1 - 10 of 11 for g_racectx (0.28 sec)
-
src/runtime/race_ppc64le.s
// Call a __tsan function from Go code. // R8 = tsan function address // R3 = *ThreadState a.k.a. g_racectx from g // R4 = addr passed to __tsan function // // Otherwise, setup goroutine context and invoke racecall. Other arguments already set. TEXT racecalladdr<>(SB), NOSPLIT, $0-0 MOVD runtime·tls_g(SB), R10 MOVD 0(R10), g MOVD g_racectx(g), R3 // goroutine context
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri May 17 18:37:29 UTC 2024 - 17K bytes - Viewed (0) -
src/runtime/race_s390x.s
MOVD $__tsan_go_ignore_sync_begin(SB), R1 MOVD g_racectx(g), R2 // ThreadState *. BL racecall<>(SB) MOVD R6, R1 // Restore target function. MOVD g_racectx(g), R2 // ThreadState *. MOVD 8(R15), R3 // Caller PC. MOVD R7, R4 // PC. ADD $24, R15, R5 // Arguments. BL racecall<>(SB) MOVD $__tsan_go_ignore_sync_end(SB), R1 MOVD g_racectx(g), R2 // ThreadState *. BL racecall<>(SB) RET
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri May 17 18:37:29 UTC 2024 - 13.1K bytes - Viewed (0) -
src/runtime/race_amd64.s
MOVQ AX, BX // remember the original function MOVQ $__tsan_go_ignore_sync_begin(SB), AX MOVQ g_racectx(R14), RARG0 // goroutine context CALL racecall<>(SB) MOVQ BX, AX // restore the original function // Call the atomic function. MOVQ g_racectx(R14), RARG0 // goroutine context MOVQ 8(SP), RARG1 // caller pc MOVQ (SP), RARG2 // pc LEAQ 16(SP), RARG3 // arguments
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri May 17 18:37:29 UTC 2024 - 15.1K bytes - Viewed (0) -
src/runtime/race_arm64.s
TEXT racefuncenter<>(SB), NOSPLIT, $0-0 load_g MOVD g_racectx(g), R0 // goroutine racectx MOVD R9, R1 // void __tsan_func_enter(ThreadState *thr, void *pc); MOVD $__tsan_func_enter(SB), R9 BL racecall<>(SB) RET // func runtime·racefuncexit() // Called from instrumented code. TEXT runtime·racefuncexit<ABIInternal>(SB), NOSPLIT, $0-0 load_g MOVD g_racectx(g), R0 // race context
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri May 17 18:37:29 UTC 2024 - 15.5K bytes - Viewed (0) -
src/runtime/race.go
} else { spawng = gp } var racectx uintptr racecall(&__tsan_go_start, spawng.racectx, uintptr(unsafe.Pointer(&racectx)), pc, 0) return racectx } //go:nosplit func racegoend() { racecall(&__tsan_go_end, getg().racectx, 0, 0, 0) } //go:nosplit func racectxend(racectx uintptr) { racecall(&__tsan_go_end, racectx, 0, 0, 0) } //go:nosplit
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri May 17 18:37:29 UTC 2024 - 20.4K bytes - Viewed (0) -
src/runtime/race0.go
func raceacquire(addr unsafe.Pointer) { throw("race") } func raceacquireg(gp *g, addr unsafe.Pointer) { throw("race") } func raceacquirectx(racectx uintptr, addr unsafe.Pointer) { throw("race") } func racerelease(addr unsafe.Pointer) { throw("race") }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Thu Oct 28 18:17:57 UTC 2021 - 2.8K bytes - Viewed (0) -
src/runtime/time.go
t.ts.zombies.Add(1) } t.updateHeap() } t.unlock() if raceenabled { // Temporarily use the current P's racectx for g0. gp := getg() if gp.racectx != 0 { throw("unexpected racectx") } gp.racectx = gp.m.p.ptr().timers.raceCtx } if ts != nil { ts.unlock() } async := debug.asynctimerchan.Load() != 0 if !async && t.isChan {
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri Mar 29 14:36:24 UTC 2024 - 37.5K bytes - Viewed (0) -
src/runtime/trace.go
if raceenabled { // g0 doesn't have a race context. Borrow the user G's. if getg().racectx != 0 { throw("expected racectx == 0") } getg().racectx = getg().m.curg.racectx // (This defer should get open-coded, which is safe on // the system stack.) defer func() { getg().racectx = 0 }() } // This function must not allocate while holding trace.lock:
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Wed May 22 21:17:41 UTC 2024 - 37.1K bytes - Viewed (0) -
src/runtime/export_test.go
// allocate and skew the stats. metricsLock() initMetrics() systemstack(func() { // Donate the racectx to g0. readMetricsLocked calls into the race detector // via map access. getg().racectx = getg().m.curg.racectx // Read the metrics once before in case it allocates and skews the metrics. // readMetricsLocked is designed to only allocate the first time it is called
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Thu May 30 17:50:53 UTC 2024 - 46.1K bytes - Viewed (0) -
src/runtime/proc.go
// Value to use for signal mask for newly created M's. var initSigmask sigset // The main goroutine. func main() { mp := getg().m // Racectx of m0->g0 is used only as the parent of the main goroutine. // It must not be used for anything else. mp.g0.racectx = 0 // Max stack size is 1 GB on 64-bit, 250 MB on 32-bit. // Using decimal instead of binary GB and MB because
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Wed May 29 17:58:53 UTC 2024 - 207.5K bytes - Viewed (0)