MCPcopy Create free account
hub / github.com/F-Stack/f-stack / unwind_frame

Function unwind_frame

freebsd/arm64/arm64/unwind.c:38–55  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

36#include <machine/vmparam.h>
37
38bool
39unwind_frame(struct thread *td, struct unwind_state *frame)
40{
41 uintptr_t fp;
42
43 fp = frame->fp;
44
45 if (!kstack_contains(td, fp, sizeof(uintptr_t) * 2))
46 return (false);
47
48 frame->sp = fp + sizeof(uintptr_t) * 2;
49 /* FP to previous frame (X29) */
50 frame->fp = ((uintptr_t *)fp)[0];
51 /* LR (X30) */
52 frame->pc = ((uintptr_t *)fp)[1] - 4;
53
54 return (true);
55}

Callers 3

db_stack_trace_cmdFunction · 0.85
stack_captureFunction · 0.85
kcsan_md_unwindFunction · 0.85

Calls 1

kstack_containsFunction · 0.85

Tested by

no test coverage detected