QuakeForge  0.7.2.210-815cf
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
DAG building

Data Structures

struct  dag_s
 
struct  daglabel_s
 
struct  dagnode_s
 

Typedefs

typedef struct dag_s dag_t
 
typedef struct daglabel_s daglabel_t
 
typedef struct dagnode_s dagnode_t
 

Functions

dag_tdag_create (struct flownode_s *flownode)
 Make a dag for a single basic block. More...
 
void dag_generate (dag_t *dag, sblock_t *block)
 
void dag_remove_dead_nodes (dag_t *dag)
 
const char * daglabel_string (daglabel_t *label)
 
void dot_dump_dag (void *_dag, const char *filename)
 
void print_dag (struct dstring_s *dstr, dag_t *dag, const char *label)
 

Detailed Description

Typedef Documentation

typedef struct dag_s dag_t
typedef struct daglabel_s daglabel_t
typedef struct dagnode_s dagnode_t

Function Documentation

dag_t* dag_create ( struct flownode_s flownode)

Make a dag for a single basic block.

Parameters
flownodeThe flow graph node representing the basic block for which the dag will be created. The node should have its live variable information already computed.
Returns
The dag representing the basic block.
void dag_generate ( dag_t dag,
sblock_t block 
)
void dag_remove_dead_nodes ( dag_t dag)
const char* daglabel_string ( daglabel_t label)
void dot_dump_dag ( void *  _dag,
const char *  filename 
)
void print_dag ( struct dstring_s dstr,
dag_t dag,
const char *  label 
)