diff options
author | Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | 2007-08-14 15:18:11 +0000 |
---|---|---|
committer | Kaveh Ghazi <ghazi@gcc.gnu.org> | 2007-08-14 15:18:11 +0000 |
commit | 22ea9ec0e8acfd6a8e42aba3437bf61fd6fd04c3 (patch) | |
tree | 94820a53d64bc84958636e8e87e79b6b817705b9 /gcc/tree-flow-inline.h | |
parent | d39d658dbe7c5682da000db60d4ea6209ce6ab66 (diff) | |
download | gcc-22ea9ec0e8acfd6a8e42aba3437bf61fd6fd04c3.zip gcc-22ea9ec0e8acfd6a8e42aba3437bf61fd6fd04c3.tar.gz gcc-22ea9ec0e8acfd6a8e42aba3437bf61fd6fd04c3.tar.bz2 |
alias.c (component_uses_parent_alias_set): Constify.
* alias.c (component_uses_parent_alias_set): Constify.
* alias.h (component_uses_parent_alias_set): Likewise.
* cfgrtl.c (print_rtl_with_bb): Likewise.
* double-int.c (tree_to_double_int, double_int_fits_to_tree_p,
mpz_get_double_int): Likewise.
* double-int.h (double_int_fits_to_tree_p, tree_to_double_int,
mpz_get_double_int): Likewise.
* expr.c (is_aligning_offset, undefined_operand_subword_p,
mostly_zeros_p, all_zeros_p, safe_from_p, is_aligning_offset):
Likewise.
* expr.h (safe_from_p): Likewise.
* gimple-low.c (try_catch_may_fallthru, block_may_fallthru):
Likewise.
* gimplify.c (should_carry_locus_p, zero_sized_field_decl,
zero_sized_type, goa_lhs_expr_p): Likewise.
* omp-low.c (is_variable_sized, use_pointer_for_field): Likewise.
* rtl.h (print_rtl_with_bb): Likewise.
* sched-vis.c (print_exp, print_value, print_pattern): Likewise.
* tree-cfg.c (const_first_stmt, const_last_stmt): New.
* tree-flow-inline.h (bb_stmt_list): Constify.
(cbsi_start, cbsi_last, cbsi_end_p, cbsi_next, cbsi_prev,
cbsi_stmt): New.
* tree-flow.h (const_block_stmt_iterator, cbsi_start, cbsi_last,
const_first_stmt, const_last_stmt): New.
(block_may_fallthru, empty_block_p): Constify.
* tree-iterator.c (EXPR_FIRST_BODY, EXPR_LAST_BODY,
EXPR_ONLY_BODY): New.
(expr_first, expr_last, expr_only): Use macro for body.
(const_expr_first, const_expr_last, const_expr_only): New.
* tree-iterator.h (const_tree_stmt_iterator, ctsi_start,
ctsi_last, ctsi_end_p, ctsi_one_before_end_p, ctsi_next,
ctsi_prev, ctsi_stmt): New.
* tree-scalar-evolution.c (get_loop_exit_condition): Constify.
* tree-scalar-evolution.h (get_loop_exit_condition): Likewise.
* tree-ssa-loop-niter.c (loop_only_exit_p,
derive_constant_upper_bound): Likewise.
* tree-ssa-phiopt.c (empty_block_p): Likewise.
* tree-ssa-threadupdate.c (redirection_block_p): Likewise.
* tree-vectorizer.c (slpeel_can_duplicate_loop_p): Likewise.
* tree-vectorizer.h (slpeel_can_duplicate_loop_p): Likewise.
* tree-vrp.c (vrp_bitmap_equal_p): Likewise.
* tree.c (get_type_static_bounds): Likewise.
* tree.h (const_expr_first, const_expr_last, const_expr_only): New.
(get_type_static_bounds): Constify.
From-SVN: r127483
Diffstat (limited to 'gcc/tree-flow-inline.h')
-rw-r--r-- | gcc/tree-flow-inline.h | 57 |
1 files changed, 56 insertions, 1 deletions
diff --git a/gcc/tree-flow-inline.h b/gcc/tree-flow-inline.h index 1e52d1f..63d4021 100644 --- a/gcc/tree-flow-inline.h +++ b/gcc/tree-flow-inline.h @@ -713,7 +713,7 @@ phi_ssa_name_p (const_tree t) /* Returns the list of statements in BB. */ static inline tree -bb_stmt_list (basic_block bb) +bb_stmt_list (const_basic_block bb) { gcc_assert (!(bb->flags & BB_RTL)); return bb->il.tree->stmt_list; @@ -745,6 +745,21 @@ bsi_start (basic_block bb) return bsi; } +static inline const_block_stmt_iterator +cbsi_start (const_basic_block bb) +{ + const_block_stmt_iterator bsi; + if (bb->index < NUM_FIXED_BLOCKS) + { + bsi.tsi.ptr = NULL; + bsi.tsi.container = NULL; + } + else + bsi.tsi = ctsi_start (bb_stmt_list (bb)); + bsi.bb = bb; + return bsi; +} + /* Return a block statement iterator that points to the first non-label statement in block BB. */ @@ -777,6 +792,22 @@ bsi_last (basic_block bb) return bsi; } +static inline const_block_stmt_iterator +cbsi_last (const_basic_block bb) +{ + const_block_stmt_iterator bsi; + + if (bb->index < NUM_FIXED_BLOCKS) + { + bsi.tsi.ptr = NULL; + bsi.tsi.container = NULL; + } + else + bsi.tsi = ctsi_last (bb_stmt_list (bb)); + bsi.bb = bb; + return bsi; +} + /* Return true if block statement iterator I has reached the end of the basic block. */ static inline bool @@ -785,6 +816,12 @@ bsi_end_p (block_stmt_iterator i) return tsi_end_p (i.tsi); } +static inline bool +cbsi_end_p (const_block_stmt_iterator i) +{ + return ctsi_end_p (i.tsi); +} + /* Modify block statement iterator I so that it is at the next statement in the basic block. */ static inline void @@ -793,6 +830,12 @@ bsi_next (block_stmt_iterator *i) tsi_next (&i->tsi); } +static inline void +cbsi_next (const_block_stmt_iterator *i) +{ + ctsi_next (&i->tsi); +} + /* Modify block statement iterator I so that it is at the previous statement in the basic block. */ static inline void @@ -801,6 +844,12 @@ bsi_prev (block_stmt_iterator *i) tsi_prev (&i->tsi); } +static inline void +cbsi_prev (const_block_stmt_iterator *i) +{ + ctsi_prev (&i->tsi); +} + /* Return the statement that block statement iterator I is currently at. */ static inline tree @@ -809,6 +858,12 @@ bsi_stmt (block_stmt_iterator i) return tsi_stmt (i.tsi); } +static inline const_tree +cbsi_stmt (const_block_stmt_iterator i) +{ + return ctsi_stmt (i.tsi); +} + /* Return a pointer to the statement that block statement iterator I is currently at. */ static inline tree * |