corn/include/backtrace.h
2024-01-30 10:19:33 -05:00

20 lines
576 B
C

#pragma once
#include <stddef.h>
// Fill dst with a stack trace consisting of return addresses
// in order from top to bottom. returns the number filled (at most len)
size_t backtrace(void **dst, size_t len);
// same as backtrace but with specified instruction and base pointer
size_t backtrace_ex(void **dst, size_t len, void* ip, void *bp);
// TODO symbols
//size_t backtrace_symbols(char *const *dst, size_t len);
// Log a backtrace
void log_backtrace();
// same as log_backtrace with specified insruction and base pointer
void log_backtrace_ex(void *ip, void *bp);