- Sort Score
- Result 10 results
- Languages All
Results 1 - 10 of 49 for unwinding (0.12 sec)
-
src/runtime/runtime-seh_windows_test.go
if runtime.GOARCH != "amd64" { t.Skip("skipping amd64-only test") } // This test checks that Win32 is able to retrieve // function metadata stored in the .pdata section // by the Go linker. // Win32 unwinding will fail if this test fails, // as RtlUnwindEx uses RtlLookupFunctionEntry internally. // If that's the case, don't bother investigating further, // first fix the .pdata generation. sehf1pc := abi.FuncPCABIInternal(sehf1)
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Jul 31 16:52:06 UTC 2023 - 4.7K bytes - Viewed (0) -
src/runtime/tracestack.go
// // fpunwindExpand checks if pcBuf contains logical frames (which include inlined // frames) or physical frames (produced by frame pointer unwinding) using a // sentinel value in pcBuf[0]. Logical frames are simply returned without the // sentinel. Physical frames are turned into logical frames via inline unwinding // and by applying the skip value that's stored in pcBuf[0]. func fpunwindExpand(dst, pcBuf []uintptr) int { if len(pcBuf) == 0 {
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue May 21 14:38:56 UTC 2024 - 11K bytes - Viewed (0) -
src/runtime/testdata/testwinlib/main.c
c->Rsp += 8; #elif defined(_X86_) c->Eip = *(DWORD *)c->Esp; c->Esp += 4; #else c->Pc = c->Lr; #endif #ifdef _ARM64_ // TODO: remove when windows/arm64 supports SEH stack unwinding. return EXCEPTION_CONTINUE_EXECUTION; #endif } return EXCEPTION_CONTINUE_SEARCH; } LONG WINAPI customContinueHandlder(struct _EXCEPTION_POINTERS *ExceptionInfo) {
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Thu Oct 05 08:26:52 UTC 2023 - 2.5K bytes - Viewed (0) -
test/typeparam/issue58513.go
// However, when these expressions are inlined, we were constructing // the function literal bodies with the inline-adjusted positions // instead of the original (inline-free) positions, which could lead // to infinite loops when unwinding the stack. package main import "runtime" func assert[_ any]() { panic(0) } func Assert[To any]() func() { return assert[To] } type asserter[_ any] struct{}
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Feb 27 23:07:49 UTC 2023 - 1.2K bytes - Viewed (0) -
src/runtime/signal_arm64.go
c.set_sp(sp) *(*uint64)(unsafe.Pointer(uintptr(sp))) = c.lr() // Make sure a valid frame pointer is saved on the stack so that the // frame pointer checks in adjustframe are happy, if they're enabled. // Frame pointer unwinding won't visit the sigpanic frame, since // sigpanic will save the same frame pointer before calling into a panic // function. *(*uint64)(unsafe.Pointer(uintptr(sp - goarch.PtrSize))) = c.r29() pc := gp.sigpc
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Wed Apr 05 18:16:00 UTC 2023 - 3.8K bytes - Viewed (0) -
src/runtime/symtabinl_test.go
// We're probably in the trailing function padding, where findfunc // still returns f but there's no symbolic information. Just keep // going until we definitely hit the end. If we see a "?" in the // middle of unwinding, that's a real problem. // // TODO: If we ever have function end information, use that to make // this robust. continue } for ; uf.valid(); uf = u.next(uf) { file, line := u.fileLine(uf)
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri May 17 15:41:45 UTC 2024 - 3K bytes - Viewed (0) -
src/internal/abi/symtab.go
// The traceback routines cannot encode such changes into the // pcsp tables, so the function traceback cannot safely unwind past // SPWrite functions. Stopping at an SPWrite function is considered // to be an incomplete unwinding of the stack. In certain contexts // (in particular garbage collector stack scans) that is a fatal error. FuncFlagSPWrite // FuncFlagAsm indicates that a function was implemented in assembly. FuncFlagAsm )
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri Feb 16 14:25:22 UTC 2024 - 3.6K bytes - Viewed (0) -
src/runtime/os3_plan9.go
pc := c.pc() sp := c.sp() // If we don't recognize the PC as code // but we do recognize the top pointer on the stack as code, // then assume this was a call to non-code and treat like // pc == 0, to make unwinding show the context. if pc != 0 && !findfunc(pc).valid() && findfunc(*(*uintptr)(unsafe.Pointer(sp))).valid() { pc = 0 } // IF LR exists, sigpanictramp must save it to the stack
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri May 17 15:41:45 UTC 2024 - 4K bytes - Viewed (0) -
src/runtime/callers_test.go
} func TestFPUnwindAfterRecovery(t *testing.T) { if !runtime.FramePointerEnabled { t.Skip("frame pointers not supported for this architecture") } // Make sure that frame pointer unwinding succeeds from a deferred // function run after recovering from a panic. It can fail if the // recovery does not properly restore the caller's frame pointer before // running the remaining deferred functions. //
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Aug 28 21:36:31 UTC 2023 - 12.1K bytes - Viewed (0) -
src/runtime/signal_windows.go
} // After this point, it is safe to grow the stack. // Make it look like a call to the signal func. // Have to pass arguments out of band since // augmenting the stack frame would break // the unwinding code. gp.sig = info.exceptioncode gp.sigcode0 = info.exceptioninformation[0] gp.sigcode1 = info.exceptioninformation[1] gp.sigpc = r.ip() // Only push runtime·sigpanic if r.ip() != 0.
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue Oct 17 20:32:29 UTC 2023 - 14.5K bytes - Viewed (0)