X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2Ftree-flow.h;h=2835c221f0155cb35b9dbd4fa486d0be5c370696;hb=8d0afcccdc8ad93ff596ef95b44d520d6b3c73ae;hp=9fb4ff2d075490e7338f6e7cd4266b2315a73a56;hpb=8b292c7fd44e6f7173c655b1c02878367b128081;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/tree-flow.h b/gcc/tree-flow.h index 9fb4ff2d075..2835c221f01 100644 --- a/gcc/tree-flow.h +++ b/gcc/tree-flow.h @@ -121,10 +121,6 @@ struct tree_ann_common_d GTY(()) /* Annotation type. */ enum tree_ann_type type; - /* Auxiliary info specific to a pass. At all times, this - should either point to valid data or be NULL. */ - PTR GTY ((skip (""))) aux; - /* The value handle for this expression. Used by GVN-PRE. */ tree GTY((skip)) value_handle; }; @@ -264,9 +260,9 @@ struct var_ann_d GTY(()) typedef struct immediate_use_iterator_d { - ssa_imm_use_t *imm_use; - ssa_imm_use_t *end_p; - ssa_imm_use_t iter_node; + ssa_use_operand_t *imm_use; + ssa_use_operand_t *end_p; + ssa_use_operand_t iter_node; } imm_use_iterator; @@ -315,7 +311,7 @@ struct stmt_ann_d GTY(()) basic_block GTY ((skip (""))) bb; /* Operand cache for stmt. */ - struct stmt_operands_d operands; + struct stmt_operands_d GTY ((skip (""))) operands; /* Set of variables that have had their address taken in the statement. */ bitmap addresses_taken; @@ -325,6 +321,10 @@ struct stmt_ann_d GTY(()) pass which needs statement UIDs. */ unsigned int uid; + /* Auxiliary info specific to a pass. At all times, this + should either point to valid data or be NULL. */ + PTR GTY ((skip (""))) aux; + /* Linked list of histograms for value-based profiling. This is really a struct histogram_value*. We use void* to avoid having to export that everywhere, and to avoid having to put it in GC memory. */ @@ -362,10 +362,6 @@ static inline int get_lineno (tree); static inline const char *get_filename (tree); static inline bool is_exec_stmt (tree); static inline bool is_label_stmt (tree); -static inline v_may_def_optype get_v_may_def_ops (stmt_ann_t); -static inline vuse_optype get_vuse_ops (stmt_ann_t); -static inline use_optype get_use_ops (stmt_ann_t); -static inline def_optype get_def_ops (stmt_ann_t); static inline bitmap addresses_taken (tree); static inline void set_default_def (tree, tree); static inline tree default_def (tree); @@ -410,10 +406,10 @@ static inline void set_phi_nodes (basic_block, tree); Global declarations ---------------------------------------------------------------------------*/ /* Array of all variables referenced in the function. */ -extern GTY(()) varray_type referenced_vars; +extern GTY(()) VEC(tree,gc) *referenced_vars; -#define num_referenced_vars VARRAY_ACTIVE_SIZE (referenced_vars) -#define referenced_var(i) VARRAY_TREE (referenced_vars, i) +#define num_referenced_vars VEC_length (tree, referenced_vars) +#define referenced_var(i) VEC_index (tree, referenced_vars, i) /* Array of all SSA_NAMEs used in the function. */ extern GTY(()) VEC(tree,gc) *ssa_names; @@ -545,6 +541,7 @@ extern tree gimplify_build2 (block_stmt_iterator *, enum tree_code, tree, tree, tree); extern tree gimplify_build3 (block_stmt_iterator *, enum tree_code, tree, tree, tree, tree); +extern void init_empty_tree_cfg (void); /* In tree-pretty-print.c. */ extern void dump_generic_bb (FILE *, basic_block, int, int); @@ -697,7 +694,7 @@ bool empty_block_p (basic_block); void tree_ssa_lim (struct loops *); void tree_ssa_unswitch_loops (struct loops *); void canonicalize_induction_variables (struct loops *); -void tree_unroll_loops_completely (struct loops *); +void tree_unroll_loops_completely (struct loops *, bool); void tree_ssa_iv_optimize (struct loops *); bool number_of_iterations_exit (struct loop *, edge, @@ -765,10 +762,10 @@ void print_value_expressions (FILE *, tree); /* In tree-vn.c */ bool expressions_equal_p (tree, tree); tree get_value_handle (tree); -hashval_t vn_compute (tree, hashval_t, vuse_optype); -tree vn_lookup_or_add (tree, vuse_optype); -void vn_add (tree, tree, vuse_optype); -tree vn_lookup (tree, vuse_optype); +hashval_t vn_compute (tree, hashval_t, tree); +tree vn_lookup_or_add (tree, tree); +void vn_add (tree, tree, tree); +tree vn_lookup (tree, tree); void vn_init (void); void vn_delete (void);