HPCToolkit
x86-unwind-interval.h File Reference
#include <stdbool.h>
#include <unwind/common/binarytree_uwi.h>
#include <unwind/common/unwind-interval.h>
Include dependency graph for x86-unwind-interval.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  x86registers_s
 
struct  x86recipe_s
 

Macros

#define lstartaddr   ((unsigned long) startaddr)
 
#define lendaddr   ((unsigned long) endaddr)
 
#define UWI_RECIPE(btuwi)   ((x86recipe_t*)bitree_uwi_recipe(btuwi))
 

Typedefs

typedef bitree_uwi_t unwind_interval
 
typedef struct x86registers_s x86registers_t
 
typedef struct x86recipe_s x86recipe_t
 

Enumerations

enum  ra_loc {
  RA_SP_RELATIVE, RA_STD_FRAME, RA_BP_FRAME, RA_REGISTER,
  POISON
}
 
enum  bp_loc { BP_UNCHANGED, BP_SAVED, BP_HOSED }
 

Functions

void set_ui_canonical (unwind_interval *u, unwind_interval *value)
 
unwind_intervalnew_ui (char *startaddr, ra_loc ra_status, const x86registers_t *reg)
 
unwind_intervalfluke_ui (char *pc, unsigned int sp_ra_pos)
 
void link_ui (unwind_interval *current, unwind_interval *next)
 
void dump_ui (unwind_interval *u, int dump_to_stderr)
 
void dump_ui_stderr (unwind_interval *u)
 
void dump_ui_log (unwind_interval *u)
 
void dump_ui_dbg (unwind_interval *u)
 
void dump_ui_troll (unwind_interval *u)
 
void suspicious_interval (void *pc)
 
void x86recipe_tostr (void *recipe, char str[])
 
void x86recipe_print (void *recipe)
 

Macro Definition Documentation

◆ lendaddr

#define lendaddr   ((unsigned long) endaddr)

Definition at line 59 of file x86-unwind-interval.h.

◆ lstartaddr

#define lstartaddr   ((unsigned long) startaddr)

Definition at line 58 of file x86-unwind-interval.h.

◆ UWI_RECIPE

#define UWI_RECIPE (   btuwi)    ((x86recipe_t*)bitree_uwi_recipe(btuwi))

Definition at line 83 of file x86-unwind-interval.h.

Typedef Documentation

◆ unwind_interval

Definition at line 90 of file x86-unwind-interval.h.

◆ x86recipe_t

typedef struct x86recipe_s x86recipe_t

◆ x86registers_t

Enumeration Type Documentation

◆ bp_loc

enum bp_loc
Enumerator
BP_UNCHANGED 
BP_SAVED 
BP_HOSED 

Definition at line 96 of file x86-unwind-interval.h.

◆ ra_loc

enum ra_loc
Enumerator
RA_SP_RELATIVE 
RA_STD_FRAME 
RA_BP_FRAME 
RA_REGISTER 
POISON 

Definition at line 92 of file x86-unwind-interval.h.

Function Documentation

◆ dump_ui()

void dump_ui ( unwind_interval u,
int  dump_to_stderr 
)

Definition at line 168 of file x86-unwind-interval.c.

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

◆ dump_ui_dbg()

void dump_ui_dbg ( unwind_interval u)

Definition at line 195 of file x86-unwind-interval.c.

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

◆ dump_ui_log()

void dump_ui_log ( unwind_interval u)

Definition at line 158 of file x86-unwind-interval.c.

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

◆ dump_ui_stderr()

void dump_ui_stderr ( unwind_interval u)

Definition at line 185 of file x86-unwind-interval.c.

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

◆ dump_ui_troll()

void dump_ui_troll ( unwind_interval u)

Definition at line 206 of file x86-unwind-interval.c.

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

◆ fluke_ui()

unwind_interval* fluke_ui ( char *  pc,
unsigned int  sp_ra_pos 
)

Definition at line 113 of file x86-unwind-interval.c.

Here is the call graph for this function:

◆ link_ui()

void link_ui ( unwind_interval current,
unwind_interval next 
)

Definition at line 151 of file ppc64-unwind-interval.c.

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

◆ new_ui()

unwind_interval* new_ui ( char *  startaddr,
ra_loc  ra_status,
const x86registers_t reg 
)

Definition at line 82 of file x86-unwind-interval.c.

Here is the call graph for this function:

◆ set_ui_canonical()

void set_ui_canonical ( unwind_interval u,
unwind_interval value 
)

Definition at line 107 of file x86-unwind-interval.c.

Here is the caller graph for this function:

◆ suspicious_interval()

void suspicious_interval ( void *  pc)

Definition at line 216 of file ppc64-unwind-interval.c.

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

◆ x86recipe_print()

void x86recipe_print ( void *  recipe)

Definition at line 226 of file x86-unwind-interval.c.

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

◆ x86recipe_tostr()

void x86recipe_tostr ( void *  recipe,
char  str[] 
)

Definition at line 216 of file x86-unwind-interval.c.

Here is the caller graph for this function: