GCC Middle and Back End API Reference
et-forest.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  et_node
 

Functions

struct et_nodeet_new_tree (void *data)
 
void et_free_tree (struct et_node *)
 
void et_free_tree_force (struct et_node *)
 
void et_free_pools (void)
 
void et_set_father (struct et_node *, struct et_node *)
 
void et_split (struct et_node *)
 
struct et_nodeet_nca (struct et_node *, struct et_node *)
 
bool et_below (struct et_node *, struct et_node *)
 
struct et_nodeet_root (struct et_node *)
 

Function Documentation

◆ et_below()

bool et_below ( struct et_node * down,
struct et_node * up )
Checks whether the node UP is an ancestor of the node DOWN.   

References et_splay(), et_occ::next, NULL, et_occ::parent, et_occ::prev, r, et_node::rightmost_occ, set_next(), and set_prev().

Referenced by dominated_by_p().

◆ et_free_pools()

void et_free_pools ( void )
Release the alloc pools, if they are empty.   

References et_nodes, and et_occurrences.

Referenced by free_dominance_info(), and free_dominance_info_for_region().

◆ et_free_tree()

void et_free_tree ( struct et_node * t)

◆ et_free_tree_force()

void et_free_tree_force ( struct et_node * t)
Releases et tree T without maintaining other nodes.   

References et_nodes, et_occurrences, et_node::parent_occ, and et_node::rightmost_occ.

Referenced by free_dominance_info(), and free_dominance_info_for_region().

◆ et_nca()

struct et_node * et_nca ( struct et_node * n1,
struct et_node * n2 )
Finds the nearest common ancestor of the nodes N1 and N2.   

References et_occ::depth, et_splay(), et_occ::min, et_occ::min_occ, et_occ::next, NULL, et_occ::of, et_occ::parent, et_occ::prev, r, et_node::rightmost_occ, set_next(), and set_prev().

Referenced by nearest_common_dominator().

◆ et_new_tree()

◆ et_root()

struct et_node * et_root ( struct et_node * node)
Returns the root of the tree that contains NODE.   

References et_splay(), et_occ::next, r, and et_node::rightmost_occ.

Referenced by root_of_dom_tree().

◆ et_set_father()

◆ et_split()