- Sort Score
- Result 10 results
- Languages All
Results 1 - 10 of 52 for unwinding (0.13 sec)
-
src/runtime/testdata/testprogcgo/panic.go
package main // This program will crash. // We want to test unwinding from a cgo callback. /* void call_callback(void); */ import "C" func init() { register("PanicCallback", PanicCallback) } //export panic_callback func panic_callback() { var i *int *i = 42 } func PanicCallback() { C.call_callback()
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Wed Oct 27 20:29:07 UTC 2021 - 312 bytes - Viewed (0) -
test/fixedbugs/issue51401.go
// Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. // Issue 51401: bad inline info in generated interface method wrapper // causes infinite loop in stack unwinding. package main import "runtime" type Outer interface{ Inner } type impl struct{} func New() Outer { return &impl{} } type Inner interface { DoStuff() error }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue Mar 01 21:27:42 UTC 2022 - 766 bytes - Viewed (0) -
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)