QuakeForge  0.7.2.210-815cf
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
dagnode_s Struct Reference
Collaboration diagram for dagnode_s:
[legend]

Data Fields

int cost
 cost of this node in temp vars More...
 
struct set_sidentifiers
 set of identifiers attached to this node More...
 
unsigned killed:1
 node is unavailable for cse More...
 
daglabel_tlabel
 ident/const if leaf node, or operator More...
 
struct dagnode_snext
 
int number
 index into array of nodes in dag_t More...
 
struct set_sparents
 empty if root node More...
 
etype_t tl
 
int topo
 topological sort order More...
 
st_type_t type
 type of node (st_node = leaf) More...
 
struct operand_svalue
 operand holding the value of this node More...
 
child nodes

if children[0] is null, the rest must be null as well.

Similar for children[1].

edges is the set of all nodes upon which this node depends. ie, they must be evaluated before this node is evaluted. So while nodes in edges may not be true children of this node, they are effective children in the DAG. That is, edges is for producing a correct topological sort of the DAG.

struct dagnode_schildren [3]
 
etype_t types [3]
 desired type of each operand (to alias) More...
 
struct set_sedges
 includes nodes pointed to by children More...
 

Field Documentation

struct dagnode_s* children[3]
int cost

cost of this node in temp vars

struct set_s* edges

includes nodes pointed to by children

struct set_s* identifiers

set of identifiers attached to this node

unsigned killed

node is unavailable for cse

daglabel_t* label

ident/const if leaf node, or operator

struct dagnode_s* next
int number

index into array of nodes in dag_t

struct set_s* parents

empty if root node

etype_t tl
int topo

topological sort order

st_type_t type

type of node (st_node = leaf)

etype_t types[3]

desired type of each operand (to alias)

struct operand_s* value

operand holding the value of this node


The documentation for this struct was generated from the following file: