osprey-gcc-4.2.0/gcc/tree-ssa-propagate.c File Reference

#include "config.h"
#include "system.h"
#include "coretypes.h"
#include "tm.h"
#include "tree.h"
#include "flags.h"
#include "rtl.h"
#include "tm_p.h"
#include "ggc.h"
#include "basic-block.h"
#include "output.h"
#include "expr.h"
#include "function.h"
#include "diagnostic.h"
#include "timevar.h"
#include "tree-dump.h"
#include "tree-flow.h"
#include "tree-pass.h"
#include "tree-ssa-propagate.h"
#include "langhooks.h"
#include "varray.h"
#include "vec.h"
#include "gt-tree-ssa-propagate.h"

Include dependency graph for tree-ssa-propagate.c:

Go to the source code of this file.

Data Types

type  prop_stats_d

Defines

#define STMT_IN_SSA_EDGE_WORKLIST(T)   TREE_DEPRECATED (T)

Functions/Subroutines

static VEC (basic_block, heap)
static void cfg_blocks_add (basic_block bb)
static basic_block cfg_blocks_get (void)
static void add_ssa_edge (tree var, bool is_varying)
static void add_control_edge (edge e)
static void simulate_stmt (tree stmt)
static void process_ssa_edge_worklist (VEC(tree, gc)**worklist)
static void simulate_block (basic_block block)
static void ssa_prop_init (void)
static void ssa_prop_fini (void)
tree get_rhs (tree stmt)
bool set_rhs (tree *stmt_p, tree expr)
void ssa_propagate (ssa_prop_visit_stmt_fn visit_stmt, ssa_prop_visit_phi_fn visit_phi)
tree first_vdef (tree stmt)
bool stmt_makes_single_load (tree stmt)
bool stmt_makes_single_store (tree stmt)
prop_value_tget_value_loaded_by (tree stmt, prop_value_t *values)
bool replace_uses_in (tree stmt, bool *replaced_addresses_p, prop_value_t *prop_value)
static bool replace_vuses_in (tree stmt, bool *replaced_addresses_p, prop_value_t *prop_value)
static void replace_phi_args_in (tree phi, prop_value_t *prop_value)
static bool fold_predicate_in (tree stmt)
void substitute_and_fold (prop_value_t *prop_value, bool use_ranges_p)

Variables

static ssa_prop_visit_stmt_fn ssa_prop_visit_stmt
static ssa_prop_visit_phi_fn ssa_prop_visit_phi
static sbitmap executable_blocks
static struct prop_stats_d prop_stats


Define Documentation

#define STMT_IN_SSA_EDGE_WORKLIST ( T   )     TREE_DEPRECATED (T)

Definition at line 127 of file tree-ssa-propagate.c.


Function Documentation

static void add_control_edge ( edge  e  )  [static]

static void add_ssa_edge ( tree  var,
bool  is_varying 
) [static]

static void cfg_blocks_add ( basic_block  bb  )  [static]

static basic_block cfg_blocks_get ( void   )  [static]

Definition at line 214 of file tree-ssa-propagate.c.

References gcc_assert, basic_block_def::index, RESET_BIT, VEC_index, and VEC_length.

tree first_vdef ( tree  stmt  ) 

static bool fold_predicate_in ( tree  stmt  )  [static]

tree get_rhs ( tree  stmt  ) 

prop_value_t* get_value_loaded_by ( tree  stmt,
prop_value_t values 
)

static void process_ssa_edge_worklist ( VEC(tree, gc)**  worklist  )  [static]

static void replace_phi_args_in ( tree  phi,
prop_value_t prop_value 
) [static]

bool replace_uses_in ( tree  stmt,
bool replaced_addresses_p,
prop_value_t prop_value 
)

static bool replace_vuses_in ( tree  stmt,
bool replaced_addresses_p,
prop_value_t prop_value 
) [static]

bool set_rhs ( tree stmt_p,
tree  expr 
)

static void simulate_block ( basic_block  block  )  [static]

static void simulate_stmt ( tree  stmt  )  [static]

static void ssa_prop_fini ( void   )  [static]

Definition at line 512 of file tree-ssa-propagate.c.

References NULL, sbitmap_free, and VEC_free.

static void ssa_prop_init ( void   )  [static]

void ssa_propagate ( ssa_prop_visit_stmt_fn  visit_stmt,
ssa_prop_visit_phi_fn  visit_phi 
)

bool stmt_makes_single_load ( tree  stmt  ) 

bool stmt_makes_single_store ( tree  stmt  ) 

void substitute_and_fold ( prop_value_t prop_value,
bool  use_ranges_p 
)

static VEC ( basic_block  ,
heap   
) [static]

Definition at line 133 of file tree-ssa-propagate.c.


Variable Documentation

Definition at line 130 of file tree-ssa-propagate.c.

Definition at line 119 of file tree-ssa-propagate.c.

Definition at line 118 of file tree-ssa-propagate.c.


Generated on Wed Apr 8 14:22:58 2009 for Open64 by  doxygen 1.5.6