dwarf-assembly/shared/context_struct.h

24 lines
465 B
C
Raw Normal View History

#include <stdint.h>
2018-06-22 09:12:32 +02:00
typedef enum {
UNWF_RIP=0,
UNWF_RSP=1,
UNWF_RBP=2,
2018-06-22 09:14:56 +02:00
UNWF_RBX=3,
2018-06-22 09:12:32 +02:00
UNWF_ERROR=7
} unwind_flags_t;
typedef struct {
2018-06-22 09:12:32 +02:00
uint8_t flags;
2018-06-22 09:14:56 +02:00
uintptr_t rip, rsp, rbp, rbx;
} unwind_context_t;
2018-04-27 11:05:34 +02:00
typedef uintptr_t (*deref_func_t)(uintptr_t);
typedef unwind_context_t (*_fde_func_t)(unwind_context_t, uintptr_t);
typedef unwind_context_t (*_fde_func_with_deref_t)(
unwind_context_t,
uintptr_t,
deref_func_t);