HPCToolkit
backtrace.h File Reference
#include <stddef.h>
#include <stdint.h>
#include <stdbool.h>
#include <ucontext.h>
#include <hpcrun/utilities/ip-normalized.h>
#include <unwind/common/unw-datatypes.h>
#include <unwind/common/backtrace_info.h>
#include <hpcrun/frame.h>
Include dependency graph for backtrace.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  backtrace_t
 
struct  bt_iter_t
 

Typedefs

typedef struct backtrace_t backtrace_t
 
typedef struct bt_iter_t bt_iter_t
 
typedef bool bt_fn(backtrace_t *bt, ucontext_t *context)
 
typedef void * bt_fn_arg
 
typedef void(* bt_mut_fn) (backtrace_t *bt, bt_fn_arg arg)
 

Functions

bool hpcrun_backtrace_std (backtrace_t *bt, ucontext_t *context)
 
frame_thpcrun_skip_chords (frame_t *bt_outer, frame_t *bt_inner, int skip)
 
void hpcrun_bt_dump (frame_t *unwind, const char *tag)
 
void hpcrun_bt_init (backtrace_t *bt, size_t size)
 
bool hpcrun_generate_backtrace (backtrace_info_t *bt, ucontext_t *context, int skipInner)
 
bool hpcrun_generate_backtrace_no_trampoline (backtrace_info_t *bt, ucontext_t *context, int skipInner)
 

Typedef Documentation

◆ backtrace_t

typedef struct backtrace_t backtrace_t

◆ bt_fn

typedef bool bt_fn(backtrace_t *bt, ucontext_t *context)

Definition at line 99 of file backtrace.h.

◆ bt_fn_arg

typedef void* bt_fn_arg

Definition at line 100 of file backtrace.h.

◆ bt_iter_t

typedef struct bt_iter_t bt_iter_t

◆ bt_mut_fn

typedef void(* bt_mut_fn) (backtrace_t *bt, bt_fn_arg arg)

Definition at line 101 of file backtrace.h.

Function Documentation

◆ hpcrun_backtrace_std()

bool hpcrun_backtrace_std ( backtrace_t bt,
ucontext_t *  context 
)

◆ hpcrun_bt_dump()

void hpcrun_bt_dump ( frame_t unwind,
const char *  tag 
)

Definition at line 90 of file backtrace.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hpcrun_bt_init()

void hpcrun_bt_init ( backtrace_t bt,
size_t  size 
)

Definition at line 142 of file backtrace.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hpcrun_generate_backtrace()

bool hpcrun_generate_backtrace ( backtrace_info_t bt,
ucontext_t *  context,
int  skipInner 
)

Definition at line 307 of file backtrace.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hpcrun_generate_backtrace_no_trampoline()

bool hpcrun_generate_backtrace_no_trampoline ( backtrace_info_t bt,
ucontext_t *  context,
int  skipInner 
)

Definition at line 178 of file backtrace.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hpcrun_skip_chords()

frame_t* hpcrun_skip_chords ( frame_t bt_outer,
frame_t bt_inner,
int  skip 
)

Definition at line 152 of file backtrace.c.

Here is the call graph for this function:
Here is the caller graph for this function: