vec.h (FOR_EACH_VEC_ELT): Define.

gcc/
	* vec.h (FOR_EACH_VEC_ELT): Define.
	* c-decl.c: Use it.
	* cfgloop.c: Likewise.
	* cfgloopmanip.c: Likewise.
	* cgraph.c: Likewise.
	* cgraphunit.c: Likewise.
	* combine.c: Likewise.
	* config/bfin/bfin.c: Likewise.
	* config/mips/mips.c: Likewise.
	* config/rs6000/rs6000.c: Likewise.
	* dbxout.c: Likewise.
	* df-scan.c: Likewise.
	* dominance.c: Likewise.
	* dse.c: Likewise.
	* dwarf2out.c: Likewise.
	* except.c: Likewise.
	* expr.c: Likewise.
	* function.c: Likewise.
	* gcse.c: Likewise.
	* genattr.c: Likewise.
	* ggc-common.c: Likewise.
	* gimplify.c: Likewise.
	* graphite-blocking.c: Likewise.
	* graphite-clast-to-gimple.c: Likewise.
	* graphite-dependences.c: Likewise.
	* graphite-interchange.c: Likewise.
	* graphite-poly.c: Likewise.
	* graphite-scop-detection.c: Likewise.
	* graphite-sese-to-poly.c: Likewise.
	* graphite.c: Likewise.
	* haifa-sched.c: Likewise.
	* ifcvt.c: Likewise.
	* implicit-zee.c: Likewise.
	* ipa-prop.c: Likewise.
	* ipa-struct-reorg.c: Likewise.
	* ipa.c: Likewise.
	* ira-build.c: Likewise.
	* ira-color.c: Likewise.
	* ira-emit.c: Likewise.
	* lambda-code.c: Likewise.
	* loop-invariant.c: Likewise.
	* loop-unroll.c: Likewise.
	* lower-subreg.c: Likewise.
	* lto-cgraph.c: Likewise.
	* lto-opts.c: Likewise.
	* lto-streamer-in.c: Likewise.
	* lto-streamer-out.c: Likewise.
	* lto-streamer.c: Likewise.
	* lto-symtab.c: Likewise.
	* matrix-reorg.c: Likewise.
	* opts.c: Likewise.
	* predict.c: Likewise.
	* print-tree.c: Likewise.
	* sdbout.c: Likewise.
	* sel-sched-dump.c: Likewise.
	* sel-sched-ir.c: Likewise.
	* sel-sched.c: Likewise.
	* sese.c: Likewise.
	* stor-layout.c: Likewise.
	* tree-cfg.c: Likewise.
	* tree-cfgcleanup.c: Likewise.
	* tree-chrec.c: Likewise.
	* tree-data-ref.c: Likewise.
	* tree-emutls.c: Likewise.
	* tree-inline.c: Likewise.
	* tree-into-ssa.c: Likewise.
	* tree-loop-distribution.c: Likewise.
	* tree-loop-linear.c: Likewise.
	* tree-mudflap.c: Likewise.
	* tree-outof-ssa.c: Likewise.
	* tree-parloops.c: Likewise.
	* tree-predcom.c: Likewise.
	* tree-pretty-print.c: Likewise.
	* tree-scalar-evolution.c: Likewise.
	* tree-ssa-live.c: Likewise.
	* tree-ssa-loop-im.c: Likewise.
	* tree-ssa-loop-ivcanon.c: Likewise.
	* tree-ssa-loop-ivopts.c: Likewise.
	* tree-ssa-loop-manip.c: Likewise.
	* tree-ssa-loop-niter.c: Likewise.
	* tree-ssa-loop-prefetch.c: Likewise.
	* tree-ssa-phiprop.c: Likewise.
	* tree-ssa-pre.c: Likewise.
	* tree-ssa-reassoc.c: Likewise.
	* tree-ssa-sccvn.c: Likewise.
	* tree-ssa-structalias.c: Likewise.
	* tree-ssa.c: Likewise.
	* tree-vect-data-refs.c: Likewise.
	* tree-vect-loop-manip.c: Likewise.
	* tree-vect-loop.c: Likewise.
	* tree-vect-patterns.c: Likewise.
	* tree-vect-slp.c: Likewise.
	* tree-vect-stmts.c: Likewise.
	* tree-vrp.c: Likewise.
	* tree.c: Likewise.
	* value-prof.c: Likewise.
	* var-tracking.c: Likewise.
	* varasm.c: Likewise.
	* vmsdbgout.c: Likewise.

gcc/ada/
	* gcc-interface/decl.c: Use FOR_EACH_VEC_ELT.
	* gcc-interface/trans.c: Likewise.
	* gcc-interface/utils.c: Likewise.

gcc/c-family/
	* c-common.c: Use FOR_EACH_VEC_ELT.
	* c-gimplify.c: Likewise.
	* c-pragma.c: Likewise.

gcc/cp/
	* call.c: Use FOR_EACH_VEC_ELT.
	* class.c: Likewise.
	* decl.c: Likewise.
	* decl2.c: Likewise.
	* error.c: Likewise.
	* except.c: Likewise.
	* mangle.c: Likewise.
	* method.c: Likewise.
	* name-lookup.c: Likewise.
	* parser.c: Likewise.
	* pt.c: Likewise.
	* repo.c: Likewise.
	* semantics.c: Likewise.
	* typeck2.c: Likewise.

gcc/fortran/
	* trans-openmp.c: Use FOR_EACH_VEC_ELT.

gcc/java/
	* class.c: Use FOR_EACH_VEC_ELT.
	* expr.c: Likewise.
	* jcf-parse.c: Likewise.
	* resource.c: Likewise.

gcc/lto/
	* lto.c: Use FOR_EACH_VEC_ELT.

From-SVN: r163401
This commit is contained in:
Nathan Froyd 2010-08-20 12:48:59 +00:00 committed by Nathan Froyd
parent 8f0fe81379
commit ac47786e99
132 changed files with 829 additions and 790 deletions

View File

@ -1,3 +1,105 @@
2010-08-20 Nathan Froyd <froydnj@codesourcery.com>
* vec.h (FOR_EACH_VEC_ELT): Define.
* c-decl.c: Use it.
* cfgloop.c: Likewise.
* cfgloopmanip.c: Likewise.
* cgraph.c: Likewise.
* cgraphunit.c: Likewise.
* combine.c: Likewise.
* config/bfin/bfin.c: Likewise.
* config/mips/mips.c: Likewise.
* config/rs6000/rs6000.c: Likewise.
* dbxout.c: Likewise.
* df-scan.c: Likewise.
* dominance.c: Likewise.
* dse.c: Likewise.
* dwarf2out.c: Likewise.
* except.c: Likewise.
* expr.c: Likewise.
* function.c: Likewise.
* gcse.c: Likewise.
* genattr.c: Likewise.
* ggc-common.c: Likewise.
* gimplify.c: Likewise.
* graphite-blocking.c: Likewise.
* graphite-clast-to-gimple.c: Likewise.
* graphite-dependences.c: Likewise.
* graphite-interchange.c: Likewise.
* graphite-poly.c: Likewise.
* graphite-scop-detection.c: Likewise.
* graphite-sese-to-poly.c: Likewise.
* graphite.c: Likewise.
* haifa-sched.c: Likewise.
* ifcvt.c: Likewise.
* implicit-zee.c: Likewise.
* ipa-prop.c: Likewise.
* ipa-struct-reorg.c: Likewise.
* ipa.c: Likewise.
* ira-build.c: Likewise.
* ira-color.c: Likewise.
* ira-emit.c: Likewise.
* lambda-code.c: Likewise.
* loop-invariant.c: Likewise.
* loop-unroll.c: Likewise.
* lower-subreg.c: Likewise.
* lto-cgraph.c: Likewise.
* lto-opts.c: Likewise.
* lto-streamer-in.c: Likewise.
* lto-streamer-out.c: Likewise.
* lto-streamer.c: Likewise.
* lto-symtab.c: Likewise.
* matrix-reorg.c: Likewise.
* opts.c: Likewise.
* predict.c: Likewise.
* print-tree.c: Likewise.
* sdbout.c: Likewise.
* sel-sched-dump.c: Likewise.
* sel-sched-ir.c: Likewise.
* sel-sched.c: Likewise.
* sese.c: Likewise.
* stor-layout.c: Likewise.
* tree-cfg.c: Likewise.
* tree-cfgcleanup.c: Likewise.
* tree-chrec.c: Likewise.
* tree-data-ref.c: Likewise.
* tree-emutls.c: Likewise.
* tree-inline.c: Likewise.
* tree-into-ssa.c: Likewise.
* tree-loop-distribution.c: Likewise.
* tree-loop-linear.c: Likewise.
* tree-mudflap.c: Likewise.
* tree-outof-ssa.c: Likewise.
* tree-parloops.c: Likewise.
* tree-predcom.c: Likewise.
* tree-pretty-print.c: Likewise.
* tree-scalar-evolution.c: Likewise.
* tree-ssa-live.c: Likewise.
* tree-ssa-loop-im.c: Likewise.
* tree-ssa-loop-ivcanon.c: Likewise.
* tree-ssa-loop-ivopts.c: Likewise.
* tree-ssa-loop-manip.c: Likewise.
* tree-ssa-loop-niter.c: Likewise.
* tree-ssa-loop-prefetch.c: Likewise.
* tree-ssa-phiprop.c: Likewise.
* tree-ssa-pre.c: Likewise.
* tree-ssa-reassoc.c: Likewise.
* tree-ssa-sccvn.c: Likewise.
* tree-ssa-structalias.c: Likewise.
* tree-ssa.c: Likewise.
* tree-vect-data-refs.c: Likewise.
* tree-vect-loop-manip.c: Likewise.
* tree-vect-loop.c: Likewise.
* tree-vect-patterns.c: Likewise.
* tree-vect-slp.c: Likewise.
* tree-vect-stmts.c: Likewise.
* tree-vrp.c: Likewise.
* tree.c: Likewise.
* value-prof.c: Likewise.
* var-tracking.c: Likewise.
* varasm.c: Likewise.
* vmsdbgout.c: Likewise.
2010-08-20 Joseph Myers <joseph@codesourcery.com> 2010-08-20 Joseph Myers <joseph@codesourcery.com>
* doc/tm.texi.in (PIC_OFFSET_TABLE_REG_CALL_CLOBBERED): Document to * doc/tm.texi.in (PIC_OFFSET_TABLE_REG_CALL_CLOBBERED): Document to

View File

@ -1,3 +1,9 @@
2010-08-20 Nathan Froyd <froydnj@codesourcery.com>
* gcc-interface/decl.c: Use FOR_EACH_VEC_ELT.
* gcc-interface/trans.c: Likewise.
* gcc-interface/utils.c: Likewise.
2010-08-18 Eric Botcazou <ebotcazou@adacore.com> 2010-08-18 Eric Botcazou <ebotcazou@adacore.com>
* tracebak.c (i386): Use GCC unwinder on Linux with GCC > 4.5. * tracebak.c (i386): Use GCC unwinder on Linux with GCC > 4.5.

View File

@ -4966,7 +4966,7 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition)
unsigned int i; unsigned int i;
tree t; tree t;
for (i = 0; VEC_iterate (tree, defer_finalize_list, i, t); i++) FOR_EACH_VEC_ELT (tree, defer_finalize_list, i, t)
rest_of_type_decl_compilation_no_defer (t); rest_of_type_decl_compilation_no_defer (t);
VEC_free (tree, heap, defer_finalize_list); VEC_free (tree, heap, defer_finalize_list);

View File

@ -1603,7 +1603,7 @@ Attribute_to_gnu (Node_Id gnat_node, tree *gnu_result_type_p, int attribute)
and the dimension in the cache and create a new one on failure. */ and the dimension in the cache and create a new one on failure. */
if (!optimize && Present (gnat_param)) if (!optimize && Present (gnat_param))
{ {
for (i = 0; VEC_iterate (parm_attr, f_parm_attr_cache, i, pa); i++) FOR_EACH_VEC_ELT (parm_attr, f_parm_attr_cache, i, pa)
if (pa->id == gnat_param && pa->dim == Dimension) if (pa->id == gnat_param && pa->dim == Dimension)
break; break;
@ -2521,7 +2521,7 @@ Subprogram_Body_to_gnu (Node_Id gnat_node)
start_stmt_group (); start_stmt_group ();
for (i = 0; VEC_iterate (parm_attr, cache, i, pa); i++) FOR_EACH_VEC_ELT (parm_attr, cache, i, pa)
{ {
if (pa->first) if (pa->first)
add_stmt_with_node (pa->first, gnat_node); add_stmt_with_node (pa->first, gnat_node);

View File

@ -1690,7 +1690,7 @@ invalidate_global_renaming_pointers (void)
unsigned int i; unsigned int i;
tree iter; tree iter;
for (i = 0; VEC_iterate(tree, global_renaming_pointers, i, iter); i++) FOR_EACH_VEC_ELT (tree, global_renaming_pointers, i, iter)
SET_DECL_RENAMED_OBJECT (iter, NULL_TREE); SET_DECL_RENAMED_OBJECT (iter, NULL_TREE);
VEC_free (tree, gc, global_renaming_pointers); VEC_free (tree, gc, global_renaming_pointers);
@ -4661,7 +4661,7 @@ builtin_decl_for (tree name)
unsigned i; unsigned i;
tree decl; tree decl;
for (i = 0; VEC_iterate(tree, builtin_decls, i, decl); i++) FOR_EACH_VEC_ELT (tree, builtin_decls, i, decl)
if (DECL_NAME (decl) == name) if (DECL_NAME (decl) == name)
return decl; return decl;

View File

@ -999,9 +999,7 @@ update_label_decls (struct c_scope *scope)
/* Update the bindings of any goto statements associated /* Update the bindings of any goto statements associated
with this label. */ with this label. */
for (ix = 0; FOR_EACH_VEC_ELT (c_goto_bindings_p, label_vars->gotos, ix, g)
VEC_iterate (c_goto_bindings_p, label_vars->gotos, ix, g);
++ix)
update_spot_bindings (scope, &g->goto_bindings); update_spot_bindings (scope, &g->goto_bindings);
} }
} }
@ -1352,9 +1350,7 @@ c_bindings_start_stmt_expr (struct c_spot_bindings* switch_bindings)
continue; continue;
label_vars = b->u.label; label_vars = b->u.label;
++label_vars->label_bindings.stmt_exprs; ++label_vars->label_bindings.stmt_exprs;
for (ix = 0; FOR_EACH_VEC_ELT (c_goto_bindings_p, label_vars->gotos, ix, g)
VEC_iterate (c_goto_bindings_p, label_vars->gotos, ix, g);
++ix)
++g->goto_bindings.stmt_exprs; ++g->goto_bindings.stmt_exprs;
} }
} }
@ -1392,9 +1388,7 @@ c_bindings_end_stmt_expr (struct c_spot_bindings *switch_bindings)
label_vars->label_bindings.left_stmt_expr = true; label_vars->label_bindings.left_stmt_expr = true;
label_vars->label_bindings.stmt_exprs = 0; label_vars->label_bindings.stmt_exprs = 0;
} }
for (ix = 0; FOR_EACH_VEC_ELT (c_goto_bindings_p, label_vars->gotos, ix, g)
VEC_iterate (c_goto_bindings_p, label_vars->gotos, ix, g);
++ix)
{ {
--g->goto_bindings.stmt_exprs; --g->goto_bindings.stmt_exprs;
if (g->goto_bindings.stmt_exprs < 0) if (g->goto_bindings.stmt_exprs < 0)
@ -3120,7 +3114,7 @@ lookup_label_for_goto (location_t loc, tree name)
... ...
goto lab; goto lab;
Issue a warning or error. */ Issue a warning or error. */
for (ix = 0; VEC_iterate (tree, label_vars->decls_in_scope, ix, decl); ++ix) FOR_EACH_VEC_ELT (tree, label_vars->decls_in_scope, ix, decl)
warn_about_goto (loc, label, decl); warn_about_goto (loc, label, decl);
if (label_vars->label_bindings.left_stmt_expr) if (label_vars->label_bindings.left_stmt_expr)
@ -3172,9 +3166,7 @@ check_earlier_gotos (tree label, struct c_label_vars* label_vars)
unsigned int ix; unsigned int ix;
struct c_goto_bindings *g; struct c_goto_bindings *g;
for (ix = 0; FOR_EACH_VEC_ELT (c_goto_bindings_p, label_vars->gotos, ix, g)
VEC_iterate (c_goto_bindings_p, label_vars->gotos, ix, g);
++ix)
{ {
struct c_binding *b; struct c_binding *b;
struct c_scope *scope; struct c_scope *scope;
@ -6788,7 +6780,7 @@ warn_cxx_compat_finish_struct (tree fieldlist)
because the flag is used to issue visibility warnings, and we because the flag is used to issue visibility warnings, and we
only want to issue those warnings if the type is referenced only want to issue those warnings if the type is referenced
outside of the struct declaration. */ outside of the struct declaration. */
for (ix = 0; VEC_iterate (tree, struct_parse_info->struct_types, ix, x); ++ix) FOR_EACH_VEC_ELT (tree, struct_parse_info->struct_types, ix, x)
C_TYPE_DEFINED_IN_STRUCT (x) = 1; C_TYPE_DEFINED_IN_STRUCT (x) = 1;
/* The TYPEDEFS_SEEN field of STRUCT_PARSE_INFO is a list of /* The TYPEDEFS_SEEN field of STRUCT_PARSE_INFO is a list of
@ -6804,9 +6796,7 @@ warn_cxx_compat_finish_struct (tree fieldlist)
a pointer_set because identifiers are interned. */ a pointer_set because identifiers are interned. */
struct pointer_set_t *tset = pointer_set_create (); struct pointer_set_t *tset = pointer_set_create ();
for (ix = 0; FOR_EACH_VEC_ELT (tree, struct_parse_info->typedefs_seen, ix, x)
VEC_iterate (tree, struct_parse_info->typedefs_seen, ix, x);
++ix)
pointer_set_insert (tset, DECL_NAME (x)); pointer_set_insert (tset, DECL_NAME (x));
for (x = fieldlist; x != NULL_TREE; x = DECL_CHAIN (x)) for (x = fieldlist; x != NULL_TREE; x = DECL_CHAIN (x))
@ -6827,9 +6817,7 @@ warn_cxx_compat_finish_struct (tree fieldlist)
/* For each field which has a binding and which was not defined in /* For each field which has a binding and which was not defined in
an enclosing struct, clear the in_struct field. */ an enclosing struct, clear the in_struct field. */
for (ix = 0; FOR_EACH_VEC_ELT (c_binding_ptr, struct_parse_info->fields, ix, b)
VEC_iterate (c_binding_ptr, struct_parse_info->fields, ix, b);
++ix)
b->in_struct = 0; b->in_struct = 0;
} }
@ -8090,7 +8078,7 @@ store_parm_decls (void)
tree t; tree t;
int i; int i;
for (i = 0; VEC_iterate (tree, pending_sizes, i, t); i++) FOR_EACH_VEC_ELT (tree, pending_sizes, i, t)
add_stmt (t); add_stmt (t);
} }

View File

@ -1,3 +1,9 @@
2010-08-20 Nathan Froyd <froydnj@codesourcery.com>
* c-common.c: Use FOR_EACH_VEC_ELT.
* c-gimplify.c: Likewise.
* c-pragma.c: Likewise.
2010-08-16 Joseph Myers <joseph@codesourcery.com> 2010-08-16 Joseph Myers <joseph@codesourcery.com>
* c.opt (MDX): Change back to MD. Mark NoDriverArg instead of * c.opt (MDX): Change back to MD. Mark NoDriverArg instead of

View File

@ -9300,7 +9300,7 @@ make_tree_vector_copy (const VEC(tree,gc) *orig)
ret = make_tree_vector (); ret = make_tree_vector ();
VEC_reserve (tree, gc, ret, VEC_length (tree, orig)); VEC_reserve (tree, gc, ret, VEC_length (tree, orig));
for (ix = 0; VEC_iterate (tree, orig, ix, t); ++ix) FOR_EACH_VEC_ELT (tree, orig, ix, t)
VEC_quick_push (tree, ret, t); VEC_quick_push (tree, ret, t);
return ret; return ret;
} }

View File

@ -112,7 +112,7 @@ add_block_to_enclosing (tree block)
gimple bind; gimple bind;
VEC(gimple, heap) *stack = gimple_bind_expr_stack (); VEC(gimple, heap) *stack = gimple_bind_expr_stack ();
for (i = 0; VEC_iterate (gimple, stack, i, bind); i++) FOR_EACH_VEC_ELT (gimple, stack, i, bind)
if (gimple_bind_block (bind)) if (gimple_bind_block (bind))
break; break;

View File

@ -306,7 +306,7 @@ maybe_apply_pragma_weak (tree decl)
id = DECL_ASSEMBLER_NAME (decl); id = DECL_ASSEMBLER_NAME (decl);
for (i = 0; VEC_iterate (pending_weak, pending_weaks, i, pe); i++) FOR_EACH_VEC_ELT (pending_weak, pending_weaks, i, pe)
if (id == pe->name) if (id == pe->name)
{ {
apply_pragma_weak (decl, pe->value); apply_pragma_weak (decl, pe->value);
@ -324,7 +324,7 @@ maybe_apply_pending_pragma_weaks (void)
int i; int i;
pending_weak *pe; pending_weak *pe;
for (i = 0; VEC_iterate (pending_weak, pending_weaks, i, pe); i++) FOR_EACH_VEC_ELT (pending_weak, pending_weaks, i, pe)
{ {
alias_id = pe->name; alias_id = pe->name;
id = pe->value; id = pe->value;
@ -486,9 +486,7 @@ add_to_renaming_pragma_list (tree oldname, tree newname)
unsigned ix; unsigned ix;
pending_redefinition *p; pending_redefinition *p;
for (ix = 0; FOR_EACH_VEC_ELT (pending_redefinition, pending_redefine_extname, ix, p)
VEC_iterate (pending_redefinition, pending_redefine_extname, ix, p);
ix++)
if (oldname == p->oldname) if (oldname == p->oldname)
{ {
if (p->newname != newname) if (p->newname != newname)
@ -553,9 +551,7 @@ maybe_apply_renaming_pragma (tree decl, tree asmname)
"conflict with previous rename"); "conflict with previous rename");
/* Take any pending redefine_extname off the list. */ /* Take any pending redefine_extname off the list. */
for (ix = 0; FOR_EACH_VEC_ELT (pending_redefinition, pending_redefine_extname, ix, p)
VEC_iterate (pending_redefinition, pending_redefine_extname, ix, p);
ix++)
if (DECL_NAME (decl) == p->oldname) if (DECL_NAME (decl) == p->oldname)
{ {
/* Only warn if there is a conflict. */ /* Only warn if there is a conflict. */
@ -571,9 +567,7 @@ maybe_apply_renaming_pragma (tree decl, tree asmname)
} }
/* Find out if we have a pending #pragma redefine_extname. */ /* Find out if we have a pending #pragma redefine_extname. */
for (ix = 0; FOR_EACH_VEC_ELT (pending_redefinition, pending_redefine_extname, ix, p)
VEC_iterate (pending_redefinition, pending_redefine_extname, ix, p);
ix++)
if (DECL_NAME (decl) == p->oldname) if (DECL_NAME (decl) == p->oldname)
{ {
tree newname = p->newname; tree newname = p->newname;

View File

@ -130,7 +130,7 @@ flow_loop_dump (const struct loop *loop, FILE *file,
{ {
fprintf (file, "multiple latches:"); fprintf (file, "multiple latches:");
latches = get_loop_latch_edges (loop); latches = get_loop_latch_edges (loop);
for (i = 0; VEC_iterate (edge, latches, i, e); i++) FOR_EACH_VEC_ELT (edge, latches, i, e)
fprintf (file, " %d", e->src->index); fprintf (file, " %d", e->src->index);
VEC_free (edge, heap, latches); VEC_free (edge, heap, latches);
fprintf (file, "\n"); fprintf (file, "\n");
@ -209,7 +209,7 @@ flow_loops_free (struct loops *loops)
loop_p loop; loop_p loop;
/* Free the loop descriptors. */ /* Free the loop descriptors. */
for (i = 0; VEC_iterate (loop_p, loops->larray, i, loop); i++) FOR_EACH_VEC_ELT (loop_p, loops->larray, i, loop)
{ {
if (!loop) if (!loop)
continue; continue;
@ -286,7 +286,7 @@ establish_preds (struct loop *loop, struct loop *father)
VEC_truncate (loop_p, loop->superloops, 0); VEC_truncate (loop_p, loop->superloops, 0);
VEC_reserve (loop_p, gc, loop->superloops, depth); VEC_reserve (loop_p, gc, loop->superloops, depth);
for (i = 0; VEC_iterate (loop_p, father->superloops, i, ploop); i++) FOR_EACH_VEC_ELT (loop_p, father->superloops, i, ploop)
VEC_quick_push (loop_p, loop->superloops, ploop); VEC_quick_push (loop_p, loop->superloops, ploop);
VEC_quick_push (loop_p, loop->superloops, father); VEC_quick_push (loop_p, loop->superloops, father);
@ -530,7 +530,7 @@ find_subloop_latch_edge_by_profile (VEC (edge, heap) *latches)
edge e, me = NULL; edge e, me = NULL;
gcov_type mcount = 0, tcount = 0; gcov_type mcount = 0, tcount = 0;
for (i = 0; VEC_iterate (edge, latches, i, e); i++) FOR_EACH_VEC_ELT (edge, latches, i, e)
{ {
if (e->count > mcount) if (e->count > mcount)
{ {
@ -579,7 +579,7 @@ find_subloop_latch_edge_by_ivs (struct loop *loop ATTRIBUTE_UNUSED, VEC (edge, h
latch = e; latch = e;
/* Verify that it dominates all the latch edges. */ /* Verify that it dominates all the latch edges. */
for (i = 0; VEC_iterate (edge, latches, i, e); i++) FOR_EACH_VEC_ELT (edge, latches, i, e)
if (!dominated_by_p (CDI_DOMINATORS, e->src, latch->src)) if (!dominated_by_p (CDI_DOMINATORS, e->src, latch->src))
return NULL; return NULL;
@ -598,7 +598,7 @@ find_subloop_latch_edge_by_ivs (struct loop *loop ATTRIBUTE_UNUSED, VEC (edge, h
if (!bb || !flow_bb_inside_loop_p (loop, bb)) if (!bb || !flow_bb_inside_loop_p (loop, bb))
continue; continue;
for (i = 0; VEC_iterate (edge, latches, i, e); i++) FOR_EACH_VEC_ELT (edge, latches, i, e)
if (e != latch if (e != latch
&& PHI_ARG_DEF_FROM_EDGE (phi, e) == lop) && PHI_ARG_DEF_FROM_EDGE (phi, e) == lop)
return NULL; return NULL;
@ -696,7 +696,7 @@ merge_latch_edges (struct loop *loop)
fprintf (dump_file, "Merged latch edges of loop %d\n", loop->num); fprintf (dump_file, "Merged latch edges of loop %d\n", loop->num);
mfb_reis_set = pointer_set_create (); mfb_reis_set = pointer_set_create ();
for (i = 0; VEC_iterate (edge, latches, i, e); i++) FOR_EACH_VEC_ELT (edge, latches, i, e)
pointer_set_insert (mfb_reis_set, e); pointer_set_insert (mfb_reis_set, e);
latch = make_forwarder_block (loop->header, mfb_redirect_edges_in_set, latch = make_forwarder_block (loop->header, mfb_redirect_edges_in_set,
NULL); NULL);
@ -1192,7 +1192,7 @@ add_bb_to_loop (basic_block bb, struct loop *loop)
bb->loop_father = loop; bb->loop_father = loop;
bb->loop_depth = loop_depth (loop); bb->loop_depth = loop_depth (loop);
loop->num_nodes++; loop->num_nodes++;
for (i = 0; VEC_iterate (loop_p, loop->superloops, i, ploop); i++) FOR_EACH_VEC_ELT (loop_p, loop->superloops, i, ploop)
ploop->num_nodes++; ploop->num_nodes++;
FOR_EACH_EDGE (e, ei, bb->succs) FOR_EACH_EDGE (e, ei, bb->succs)
@ -1217,7 +1217,7 @@ remove_bb_from_loops (basic_block bb)
gcc_assert (loop != NULL); gcc_assert (loop != NULL);
loop->num_nodes--; loop->num_nodes--;
for (i = 0; VEC_iterate (loop_p, loop->superloops, i, ploop); i++) FOR_EACH_VEC_ELT (loop_p, loop->superloops, i, ploop)
ploop->num_nodes--; ploop->num_nodes--;
bb->loop_father = NULL; bb->loop_father = NULL;
bb->loop_depth = 0; bb->loop_depth = 0;

View File

@ -130,7 +130,7 @@ fix_loop_placement (struct loop *loop)
struct loop *father = current_loops->tree_root, *act; struct loop *father = current_loops->tree_root, *act;
bool ret = false; bool ret = false;
for (i = 0; VEC_iterate (edge, exits, i, e); i++) FOR_EACH_VEC_ELT (edge, exits, i, e)
{ {
act = find_common_loop (loop, e->dest->loop_father); act = find_common_loop (loop, e->dest->loop_father);
if (flow_loop_nested_p (father, act)) if (flow_loop_nested_p (father, act))
@ -146,7 +146,7 @@ fix_loop_placement (struct loop *loop)
/* The exit edges of LOOP no longer exits its original immediate /* The exit edges of LOOP no longer exits its original immediate
superloops; remove them from the appropriate exit lists. */ superloops; remove them from the appropriate exit lists. */
for (i = 0; VEC_iterate (edge, exits, i, e); i++) FOR_EACH_VEC_ELT (edge, exits, i, e)
rescan_loop_exit (e, false, false); rescan_loop_exit (e, false, false);
ret = true; ret = true;
@ -1271,7 +1271,7 @@ duplicate_loop_to_header_edge (struct loop *loop, edge e,
bb->aux = 0; bb->aux = 0;
dom_bbs = get_dominated_by (CDI_DOMINATORS, bb); dom_bbs = get_dominated_by (CDI_DOMINATORS, bb);
for (j = 0; VEC_iterate (basic_block, dom_bbs, j, dominated); j++) FOR_EACH_VEC_ELT (basic_block, dom_bbs, j, dominated)
{ {
if (flow_bb_inside_loop_p (loop, dominated)) if (flow_bb_inside_loop_p (loop, dominated))
continue; continue;

View File

@ -2149,7 +2149,7 @@ cgraph_clone_node (struct cgraph_node *n, tree decl, gcov_type count, int freq,
n->count = 0; n->count = 0;
} }
for (i = 0; VEC_iterate (cgraph_edge_p, redirect_callers, i, e); i++) FOR_EACH_VEC_ELT (cgraph_edge_p, redirect_callers, i, e)
{ {
/* Redirect calls to the old version node to point to its new /* Redirect calls to the old version node to point to its new
version. */ version. */
@ -2272,7 +2272,7 @@ cgraph_create_virtual_clone (struct cgraph_node *old_node,
DECL_WEAK (new_node->decl) = 0; DECL_WEAK (new_node->decl) = 0;
new_node->clone.tree_map = tree_map; new_node->clone.tree_map = tree_map;
new_node->clone.args_to_skip = args_to_skip; new_node->clone.args_to_skip = args_to_skip;
for (i = 0; VEC_iterate (ipa_replace_map_p, tree_map, i, map); i++) FOR_EACH_VEC_ELT (ipa_replace_map_p, tree_map, i, map)
{ {
tree var = map->new_tree; tree var = map->new_tree;

View File

@ -2160,7 +2160,7 @@ cgraph_copy_node_for_versioning (struct cgraph_node *old_version,
e->lto_stmt_uid, REG_BR_PROB_BASE, e->lto_stmt_uid, REG_BR_PROB_BASE,
CGRAPH_FREQ_BASE, CGRAPH_FREQ_BASE,
e->loop_nest, true); e->loop_nest, true);
for (i = 0; VEC_iterate (cgraph_edge_p, redirect_callers, i, e); i++) FOR_EACH_VEC_ELT (cgraph_edge_p, redirect_callers, i, e)
{ {
/* Redirect calls to the old version node to point to its new /* Redirect calls to the old version node to point to its new
version. */ version. */

View File

@ -1417,7 +1417,7 @@ init_reg_last (void)
unsigned int i; unsigned int i;
reg_stat_type *p; reg_stat_type *p;
for (i = 0; VEC_iterate (reg_stat_type, reg_stat, i, p); ++i) FOR_EACH_VEC_ELT (reg_stat_type, reg_stat, i, p)
memset (p, 0, offsetof (reg_stat_type, sign_bit_copies)); memset (p, 0, offsetof (reg_stat_type, sign_bit_copies));
} }

View File

@ -3795,12 +3795,12 @@ bfin_dump_loops (loop_info loops)
fprintf (dump_file, "{head:%d, depth:%d}", loop->head->index, loop->depth); fprintf (dump_file, "{head:%d, depth:%d}", loop->head->index, loop->depth);
fprintf (dump_file, " blocks: [ "); fprintf (dump_file, " blocks: [ ");
for (ix = 0; VEC_iterate (basic_block, loop->blocks, ix, b); ix++) FOR_EACH_VEC_ELT (basic_block, loop->blocks, ix, b)
fprintf (dump_file, "%d ", b->index); fprintf (dump_file, "%d ", b->index);
fprintf (dump_file, "] "); fprintf (dump_file, "] ");
fprintf (dump_file, " inner loops: [ "); fprintf (dump_file, " inner loops: [ ");
for (ix = 0; VEC_iterate (loop_info, loop->loops, ix, i); ix++) FOR_EACH_VEC_ELT (loop_info, loop->loops, ix, i)
fprintf (dump_file, "%d ", i->loop_no); fprintf (dump_file, "%d ", i->loop_no);
fprintf (dump_file, "]\n"); fprintf (dump_file, "]\n");
} }
@ -3826,7 +3826,7 @@ bfin_scan_loop (loop_info loop, rtx reg, rtx loop_end)
unsigned ix; unsigned ix;
basic_block bb; basic_block bb;
for (ix = 0; VEC_iterate (basic_block, loop->blocks, ix, bb); ix++) FOR_EACH_VEC_ELT (basic_block, loop->blocks, ix, bb)
{ {
rtx insn; rtx insn;
@ -3902,7 +3902,7 @@ bfin_optimize_loop (loop_info loop)
/* Every loop contains in its list of inner loops every loop nested inside /* Every loop contains in its list of inner loops every loop nested inside
it, even if there are intermediate loops. This works because we're doing it, even if there are intermediate loops. This works because we're doing
a depth-first search here and never visit a loop more than once. */ a depth-first search here and never visit a loop more than once. */
for (ix = 0; VEC_iterate (loop_info, loop->loops, ix, inner); ix++) FOR_EACH_VEC_ELT (loop_info, loop->loops, ix, inner)
{ {
bfin_optimize_loop (inner); bfin_optimize_loop (inner);
@ -4052,7 +4052,7 @@ bfin_optimize_loop (loop_info loop)
reg_lb0 = gen_rtx_REG (SImode, REG_LB0); reg_lb0 = gen_rtx_REG (SImode, REG_LB0);
reg_lb1 = gen_rtx_REG (SImode, REG_LB1); reg_lb1 = gen_rtx_REG (SImode, REG_LB1);
for (ix = 0; VEC_iterate (basic_block, loop->blocks, ix, bb); ix++) FOR_EACH_VEC_ELT (basic_block, loop->blocks, ix, bb)
{ {
rtx insn; rtx insn;
@ -4433,7 +4433,7 @@ bfin_discover_loop (loop_info loop, basic_block tail_bb, rtx tail_insn)
if (!loop->bad) if (!loop->bad)
{ {
int pass, retry; int pass, retry;
for (dwork = 0; VEC_iterate (basic_block, loop->blocks, dwork, bb); dwork++) FOR_EACH_VEC_ELT (basic_block, loop->blocks, dwork, bb)
{ {
edge e; edge e;
edge_iterator ei; edge_iterator ei;

View File

@ -4021,9 +4021,7 @@ mips_multi_write (void)
struct mips_multi_member *member; struct mips_multi_member *member;
unsigned int i; unsigned int i;
for (i = 0; FOR_EACH_VEC_ELT (mips_multi_member, mips_multi_members, i, member)
VEC_iterate (mips_multi_member, mips_multi_members, i, member);
i++)
if (member->is_label_p) if (member->is_label_p)
fprintf (asm_out_file, "%s\n", member->format); fprintf (asm_out_file, "%s\n", member->format);
else else

View File

@ -24602,7 +24602,7 @@ no_previous_def (tree function_name)
branch_island *bi; branch_island *bi;
unsigned ix; unsigned ix;
for (ix = 0; VEC_iterate (branch_island, branch_islands, ix, bi); ix++) FOR_EACH_VEC_ELT (branch_island, branch_islands, ix, bi)
if (function_name == bi->function_name) if (function_name == bi->function_name)
return 0; return 0;
return 1; return 1;
@ -24617,7 +24617,7 @@ get_prev_label (tree function_name)
branch_island *bi; branch_island *bi;
unsigned ix; unsigned ix;
for (ix = 0; VEC_iterate (branch_island, branch_islands, ix, bi); ix++) FOR_EACH_VEC_ELT (branch_island, branch_islands, ix, bi)
if (function_name == bi->function_name) if (function_name == bi->function_name)
return bi->label_name; return bi->label_name;
return NULL_TREE; return NULL_TREE;

View File

@ -1,3 +1,20 @@
2010-08-20 Nathan Froyd <froydnj@codesourcery.com>
* call.c: Use FOR_EACH_VEC_ELT.
* class.c: Likewise.
* decl.c: Likewise.
* decl2.c: Likewise.
* error.c: Likewise.
* except.c: Likewise.
* mangle.c: Likewise.
* method.c: Likewise.
* name-lookup.c: Likewise.
* parser.c: Likewise.
* pt.c: Likewise.
* repo.c: Likewise.
* semantics.c: Likewise.
* typeck2.c: Likewise.
2010-08-19 Jason Merrill <jason@redhat.com> 2010-08-19 Jason Merrill <jason@redhat.com>
* call.c (reference_related_p): Check for error_mark_node. * call.c (reference_related_p): Check for error_mark_node.

View File

@ -3161,7 +3161,7 @@ resolve_args (VEC(tree,gc) *args)
unsigned int ix; unsigned int ix;
tree arg; tree arg;
for (ix = 0; VEC_iterate (tree, args, ix, arg); ++ix) FOR_EACH_VEC_ELT (tree, args, ix, arg)
{ {
if (error_operand_p (arg)) if (error_operand_p (arg))
return NULL; return NULL;
@ -5423,7 +5423,7 @@ convert_default_arg (tree type, tree arg, tree fn, int parmnum)
} }
/* Detect recursion. */ /* Detect recursion. */
for (i = 0; VEC_iterate (tree, default_arg_context, i, t); ++i) FOR_EACH_VEC_ELT (tree, default_arg_context, i, t)
if (t == fn) if (t == fn)
{ {
error ("recursive evaluation of default argument for %q#D", fn); error ("recursive evaluation of default argument for %q#D", fn);
@ -5620,7 +5620,7 @@ build_over_call (struct z_candidate *cand, int flags, tsubst_flags_t complain)
++nargs; ++nargs;
alcarray = XALLOCAVEC (tree, nargs); alcarray = XALLOCAVEC (tree, nargs);
alcarray[0] = first_arg; alcarray[0] = first_arg;
for (ix = 0; VEC_iterate (tree, args, ix, arg); ++ix) FOR_EACH_VEC_ELT (tree, args, ix, arg)
alcarray[ix + 1] = arg; alcarray[ix + 1] = arg;
argarray = alcarray; argarray = alcarray;
} }

View File

@ -2048,7 +2048,7 @@ get_vcall_index (tree fn, tree type)
tree_pair_p p; tree_pair_p p;
unsigned ix; unsigned ix;
for (ix = 0; VEC_iterate (tree_pair_s, indices, ix, p); ix++) FOR_EACH_VEC_ELT (tree_pair_s, indices, ix, p)
if ((DECL_DESTRUCTOR_P (fn) && DECL_DESTRUCTOR_P (p->purpose)) if ((DECL_DESTRUCTOR_P (fn) && DECL_DESTRUCTOR_P (p->purpose))
|| same_signature_p (fn, p->purpose)) || same_signature_p (fn, p->purpose))
return p->value; return p->value;
@ -8125,7 +8125,7 @@ add_vcall_offset (tree orig_fn, tree binfo, vtbl_init_data *vid)
signature as FN, then we do not need a second vcall offset. signature as FN, then we do not need a second vcall offset.
Check the list of functions already present in the derived Check the list of functions already present in the derived
class vtable. */ class vtable. */
for (i = 0; VEC_iterate (tree, vid->fns, i, derived_entry); ++i) FOR_EACH_VEC_ELT (tree, vid->fns, i, derived_entry)
{ {
if (same_signature_p (derived_entry, orig_fn) if (same_signature_p (derived_entry, orig_fn)
/* We only use one vcall offset for virtual destructors, /* We only use one vcall offset for virtual destructors,

View File

@ -720,9 +720,8 @@ poplevel (int keep, int reverse, int functionbody)
/* Remove declarations for any `for' variables from inner scopes /* Remove declarations for any `for' variables from inner scopes
that we kept around. */ that we kept around. */
for (ix = VEC_length (tree, current_binding_level->dead_vars_from_for) - 1; FOR_EACH_VEC_ELT_REVERSE (tree, current_binding_level->dead_vars_from_for,
VEC_iterate (tree, current_binding_level->dead_vars_from_for, ix, decl); ix, decl)
ix--)
pop_binding (DECL_NAME (decl), decl); pop_binding (DECL_NAME (decl), decl);
/* Restore the IDENTIFIER_TYPE_VALUEs. */ /* Restore the IDENTIFIER_TYPE_VALUEs. */
@ -731,11 +730,9 @@ poplevel (int keep, int reverse, int functionbody)
SET_IDENTIFIER_TYPE_VALUE (TREE_PURPOSE (link), TREE_VALUE (link)); SET_IDENTIFIER_TYPE_VALUE (TREE_PURPOSE (link), TREE_VALUE (link));
/* Restore the IDENTIFIER_LABEL_VALUEs for local labels. */ /* Restore the IDENTIFIER_LABEL_VALUEs for local labels. */
for (ix = VEC_length (cp_label_binding, FOR_EACH_VEC_ELT_REVERSE (cp_label_binding,
current_binding_level->shadowed_labels) - 1; current_binding_level->shadowed_labels,
VEC_iterate (cp_label_binding, current_binding_level->shadowed_labels, ix, label_bind)
ix, label_bind);
ix--)
pop_local_label (label_bind->label, label_bind->prev_value); pop_local_label (label_bind->label, label_bind->prev_value);
/* There may be OVERLOADs (wrapped in TREE_LISTs) on the BLOCK_VARs /* There may be OVERLOADs (wrapped in TREE_LISTs) on the BLOCK_VARs
@ -2712,7 +2709,7 @@ check_goto (tree decl)
identified = true; identified = true;
} }
for (ix = 0; VEC_iterate (tree, ent->bad_decls, ix, bad); ix++) FOR_EACH_VEC_ELT (tree, ent->bad_decls, ix, bad)
{ {
int u = decl_jump_unsafe (bad); int u = decl_jump_unsafe (bad);
@ -4598,9 +4595,7 @@ maybe_deduce_size_from_array_init (tree decl, tree init)
VEC(constructor_elt,gc) *v = CONSTRUCTOR_ELTS (initializer); VEC(constructor_elt,gc) *v = CONSTRUCTOR_ELTS (initializer);
constructor_elt *ce; constructor_elt *ce;
HOST_WIDE_INT i; HOST_WIDE_INT i;
for (i = 0; FOR_EACH_VEC_ELT (constructor_elt, v, i, ce)
VEC_iterate (constructor_elt, v, i, ce);
++i)
if (!check_array_designated_initializer (ce)) if (!check_array_designated_initializer (ce))
failure = 1; failure = 1;
} }
@ -12837,7 +12832,7 @@ finish_function (int flags)
unsigned int i; unsigned int i;
tree decl; tree decl;
for (i = 0; VEC_iterate (tree, deferred_mark_used_calls, i, decl); i++) FOR_EACH_VEC_ELT (tree, deferred_mark_used_calls, i, decl)
mark_used (decl); mark_used (decl);
VEC_free (tree, gc, deferred_mark_used_calls); VEC_free (tree, gc, deferred_mark_used_calls);
} }

View File

@ -3300,7 +3300,7 @@ generate_ctor_or_dtor_function (bool constructor_p, int priority,
/* Call the static storage duration function with appropriate /* Call the static storage duration function with appropriate
arguments. */ arguments. */
for (i = 0; VEC_iterate (tree, ssdf_decls, i, fndecl); ++i) FOR_EACH_VEC_ELT (tree, ssdf_decls, i, fndecl)
{ {
/* Calls to pure or const functions will expand to nothing. */ /* Calls to pure or const functions will expand to nothing. */
if (! (flags_from_decl_or_type (fndecl) & (ECF_CONST | ECF_PURE))) if (! (flags_from_decl_or_type (fndecl) & (ECF_CONST | ECF_PURE)))
@ -3742,7 +3742,7 @@ cp_write_global_declarations (void)
/* Go through the set of inline functions whose bodies have not /* Go through the set of inline functions whose bodies have not
been emitted yet. If out-of-line copies of these functions been emitted yet. If out-of-line copies of these functions
are required, emit them. */ are required, emit them. */
for (i = 0; VEC_iterate (tree, deferred_fns, i, decl); ++i) FOR_EACH_VEC_ELT (tree, deferred_fns, i, decl)
{ {
/* Does it need synthesizing? */ /* Does it need synthesizing? */
if (DECL_DEFAULTED_FN (decl) && ! DECL_INITIAL (decl) if (DECL_DEFAULTED_FN (decl) && ! DECL_INITIAL (decl)
@ -3844,7 +3844,7 @@ cp_write_global_declarations (void)
reconsider = true; reconsider = true;
/* Static data members are just like namespace-scope globals. */ /* Static data members are just like namespace-scope globals. */
for (i = 0; VEC_iterate (tree, pending_statics, i, decl); ++i) FOR_EACH_VEC_ELT (tree, pending_statics, i, decl)
{ {
if (var_finalized_p (decl) || DECL_REALLY_EXTERN (decl) if (var_finalized_p (decl) || DECL_REALLY_EXTERN (decl)
/* Don't write it out if we haven't seen a definition. */ /* Don't write it out if we haven't seen a definition. */
@ -3866,7 +3866,7 @@ cp_write_global_declarations (void)
while (reconsider); while (reconsider);
/* All used inline functions must have a definition at this point. */ /* All used inline functions must have a definition at this point. */
for (i = 0; VEC_iterate (tree, deferred_fns, i, decl); ++i) FOR_EACH_VEC_ELT (tree, deferred_fns, i, decl)
{ {
if (/* Check online inline functions that were actually used. */ if (/* Check online inline functions that were actually used. */
DECL_ODR_USED (decl) && DECL_DECLARED_INLINE_P (decl) DECL_ODR_USED (decl) && DECL_DECLARED_INLINE_P (decl)
@ -3888,7 +3888,7 @@ cp_write_global_declarations (void)
} }
/* So must decls that use a type with no linkage. */ /* So must decls that use a type with no linkage. */
for (i = 0; VEC_iterate (tree, no_linkage_decls, i, decl); ++i) FOR_EACH_VEC_ELT (tree, no_linkage_decls, i, decl)
if (!decl_defined_p (decl)) if (!decl_defined_p (decl))
no_linkage_error (decl); no_linkage_error (decl);

View File

@ -304,7 +304,7 @@ dump_template_bindings (tree parms, tree args, VEC(tree,gc)* typenames)
parms = TREE_CHAIN (parms); parms = TREE_CHAIN (parms);
} }
for (i = 0; VEC_iterate (tree, typenames, i, t); ++i) FOR_EACH_VEC_ELT (tree, typenames, i, t)
{ {
if (need_comma) if (need_comma)
pp_separate_with_comma (cxx_pp); pp_separate_with_comma (cxx_pp);

View File

@ -1104,9 +1104,7 @@ perform_deferred_noexcept_checks (void)
int i; int i;
pending_noexcept *p; pending_noexcept *p;
location_t saved_loc = input_location; location_t saved_loc = input_location;
for (i = 0; FOR_EACH_VEC_ELT (pending_noexcept, pending_noexcept_checks, i, p)
VEC_iterate (pending_noexcept, pending_noexcept_checks, i, p);
++i)
{ {
input_location = p->loc; input_location = p->loc;
maybe_noexcept_warning (p->fn); maybe_noexcept_warning (p->fn);

View File

@ -307,7 +307,7 @@ dump_substitution_candidates (void)
tree el; tree el;
fprintf (stderr, " ++ substitutions "); fprintf (stderr, " ++ substitutions ");
for (i = 0; VEC_iterate (tree, G.substitutions, i, el); ++i) FOR_EACH_VEC_ELT (tree, G.substitutions, i, el)
{ {
const char *name = "???"; const char *name = "???";
@ -387,7 +387,7 @@ add_substitution (tree node)
int i; int i;
tree candidate; tree candidate;
for (i = 0; VEC_iterate (tree, G.substitutions, i, candidate); i++) FOR_EACH_VEC_ELT (tree, G.substitutions, i, candidate)
{ {
gcc_assert (!(DECL_P (node) && node == candidate)); gcc_assert (!(DECL_P (node) && node == candidate));
gcc_assert (!(TYPE_P (node) && TYPE_P (candidate) gcc_assert (!(TYPE_P (node) && TYPE_P (candidate)

View File

@ -1204,7 +1204,7 @@ synthesized_method_walk (tree ctype, special_function_kind sfk, bool const_p,
if (diag) if (diag)
msg = ("virtual base %qT does not have a move constructor " msg = ("virtual base %qT does not have a move constructor "
"or trivial copy constructor"); "or trivial copy constructor");
for (i = 0; VEC_iterate (tree, vbases, i, base_binfo); ++i) FOR_EACH_VEC_ELT (tree, vbases, i, base_binfo)
{ {
if (copy_arg_p) if (copy_arg_p)
argtype = build_stub_type (BINFO_TYPE (base_binfo), quals, move_p); argtype = build_stub_type (BINFO_TYPE (base_binfo), quals, move_p);

View File

@ -327,9 +327,7 @@ new_class_binding (tree name, tree value, tree type, cxx_scope *scope)
/* Fixup the current bindings, as they might have moved. */ /* Fixup the current bindings, as they might have moved. */
size_t i; size_t i;
for (i = 0; FOR_EACH_VEC_ELT (cp_class_binding, scope->class_shadowed, i, cb)
VEC_iterate (cp_class_binding, scope->class_shadowed, i, cb);
i++)
{ {
cxx_binding **b; cxx_binding **b;
b = &IDENTIFIER_BINDING (cb->identifier); b = &IDENTIFIER_BINDING (cb->identifier);
@ -1687,9 +1685,7 @@ print_binding_level (struct cp_binding_level* lvl)
size_t i; size_t i;
cp_class_binding *b; cp_class_binding *b;
fprintf (stderr, " class-shadowed:"); fprintf (stderr, " class-shadowed:");
for (i = 0; FOR_EACH_VEC_ELT (cp_class_binding, lvl->class_shadowed, i, b)
VEC_iterate(cp_class_binding, lvl->class_shadowed, i, b);
++i)
fprintf (stderr, " %s ", IDENTIFIER_POINTER (b->identifier)); fprintf (stderr, " %s ", IDENTIFIER_POINTER (b->identifier));
fprintf (stderr, "\n"); fprintf (stderr, "\n");
} }
@ -2644,9 +2640,7 @@ poplevel_class (void)
/* Remove the bindings for all of the class-level declarations. */ /* Remove the bindings for all of the class-level declarations. */
if (level->class_shadowed) if (level->class_shadowed)
{ {
for (i = 0; FOR_EACH_VEC_ELT (cp_class_binding, level->class_shadowed, i, cb)
VEC_iterate (cp_class_binding, level->class_shadowed, i, cb);
++i)
IDENTIFIER_BINDING (cb->identifier) = cb->base.previous; IDENTIFIER_BINDING (cb->identifier) = cb->base.previous;
ggc_free (level->class_shadowed); ggc_free (level->class_shadowed);
level->class_shadowed = NULL; level->class_shadowed = NULL;
@ -4048,7 +4042,7 @@ tree_vec_contains (VEC(tree,gc)* vec, tree target)
{ {
unsigned int i; unsigned int i;
tree elt; tree elt;
for (i = 0; VEC_iterate(tree,vec,i,elt); ++i) FOR_EACH_VEC_ELT (tree,vec,i,elt)
if (elt == target) if (elt == target)
return true; return true;
return false; return false;
@ -5001,7 +4995,7 @@ arg_assoc_args_vec (struct arg_lookup *k, VEC(tree,gc) *args)
unsigned int ix; unsigned int ix;
tree arg; tree arg;
for (ix = 0; VEC_iterate (tree, args, ix, arg); ++ix) FOR_EACH_VEC_ELT (tree, args, ix, arg)
if (arg_assoc (k, arg)) if (arg_assoc (k, arg))
return true; return true;
return false; return false;
@ -5484,7 +5478,7 @@ push_to_top_level (void)
SET_IDENTIFIER_TYPE_VALUE (TREE_PURPOSE (t), TREE_VALUE (t)); SET_IDENTIFIER_TYPE_VALUE (TREE_PURPOSE (t), TREE_VALUE (t));
} }
for (i = 0; VEC_iterate (cxx_saved_binding, s->old_bindings, i, sb); ++i) FOR_EACH_VEC_ELT (cxx_saved_binding, s->old_bindings, i, sb)
IDENTIFIER_MARKED (sb->identifier) = 0; IDENTIFIER_MARKED (sb->identifier) = 0;
s->prev = scope_chain; s->prev = scope_chain;
@ -5521,7 +5515,7 @@ pop_from_top_level (void)
current_lang_base = 0; current_lang_base = 0;
scope_chain = s->prev; scope_chain = s->prev;
for (i = 0; VEC_iterate (cxx_saved_binding, s->old_bindings, i, saved); ++i) FOR_EACH_VEC_ELT (cxx_saved_binding, s->old_bindings, i, saved)
{ {
tree id = saved->identifier; tree id = saved->identifier;

View File

@ -11187,15 +11187,11 @@ cp_parser_template_id (cp_parser *parser,
access_check = check_value->checks; access_check = check_value->checks;
if (access_check) if (access_check)
{ {
for (i = 0 ; FOR_EACH_VEC_ELT (deferred_access_check, access_check, i, chk)
VEC_iterate (deferred_access_check, access_check, i, chk) ;
++i)
{
perform_or_defer_access_check (chk->binfo, perform_or_defer_access_check (chk->binfo,
chk->decl, chk->decl,
chk->diag_decl); chk->diag_decl);
} }
}
/* Return the stored value. */ /* Return the stored value. */
return check_value->value; return check_value->value;
} }
@ -16319,10 +16315,8 @@ cp_parser_class_specifier (cp_parser* parser)
}; };
*/ */
for (ix = 0; FOR_EACH_VEC_ELT (cp_default_arg_entry, unparsed_funs_with_default_args,
VEC_iterate (cp_default_arg_entry, unparsed_funs_with_default_args, ix, e)
ix, e);
ix++)
{ {
fn = e->decl; fn = e->decl;
/* If there are default arguments that have not yet been processed, /* If there are default arguments that have not yet been processed,
@ -16345,9 +16339,7 @@ cp_parser_class_specifier (cp_parser* parser)
pop_scope (pushed_scope); pop_scope (pushed_scope);
VEC_truncate (cp_default_arg_entry, unparsed_funs_with_default_args, 0); VEC_truncate (cp_default_arg_entry, unparsed_funs_with_default_args, 0);
/* Now parse the body of the functions. */ /* Now parse the body of the functions. */
for (ix = 0; FOR_EACH_VEC_ELT (tree, unparsed_funs_with_definitions, ix, fn)
VEC_iterate (tree, unparsed_funs_with_definitions, ix, fn);
ix++)
cp_parser_late_parsing_for_member (parser, fn); cp_parser_late_parsing_for_member (parser, fn);
VEC_truncate (tree, unparsed_funs_with_definitions, 0); VEC_truncate (tree, unparsed_funs_with_definitions, 0);
} }
@ -20469,15 +20461,11 @@ cp_parser_pre_parsed_nested_name_specifier (cp_parser *parser)
checks = check_value->checks; checks = check_value->checks;
if (checks) if (checks)
{ {
for (i = 0 ; FOR_EACH_VEC_ELT (deferred_access_check, checks, i, chk)
VEC_iterate (deferred_access_check, checks, i, chk) ;
++i)
{
perform_or_defer_access_check (chk->binfo, perform_or_defer_access_check (chk->binfo,
chk->decl, chk->decl,
chk->diag_decl); chk->diag_decl);
} }
}
/* Set the scope from the stored value. */ /* Set the scope from the stored value. */
parser->scope = check_value->value; parser->scope = check_value->value;
parser->qualifying_scope = check_value->qualifying_scope; parser->qualifying_scope = check_value->qualifying_scope;

View File

@ -7735,11 +7735,9 @@ perform_typedefs_access_check (tree tmpl, tree targs)
return; return;
saved_location = input_location; saved_location = input_location;
for (i = 0; FOR_EACH_VEC_ELT (qualified_typedef_usage_t,
VEC_iterate (qualified_typedef_usage_t,
get_types_needing_access_check (tmpl), get_types_needing_access_check (tmpl),
i, iter); i, iter)
++i)
{ {
tree type_decl = iter->typedef_decl; tree type_decl = iter->typedef_decl;
tree type_scope = iter->context; tree type_scope = iter->context;
@ -12799,7 +12797,7 @@ tsubst_copy_and_build (tree t,
n = VEC_copy (constructor_elt, gc, CONSTRUCTOR_ELTS (t)); n = VEC_copy (constructor_elt, gc, CONSTRUCTOR_ELTS (t));
newlen = VEC_length (constructor_elt, n); newlen = VEC_length (constructor_elt, n);
for (idx = 0; VEC_iterate (constructor_elt, n, idx, ce); idx++) FOR_EACH_VEC_ELT (constructor_elt, n, idx, ce)
{ {
if (ce->index && process_index_p) if (ce->index && process_index_p)
ce->index = RECUR (ce->index); ce->index = RECUR (ce->index);
@ -12833,8 +12831,7 @@ tsubst_copy_and_build (tree t,
VEC(constructor_elt,gc) *old_n = n; VEC(constructor_elt,gc) *old_n = n;
n = VEC_alloc (constructor_elt, gc, newlen); n = VEC_alloc (constructor_elt, gc, newlen);
for (idx = 0; VEC_iterate (constructor_elt, old_n, idx, ce); FOR_EACH_VEC_ELT (constructor_elt, old_n, idx, ce)
idx++)
{ {
if (TREE_CODE (ce->value) == TREE_VEC) if (TREE_CODE (ce->value) == TREE_VEC)
{ {
@ -17923,7 +17920,7 @@ any_type_dependent_arguments_p (const VEC(tree,gc) *args)
unsigned int i; unsigned int i;
tree arg; tree arg;
for (i = 0; VEC_iterate (tree, args, i, arg); ++i) FOR_EACH_VEC_ELT (tree, args, i, arg)
{ {
if (type_dependent_expression_p (arg)) if (type_dependent_expression_p (arg))
return true; return true;
@ -18359,7 +18356,7 @@ make_args_non_dependent (VEC(tree,gc) *args)
unsigned int ix; unsigned int ix;
tree arg; tree arg;
for (ix = 0; VEC_iterate (tree, args, ix, arg); ++ix) FOR_EACH_VEC_ELT (tree, args, ix, arg)
{ {
tree newarg = build_non_dependent_expr (arg); tree newarg = build_non_dependent_expr (arg);
if (newarg != arg) if (newarg != arg)
@ -18662,11 +18659,9 @@ append_type_to_template_for_access_check (tree templ,
gcc_assert (type_decl && (TREE_CODE (type_decl) == TYPE_DECL)); gcc_assert (type_decl && (TREE_CODE (type_decl) == TYPE_DECL));
/* Make sure we don't append the type to the template twice. */ /* Make sure we don't append the type to the template twice. */
for (i = 0; FOR_EACH_VEC_ELT (qualified_typedef_usage_t,
VEC_iterate (qualified_typedef_usage_t,
get_types_needing_access_check (templ), get_types_needing_access_check (templ),
i, iter); i, iter)
++i)
if (iter->typedef_decl == type_decl && scope == iter->context) if (iter->typedef_decl == type_decl && scope == iter->context)
return; return;

View File

@ -267,9 +267,7 @@ finish_repo (void)
fprintf (repo_file, "\n"); fprintf (repo_file, "\n");
} }
for (ix = VEC_length (tree, pending_repo) - 1; FOR_EACH_VEC_ELT_REVERSE (tree, pending_repo, ix, val)
VEC_iterate (tree, pending_repo, ix, val);
ix--)
{ {
tree name = DECL_ASSEMBLER_NAME (val); tree name = DECL_ASSEMBLER_NAME (val);
char type = IDENTIFIER_REPO_CHOSEN (name) ? 'C' : 'O'; char type = IDENTIFIER_REPO_CHOSEN (name) ? 'C' : 'O';

View File

@ -232,14 +232,10 @@ pop_to_parent_deferring_access_checks (void)
int i, j; int i, j;
deferred_access_check *chk, *probe; deferred_access_check *chk, *probe;
for (i = 0 ; FOR_EACH_VEC_ELT (deferred_access_check, checks, i, chk)
VEC_iterate (deferred_access_check, checks, i, chk) ;
++i)
{ {
for (j = 0 ; FOR_EACH_VEC_ELT (deferred_access_check,
VEC_iterate (deferred_access_check, ptr->deferred_access_checks, j, probe)
ptr->deferred_access_checks, j, probe) ;
++j)
{ {
if (probe->binfo == chk->binfo && if (probe->binfo == chk->binfo &&
probe->decl == chk->decl && probe->decl == chk->decl &&
@ -268,7 +264,7 @@ perform_access_checks (VEC (deferred_access_check,gc)* checks)
if (!checks) if (!checks)
return; return;
for (i = 0 ; VEC_iterate (deferred_access_check, checks, i, chk) ; ++i) FOR_EACH_VEC_ELT (deferred_access_check, checks, i, chk)
enforce_access (chk->binfo, chk->decl, chk->diag_decl); enforce_access (chk->binfo, chk->decl, chk->diag_decl);
} }
@ -323,10 +319,8 @@ perform_or_defer_access_check (tree binfo, tree decl, tree diag_decl)
} }
/* See if we are already going to perform this check. */ /* See if we are already going to perform this check. */
for (i = 0 ; FOR_EACH_VEC_ELT (deferred_access_check,
VEC_iterate (deferred_access_check, ptr->deferred_access_checks, i, chk)
ptr->deferred_access_checks, i, chk) ;
++i)
{ {
if (chk->decl == decl && chk->binfo == binfo && if (chk->decl == decl && chk->binfo == binfo &&
chk->diag_decl == diag_decl) chk->diag_decl == diag_decl)

View File

@ -412,7 +412,7 @@ abstract_virtuals_error (tree decl, tree type)
" because the following virtual functions are pure within %qT:", " because the following virtual functions are pure within %qT:",
type); type);
for (ix = 0; VEC_iterate (tree, pure, ix, fn); ix++) FOR_EACH_VEC_ELT (tree, pure, ix, fn)
inform (input_location, "\t%+#D", fn); inform (input_location, "\t%+#D", fn);
/* Now truncate the vector. This leaves it non-null, so we know /* Now truncate the vector. This leaves it non-null, so we know
there are pure virtuals, but empty so we don't list them out there are pure virtuals, but empty so we don't list them out
@ -1035,7 +1035,7 @@ process_init_constructor_array (tree type, tree init)
if (!unbounded && VEC_length (constructor_elt, v) > len) if (!unbounded && VEC_length (constructor_elt, v) > len)
error ("too many initializers for %qT", type); error ("too many initializers for %qT", type);
for (i = 0; VEC_iterate (constructor_elt, v, i, ce); ++i) FOR_EACH_VEC_ELT (constructor_elt, v, i, ce)
{ {
if (ce->index) if (ce->index)
{ {

View File

@ -2504,7 +2504,7 @@ output_used_types (void)
qsort (VEC_address (tree, types), VEC_length (tree, types), qsort (VEC_address (tree, types), VEC_length (tree, types),
sizeof (tree), output_types_sort); sizeof (tree), output_types_sort);
for (i = 0; VEC_iterate (tree, types, i, type); i++) FOR_EACH_VEC_ELT (tree, types, i, type)
debug_queue_symbol (type); debug_queue_symbol (type);
VEC_free (tree, heap, types); VEC_free (tree, heap, types);

View File

@ -1180,15 +1180,13 @@ df_free_collection_rec (struct df_collection_rec *collection_rec)
df_ref ref; df_ref ref;
struct df_mw_hardreg *mw; struct df_mw_hardreg *mw;
for (ix = 0; VEC_iterate (df_ref, collection_rec->def_vec, ix, ref); ++ix) FOR_EACH_VEC_ELT (df_ref, collection_rec->def_vec, ix, ref)
df_free_ref (ref); df_free_ref (ref);
for (ix = 0; VEC_iterate (df_ref, collection_rec->use_vec, ix, ref); ++ix) FOR_EACH_VEC_ELT (df_ref, collection_rec->use_vec, ix, ref)
df_free_ref (ref); df_free_ref (ref);
for (ix = 0; VEC_iterate (df_ref, collection_rec->eq_use_vec, ix, ref); ++ix) FOR_EACH_VEC_ELT (df_ref, collection_rec->eq_use_vec, ix, ref)
df_free_ref (ref); df_free_ref (ref);
for (ix = 0; FOR_EACH_VEC_ELT (df_mw_hardreg_ptr, collection_rec->mw_vec, ix, mw)
VEC_iterate (df_mw_hardreg_ptr, collection_rec->mw_vec, ix, mw);
++ix)
pool_free (problem_data->mw_reg_pool, mw); pool_free (problem_data->mw_reg_pool, mw);
VEC_free (df_ref, stack, collection_rec->def_vec); VEC_free (df_ref, stack, collection_rec->def_vec);
@ -2664,7 +2662,7 @@ df_install_refs (basic_block bb,
if (add_to_table && df->analyze_subset) if (add_to_table && df->analyze_subset)
add_to_table = bitmap_bit_p (df->blocks_to_analyze, bb->index); add_to_table = bitmap_bit_p (df->blocks_to_analyze, bb->index);
for (ix = 0; VEC_iterate (df_ref, old_vec, ix, this_ref); ++ix) FOR_EACH_VEC_ELT (df_ref, old_vec, ix, this_ref)
{ {
new_vec[ix] = this_ref; new_vec[ix] = this_ref;
df_install_ref (this_ref, reg_info[DF_REF_REGNO (this_ref)], df_install_ref (this_ref, reg_info[DF_REF_REGNO (this_ref)],
@ -3398,7 +3396,7 @@ df_get_conditional_uses (struct df_collection_rec *collection_rec)
unsigned int ix; unsigned int ix;
df_ref ref; df_ref ref;
for (ix = 0; VEC_iterate (df_ref, collection_rec->def_vec, ix, ref); ++ix) FOR_EACH_VEC_ELT (df_ref, collection_rec->def_vec, ix, ref)
{ {
if (DF_REF_FLAGS_IS_SET (ref, DF_REF_CONDITIONAL)) if (DF_REF_FLAGS_IS_SET (ref, DF_REF_CONDITIONAL))
{ {
@ -3446,7 +3444,7 @@ df_get_call_refs (struct df_collection_rec * collection_rec,
/* Do not generate clobbers for registers that are the result of the /* Do not generate clobbers for registers that are the result of the
call. This causes ordering problems in the chain building code call. This causes ordering problems in the chain building code
depending on which def is seen first. */ depending on which def is seen first. */
for (i = 0; VEC_iterate (df_ref, collection_rec->def_vec, i, def); ++i) FOR_EACH_VEC_ELT (df_ref, collection_rec->def_vec, i, def)
bitmap_set_bit (&defs_generated, DF_REF_REGNO (def)); bitmap_set_bit (&defs_generated, DF_REF_REGNO (def));
/* Record the registers used to pass arguments, and explicitly /* Record the registers used to pass arguments, and explicitly
@ -4382,7 +4380,7 @@ df_refs_verify (VEC(df_ref,stack) *new_rec, df_ref *old_rec,
unsigned int ix; unsigned int ix;
df_ref new_ref; df_ref new_ref;
for (ix = 0; VEC_iterate (df_ref, new_rec, ix, new_ref); ++ix) FOR_EACH_VEC_ELT (df_ref, new_rec, ix, new_ref)
{ {
if (*old_rec == NULL || !df_ref_equal_p (new_ref, *old_rec)) if (*old_rec == NULL || !df_ref_equal_p (new_ref, *old_rec))
{ {
@ -4421,7 +4419,7 @@ df_mws_verify (VEC(df_mw_hardreg_ptr,stack) *new_rec,
unsigned int ix; unsigned int ix;
struct df_mw_hardreg *new_reg; struct df_mw_hardreg *new_reg;
for (ix = 0; VEC_iterate (df_mw_hardreg_ptr, new_rec, ix, new_reg); ++ix) FOR_EACH_VEC_ELT (df_mw_hardreg_ptr, new_rec, ix, new_reg)
{ {
if (*old_rec == NULL || !df_mw_equal_p (new_reg, *old_rec)) if (*old_rec == NULL || !df_mw_equal_p (new_reg, *old_rec))
{ {

View File

@ -1198,7 +1198,7 @@ determine_dominators_for_sons (struct graph *g, VEC (basic_block, heap) *bbs,
for (i = nc - 1; i >= 0; i--) for (i = nc - 1; i >= 0; i--)
{ {
dom = NULL; dom = NULL;
for (si = 0; VEC_iterate (int, sccs[i], si, a); si++) FOR_EACH_VEC_ELT (int, sccs[i], si, a)
{ {
bb = VEC_index (basic_block, bbs, a); bb = VEC_index (basic_block, bbs, a);
FOR_EACH_EDGE (e, ei, bb->preds) FOR_EACH_EDGE (e, ei, bb->preds)
@ -1211,7 +1211,7 @@ determine_dominators_for_sons (struct graph *g, VEC (basic_block, heap) *bbs,
} }
gcc_assert (dom != NULL); gcc_assert (dom != NULL);
for (si = 0; VEC_iterate (int, sccs[i], si, a); si++) FOR_EACH_VEC_ELT (int, sccs[i], si, a)
{ {
bb = VEC_index (basic_block, bbs, a); bb = VEC_index (basic_block, bbs, a);
set_immediate_dominator (CDI_DOMINATORS, bb, dom); set_immediate_dominator (CDI_DOMINATORS, bb, dom);
@ -1314,7 +1314,7 @@ iterate_fix_dominators (enum cdi_direction dir, VEC (basic_block, heap) *bbs,
conservatively correct, setting the dominators using the conservatively correct, setting the dominators using the
heuristics in prune_bbs_to_update_dominators could heuristics in prune_bbs_to_update_dominators could
create cycles in the dominance "tree", and cause ICE. */ create cycles in the dominance "tree", and cause ICE. */
for (i = 0; VEC_iterate (basic_block, bbs, i, bb); i++) FOR_EACH_VEC_ELT (basic_block, bbs, i, bb)
set_immediate_dominator (CDI_DOMINATORS, bb, NULL); set_immediate_dominator (CDI_DOMINATORS, bb, NULL);
} }
@ -1334,7 +1334,7 @@ iterate_fix_dominators (enum cdi_direction dir, VEC (basic_block, heap) *bbs,
/* Construct the graph G. */ /* Construct the graph G. */
map = pointer_map_create (); map = pointer_map_create ();
for (i = 0; VEC_iterate (basic_block, bbs, i, bb); i++) FOR_EACH_VEC_ELT (basic_block, bbs, i, bb)
{ {
/* If the dominance tree is conservatively correct, split it now. */ /* If the dominance tree is conservatively correct, split it now. */
if (conservative) if (conservative)
@ -1346,7 +1346,7 @@ iterate_fix_dominators (enum cdi_direction dir, VEC (basic_block, heap) *bbs,
g = new_graph (n + 1); g = new_graph (n + 1);
for (y = 0; y < g->n_vertices; y++) for (y = 0; y < g->n_vertices; y++)
g->vertices[y].data = BITMAP_ALLOC (NULL); g->vertices[y].data = BITMAP_ALLOC (NULL);
for (i = 0; VEC_iterate (basic_block, bbs, i, bb); i++) FOR_EACH_VEC_ELT (basic_block, bbs, i, bb)
{ {
FOR_EACH_EDGE (e, ei, bb->preds) FOR_EACH_EDGE (e, ei, bb->preds)
{ {

View File

@ -2772,7 +2772,7 @@ dse_step2_init (void)
unsigned int i; unsigned int i;
group_info_t group; group_info_t group;
for (i = 0; VEC_iterate (group_info_t, rtx_group_vec, i, group); i++) FOR_EACH_VEC_ELT (group_info_t, rtx_group_vec, i, group)
{ {
/* For all non stack related bases, we only consider a store to /* For all non stack related bases, we only consider a store to
be deletable if there are two or more stores for that be deletable if there are two or more stores for that
@ -2824,7 +2824,7 @@ dse_step2_nospill (void)
unused. */ unused. */
current_position = 1; current_position = 1;
for (i = 0; VEC_iterate (group_info_t, rtx_group_vec, i, group); i++) FOR_EACH_VEC_ELT (group_info_t, rtx_group_vec, i, group)
{ {
bitmap_iterator bi; bitmap_iterator bi;
unsigned int j; unsigned int j;
@ -3067,7 +3067,7 @@ scan_reads_nospill (insn_info_t insn_info, bitmap gen, bitmap kill)
/* If this insn reads the frame, kill all the frame related stores. */ /* If this insn reads the frame, kill all the frame related stores. */
if (insn_info->frame_read) if (insn_info->frame_read)
{ {
for (i = 0; VEC_iterate (group_info_t, rtx_group_vec, i, group); i++) FOR_EACH_VEC_ELT (group_info_t, rtx_group_vec, i, group)
if (group->process_globally && group->frame_related) if (group->process_globally && group->frame_related)
{ {
if (kill) if (kill)
@ -3078,7 +3078,7 @@ scan_reads_nospill (insn_info_t insn_info, bitmap gen, bitmap kill)
while (read_info) while (read_info)
{ {
for (i = 0; VEC_iterate (group_info_t, rtx_group_vec, i, group); i++) FOR_EACH_VEC_ELT (group_info_t, rtx_group_vec, i, group)
{ {
if (group->process_globally) if (group->process_globally)
{ {
@ -3259,7 +3259,7 @@ dse_step3_exit_block_scan (bb_info_t bb_info)
unsigned int i; unsigned int i;
group_info_t group; group_info_t group;
for (i = 0; VEC_iterate (group_info_t, rtx_group_vec, i, group); i++) FOR_EACH_VEC_ELT (group_info_t, rtx_group_vec, i, group)
{ {
if (group->process_globally && group->frame_related) if (group->process_globally && group->frame_related)
bitmap_ior_into (bb_info->gen, group->group_kill); bitmap_ior_into (bb_info->gen, group->group_kill);
@ -3341,7 +3341,7 @@ dse_step3 (bool for_spills)
group_info_t group; group_info_t group;
all_ones = BITMAP_ALLOC (NULL); all_ones = BITMAP_ALLOC (NULL);
for (j = 0; VEC_iterate (group_info_t, rtx_group_vec, j, group); j++) FOR_EACH_VEC_ELT (group_info_t, rtx_group_vec, j, group)
bitmap_ior_into (all_ones, group->group_kill); bitmap_ior_into (all_ones, group->group_kill);
} }
if (!bb_info->out) if (!bb_info->out)
@ -3743,7 +3743,7 @@ dse_step7 (bool global_done)
group_info_t group; group_info_t group;
basic_block bb; basic_block bb;
for (i = 0; VEC_iterate (group_info_t, rtx_group_vec, i, group); i++) FOR_EACH_VEC_ELT (group_info_t, rtx_group_vec, i, group)
{ {
free (group->offset_map_n); free (group->offset_map_n);
free (group->offset_map_p); free (group->offset_map_p);

View File

@ -7560,7 +7560,7 @@ get_AT (dw_die_ref die, enum dwarf_attribute attr_kind)
if (! die) if (! die)
return NULL; return NULL;
for (ix = 0; VEC_iterate (dw_attr_node, die->die_attr, ix, a); ix++) FOR_EACH_VEC_ELT (dw_attr_node, die->die_attr, ix, a)
if (a->dw_attr == attr_kind) if (a->dw_attr == attr_kind)
return a; return a;
else if (a->dw_attr == DW_AT_specification else if (a->dw_attr == DW_AT_specification
@ -7689,7 +7689,7 @@ remove_AT (dw_die_ref die, enum dwarf_attribute attr_kind)
if (! die) if (! die)
return; return;
for (ix = 0; VEC_iterate (dw_attr_node, die->die_attr, ix, a); ix++) FOR_EACH_VEC_ELT (dw_attr_node, die->die_attr, ix, a)
if (a->dw_attr == attr_kind) if (a->dw_attr == attr_kind)
{ {
if (AT_class (a) == dw_val_class_str) if (AT_class (a) == dw_val_class_str)
@ -8277,7 +8277,7 @@ print_die (dw_die_ref die, FILE *outfile)
fprintf (outfile, "\n"); fprintf (outfile, "\n");
} }
for (ix = 0; VEC_iterate (dw_attr_node, die->die_attr, ix, a); ix++) FOR_EACH_VEC_ELT (dw_attr_node, die->die_attr, ix, a)
{ {
print_spaces (outfile); print_spaces (outfile);
fprintf (outfile, " %s: ", dwarf_attr_name (a->dw_attr)); fprintf (outfile, " %s: ", dwarf_attr_name (a->dw_attr));
@ -8556,7 +8556,7 @@ die_checksum (dw_die_ref die, struct md5_ctx *ctx, int *mark)
CHECKSUM (die->die_tag); CHECKSUM (die->die_tag);
for (ix = 0; VEC_iterate (dw_attr_node, die->die_attr, ix, a); ix++) FOR_EACH_VEC_ELT (dw_attr_node, die->die_attr, ix, a)
attr_checksum (a, ctx, mark); attr_checksum (a, ctx, mark);
FOR_EACH_CHILD (die, c, die_checksum (c, ctx, mark)); FOR_EACH_CHILD (die, c, die_checksum (c, ctx, mark));
@ -8869,7 +8869,7 @@ collect_checksum_attributes (struct checksum_attributes *attrs, dw_die_ref die)
dw_attr_ref a; dw_attr_ref a;
unsigned ix; unsigned ix;
for (ix = 0; VEC_iterate (dw_attr_node, die->die_attr, ix, a); ix++) FOR_EACH_VEC_ELT (dw_attr_node, die->die_attr, ix, a)
{ {
switch (a->dw_attr) switch (a->dw_attr)
{ {
@ -9303,7 +9303,7 @@ same_die_p (dw_die_ref die1, dw_die_ref die2, int *mark)
!= VEC_length (dw_attr_node, die2->die_attr)) != VEC_length (dw_attr_node, die2->die_attr))
return 0; return 0;
for (ix = 0; VEC_iterate (dw_attr_node, die1->die_attr, ix, a1); ix++) FOR_EACH_VEC_ELT (dw_attr_node, die1->die_attr, ix, a1)
if (!same_attr_p (a1, VEC_index (dw_attr_node, die2->die_attr, ix), mark)) if (!same_attr_p (a1, VEC_index (dw_attr_node, die2->die_attr, ix), mark))
return 0; return 0;
@ -9664,7 +9664,7 @@ is_declaration_die (dw_die_ref die)
dw_attr_ref a; dw_attr_ref a;
unsigned ix; unsigned ix;
for (ix = 0; VEC_iterate (dw_attr_node, die->die_attr, ix, a); ix++) FOR_EACH_VEC_ELT (dw_attr_node, die->die_attr, ix, a)
if (a->dw_attr == DW_AT_declaration) if (a->dw_attr == DW_AT_declaration)
return 1; return 1;
@ -9735,7 +9735,7 @@ clone_die (dw_die_ref die)
clone = ggc_alloc_cleared_die_node (); clone = ggc_alloc_cleared_die_node ();
clone->die_tag = die->die_tag; clone->die_tag = die->die_tag;
for (ix = 0; VEC_iterate (dw_attr_node, die->die_attr, ix, a); ix++) FOR_EACH_VEC_ELT (dw_attr_node, die->die_attr, ix, a)
add_dwarf_attr (clone, a); add_dwarf_attr (clone, a);
return clone; return clone;
@ -9776,7 +9776,7 @@ clone_as_declaration (dw_die_ref die)
clone = ggc_alloc_cleared_die_node (); clone = ggc_alloc_cleared_die_node ();
clone->die_tag = die->die_tag; clone->die_tag = die->die_tag;
for (ix = 0; VEC_iterate (dw_attr_node, die->die_attr, ix, a); ix++) FOR_EACH_VEC_ELT (dw_attr_node, die->die_attr, ix, a)
{ {
/* We don't want to copy over all attributes. /* We don't want to copy over all attributes.
For example we don't want DW_AT_byte_size because otherwise we will no For example we don't want DW_AT_byte_size because otherwise we will no
@ -9833,7 +9833,7 @@ copy_declaration_context (dw_die_ref unit, dw_die_ref die)
remove_AT (die, DW_AT_specification); remove_AT (die, DW_AT_specification);
for (ix = 0; VEC_iterate (dw_attr_node, decl->die_attr, ix, a); ix++) FOR_EACH_VEC_ELT (dw_attr_node, decl->die_attr, ix, a)
{ {
if (a->dw_attr != DW_AT_name if (a->dw_attr != DW_AT_name
&& a->dw_attr != DW_AT_declaration && a->dw_attr != DW_AT_declaration
@ -10129,7 +10129,7 @@ copy_decls_walk (dw_die_ref unit, dw_die_ref die, htab_t decl_table)
dw_attr_ref a; dw_attr_ref a;
unsigned ix; unsigned ix;
for (ix = 0; VEC_iterate (dw_attr_node, die->die_attr, ix, a); ix++) FOR_EACH_VEC_ELT (dw_attr_node, die->die_attr, ix, a)
{ {
if (AT_class (a) == dw_val_class_die_ref) if (AT_class (a) == dw_val_class_die_ref)
{ {
@ -10248,7 +10248,7 @@ output_location_lists (dw_die_ref die)
dw_attr_ref a; dw_attr_ref a;
unsigned ix; unsigned ix;
for (ix = 0; VEC_iterate (dw_attr_node, die->die_attr, ix, a); ix++) FOR_EACH_VEC_ELT (dw_attr_node, die->die_attr, ix, a)
if (AT_class (a) == dw_val_class_loc_list) if (AT_class (a) == dw_val_class_loc_list)
output_loc_list (AT_loc_list (a)); output_loc_list (AT_loc_list (a));
@ -10271,7 +10271,7 @@ build_abbrev_table (dw_die_ref die)
/* Scan the DIE references, and mark as external any that refer to /* Scan the DIE references, and mark as external any that refer to
DIEs from other CUs (i.e. those which are not marked). */ DIEs from other CUs (i.e. those which are not marked). */
for (ix = 0; VEC_iterate (dw_attr_node, die->die_attr, ix, a); ix++) FOR_EACH_VEC_ELT (dw_attr_node, die->die_attr, ix, a)
if (AT_class (a) == dw_val_class_die_ref if (AT_class (a) == dw_val_class_die_ref
&& AT_ref (a)->die_mark == 0) && AT_ref (a)->die_mark == 0)
{ {
@ -10295,7 +10295,7 @@ build_abbrev_table (dw_die_ref die)
!= VEC_length (dw_attr_node, die->die_attr)) != VEC_length (dw_attr_node, die->die_attr))
continue; continue;
for (ix = 0; VEC_iterate (dw_attr_node, die->die_attr, ix, die_a); ix++) FOR_EACH_VEC_ELT (dw_attr_node, die->die_attr, ix, die_a)
{ {
abbrev_a = VEC_index (dw_attr_node, abbrev->die_attr, ix); abbrev_a = VEC_index (dw_attr_node, abbrev->die_attr, ix);
if ((abbrev_a->dw_attr != die_a->dw_attr) if ((abbrev_a->dw_attr != die_a->dw_attr)
@ -10359,7 +10359,7 @@ size_of_die (dw_die_ref die)
unsigned ix; unsigned ix;
size += size_of_uleb128 (die->die_abbrev); size += size_of_uleb128 (die->die_abbrev);
for (ix = 0; VEC_iterate (dw_attr_node, die->die_attr, ix, a); ix++) FOR_EACH_VEC_ELT (dw_attr_node, die->die_attr, ix, a)
{ {
switch (AT_class (a)) switch (AT_class (a))
{ {
@ -10531,7 +10531,7 @@ unmark_all_dies (dw_die_ref die)
FOR_EACH_CHILD (die, c, unmark_all_dies (c)); FOR_EACH_CHILD (die, c, unmark_all_dies (c));
for (ix = 0; VEC_iterate (dw_attr_node, die->die_attr, ix, a); ix++) FOR_EACH_VEC_ELT (dw_attr_node, die->die_attr, ix, a)
if (AT_class (a) == dw_val_class_die_ref) if (AT_class (a) == dw_val_class_die_ref)
unmark_all_dies (AT_ref (a)); unmark_all_dies (AT_ref (a));
} }
@ -10547,7 +10547,7 @@ size_of_pubnames (VEC (pubname_entry, gc) * names)
pubname_ref p; pubname_ref p;
size = DWARF_PUBNAMES_HEADER_SIZE; size = DWARF_PUBNAMES_HEADER_SIZE;
for (i = 0; VEC_iterate (pubname_entry, names, i, p); i++) FOR_EACH_VEC_ELT (pubname_entry, names, i, p)
if (names != pubtype_table if (names != pubtype_table
|| p->die->die_offset != 0 || p->die->die_offset != 0
|| !flag_eliminate_unused_debug_types) || !flag_eliminate_unused_debug_types)
@ -10905,7 +10905,7 @@ output_die (dw_die_ref die)
(unsigned long)die->die_offset, (unsigned long)die->die_offset,
dwarf_tag_name (die->die_tag)); dwarf_tag_name (die->die_tag));
for (ix = 0; VEC_iterate (dw_attr_node, die->die_attr, ix, a); ix++) FOR_EACH_VEC_ELT (dw_attr_node, die->die_attr, ix, a)
{ {
const char *name = dwarf_attr_name (a->dw_attr); const char *name = dwarf_attr_name (a->dw_attr);
@ -11371,7 +11371,7 @@ output_pubnames (VEC (pubname_entry, gc) * names)
dw2_asm_output_data (DWARF_OFFSET_SIZE, next_die_offset, dw2_asm_output_data (DWARF_OFFSET_SIZE, next_die_offset,
"Compilation Unit Length"); "Compilation Unit Length");
for (i = 0; VEC_iterate (pubname_entry, names, i, pub); i++) FOR_EACH_VEC_ELT (pubname_entry, names, i, pub)
{ {
/* We shouldn't see pubnames for DIEs outside of the main CU. */ /* We shouldn't see pubnames for DIEs outside of the main CU. */
if (names == pubname_table) if (names == pubname_table)
@ -12318,7 +12318,7 @@ size_of_dcall_table (void)
size = 2 + DWARF_OFFSET_SIZE + 1; size = 2 + DWARF_OFFSET_SIZE + 1;
/* Each entry: code label + DIE offset. */ /* Each entry: code label + DIE offset. */
for (i = 0; VEC_iterate (dcall_entry, dcall_table, i, p); i++) FOR_EACH_VEC_ELT (dcall_entry, dcall_table, i, p)
{ {
gcc_assert (p->targ_die != NULL); gcc_assert (p->targ_die != NULL);
/* Insert a "from" entry when the point-of-call DIE offset changes. */ /* Insert a "from" entry when the point-of-call DIE offset changes. */
@ -12360,7 +12360,7 @@ output_dcall_table (void)
"Offset of Compilation Unit Info"); "Offset of Compilation Unit Info");
dw2_asm_output_data (1, DWARF2_ADDR_SIZE, "Pointer Size (in bytes)"); dw2_asm_output_data (1, DWARF2_ADDR_SIZE, "Pointer Size (in bytes)");
for (i = 0; VEC_iterate (dcall_entry, dcall_table, i, p); i++) FOR_EACH_VEC_ELT (dcall_entry, dcall_table, i, p)
{ {
/* Insert a "from" entry when the point-of-call DIE offset changes. */ /* Insert a "from" entry when the point-of-call DIE offset changes. */
if (p->poc_decl != last_poc_decl) if (p->poc_decl != last_poc_decl)
@ -12394,7 +12394,7 @@ size_of_vcall_table (void)
size = 2 + 1; size = 2 + 1;
/* Each entry: code label + vtable slot index. */ /* Each entry: code label + vtable slot index. */
for (i = 0; VEC_iterate (vcall_entry, vcall_table, i, p); i++) FOR_EACH_VEC_ELT (vcall_entry, vcall_table, i, p)
size += DWARF_OFFSET_SIZE + size_of_uleb128 (p->vtable_slot); size += DWARF_OFFSET_SIZE + size_of_uleb128 (p->vtable_slot);
return size; return size;
@ -12419,7 +12419,7 @@ output_vcall_table (void)
dw2_asm_output_data (2, 4, "Version number"); dw2_asm_output_data (2, 4, "Version number");
dw2_asm_output_data (1, DWARF2_ADDR_SIZE, "Pointer Size (in bytes)"); dw2_asm_output_data (1, DWARF2_ADDR_SIZE, "Pointer Size (in bytes)");
for (i = 0; VEC_iterate (vcall_entry, vcall_table, i, p); i++) FOR_EACH_VEC_ELT (vcall_entry, vcall_table, i, p)
{ {
ASM_GENERATE_INTERNAL_LABEL (poc_label, "LPOC", p->poc_label_num); ASM_GENERATE_INTERNAL_LABEL (poc_label, "LPOC", p->poc_label_num);
dw2_asm_output_addr (DWARF_OFFSET_SIZE, poc_label, "Point of call"); dw2_asm_output_addr (DWARF_OFFSET_SIZE, poc_label, "Point of call");
@ -16713,9 +16713,7 @@ native_encode_initializer (tree init, unsigned char *array, int size)
min_index = tree_low_cst (TYPE_MIN_VALUE (TYPE_DOMAIN (type)), 0); min_index = tree_low_cst (TYPE_MIN_VALUE (TYPE_DOMAIN (type)), 0);
memset (array, '\0', size); memset (array, '\0', size);
for (cnt = 0; FOR_EACH_VEC_ELT (constructor_elt, CONSTRUCTOR_ELTS (init), cnt, ce)
VEC_iterate (constructor_elt, CONSTRUCTOR_ELTS (init), cnt, ce);
cnt++)
{ {
tree val = ce->value; tree val = ce->value;
tree index = ce->index; tree index = ce->index;
@ -16761,9 +16759,7 @@ native_encode_initializer (tree init, unsigned char *array, int size)
if (TREE_CODE (type) == RECORD_TYPE) if (TREE_CODE (type) == RECORD_TYPE)
field = TYPE_FIELDS (type); field = TYPE_FIELDS (type);
for (cnt = 0; FOR_EACH_VEC_ELT (constructor_elt, CONSTRUCTOR_ELTS (init), cnt, ce)
VEC_iterate (constructor_elt, CONSTRUCTOR_ELTS (init), cnt, ce);
cnt++, field = field ? DECL_CHAIN (field) : 0)
{ {
tree val = ce->value; tree val = ce->value;
int pos, fieldsize; int pos, fieldsize;
@ -21121,9 +21117,7 @@ gen_remaining_tmpl_value_param_die_attribute (void)
unsigned i; unsigned i;
die_arg_entry *e; die_arg_entry *e;
for (i = 0; FOR_EACH_VEC_ELT (die_arg_entry, tmpl_value_parm_die_table, i, e)
VEC_iterate (die_arg_entry, tmpl_value_parm_die_table, i, e);
i++)
tree_add_const_value_attribute (e->die, e->arg); tree_add_const_value_attribute (e->die, e->arg);
} }
} }
@ -21733,7 +21727,7 @@ prune_unused_types_walk_attribs (dw_die_ref die)
dw_attr_ref a; dw_attr_ref a;
unsigned ix; unsigned ix;
for (ix = 0; VEC_iterate (dw_attr_node, die->die_attr, ix, a); ix++) FOR_EACH_VEC_ELT (dw_attr_node, die->die_attr, ix, a)
{ {
if (a->dw_attr_val.val_class == dw_val_class_die_ref) if (a->dw_attr_val.val_class == dw_val_class_die_ref)
{ {
@ -21918,7 +21912,7 @@ prune_unused_types_update_strings (dw_die_ref die)
dw_attr_ref a; dw_attr_ref a;
unsigned ix; unsigned ix;
for (ix = 0; VEC_iterate (dw_attr_node, die->die_attr, ix, a); ix++) FOR_EACH_VEC_ELT (dw_attr_node, die->die_attr, ix, a)
if (AT_class (a) == dw_val_class_str) if (AT_class (a) == dw_val_class_str)
{ {
struct indirect_string_node *s = a->dw_attr_val.v.val_str; struct indirect_string_node *s = a->dw_attr_val.v.val_str;
@ -22025,13 +22019,13 @@ prune_unused_types (void)
/* Also set the mark on nodes referenced from the /* Also set the mark on nodes referenced from the
pubname_table or arange_table. */ pubname_table or arange_table. */
for (i = 0; VEC_iterate (pubname_entry, pubname_table, i, pub); i++) FOR_EACH_VEC_ELT (pubname_entry, pubname_table, i, pub)
prune_unused_types_mark (pub->die, 1); prune_unused_types_mark (pub->die, 1);
for (i = 0; i < arange_table_in_use; i++) for (i = 0; i < arange_table_in_use; i++)
prune_unused_types_mark (arange_table[i], 1); prune_unused_types_mark (arange_table[i], 1);
/* Mark nodes referenced from the direct call table. */ /* Mark nodes referenced from the direct call table. */
for (i = 0; VEC_iterate (dcall_entry, dcall_table, i, dcall); i++) FOR_EACH_VEC_ELT (dcall_entry, dcall_table, i, dcall)
prune_unused_types_mark (dcall->targ_die, 1); prune_unused_types_mark (dcall->targ_die, 1);
/* Get rid of nodes that aren't marked; and update the string counts. */ /* Get rid of nodes that aren't marked; and update the string counts. */
@ -22190,7 +22184,7 @@ resolve_addr (dw_die_ref die)
dw_loc_list_ref *curr; dw_loc_list_ref *curr;
unsigned ix; unsigned ix;
for (ix = 0; VEC_iterate (dw_attr_node, die->die_attr, ix, a); ix++) FOR_EACH_VEC_ELT (dw_attr_node, die->die_attr, ix, a)
switch (AT_class (a)) switch (AT_class (a))
{ {
case dw_val_class_loc_list: case dw_val_class_loc_list:

View File

@ -3057,7 +3057,7 @@ output_one_function_exception_table (const char * ARG_UNUSED (fnname),
/* ??? Decode and interpret the data for flag_debug_asm. */ /* ??? Decode and interpret the data for flag_debug_asm. */
{ {
uchar uc; uchar uc;
for (i = 0; VEC_iterate (uchar, crtl->eh.action_record_data, i, uc); ++i) FOR_EACH_VEC_ELT (uchar, crtl->eh.action_record_data, i, uc)
dw2_asm_output_data (1, uc, i ? NULL : "Action record table"); dw2_asm_output_data (1, uc, i ? NULL : "Action record table");
} }

View File

@ -6599,9 +6599,7 @@ safe_from_p (const_rtx x, tree exp, int top_p)
constructor_elt *ce; constructor_elt *ce;
unsigned HOST_WIDE_INT idx; unsigned HOST_WIDE_INT idx;
for (idx = 0; FOR_EACH_VEC_ELT (constructor_elt, CONSTRUCTOR_ELTS (exp), idx, ce)
VEC_iterate (constructor_elt, CONSTRUCTOR_ELTS (exp), idx, ce);
idx++)
if ((ce->index != NULL_TREE && !safe_from_p (x, ce->index, 0)) if ((ce->index != NULL_TREE && !safe_from_p (x, ce->index, 0))
|| !safe_from_p (x, ce->value, 0)) || !safe_from_p (x, ce->value, 0))
return 0; return 0;

View File

@ -1,3 +1,7 @@
2010-08-20 Nathan Froyd <froydnj@codesourcery.com>
* trans-openmp.c: Use FOR_EACH_VEC_ELT.
2010-08-19 Daniel Kraft <d@domob.eu> 2010-08-19 Daniel Kraft <d@domob.eu>
PR fortran/29785 PR fortran/29785

View File

@ -1357,7 +1357,7 @@ gfc_trans_omp_do (gfc_code *code, stmtblock_t *pblock,
gfc_start_block (&body); gfc_start_block (&body);
for (ix = 0; VEC_iterate (dovar_init, inits, ix, di); ix++) FOR_EACH_VEC_ELT (dovar_init, inits, ix, di)
gfc_add_modify (&body, di->var, di->init); gfc_add_modify (&body, di->var, di->init);
VEC_free (dovar_init, heap, inits); VEC_free (dovar_init, heap, inits);

View File

@ -2171,7 +2171,7 @@ split_complex_args (VEC(tree, heap) **args)
unsigned i; unsigned i;
tree p; tree p;
for (i = 0; VEC_iterate (tree, *args, i, p); ++i) FOR_EACH_VEC_ELT (tree, *args, i, p)
{ {
tree type = TREE_TYPE (p); tree type = TREE_TYPE (p);
if (TREE_CODE (type) == COMPLEX_TYPE if (TREE_CODE (type) == COMPLEX_TYPE
@ -3295,7 +3295,7 @@ assign_parms (tree fndecl)
assign_parms_initialize_all (&all); assign_parms_initialize_all (&all);
fnargs = assign_parms_augmented_arg_list (&all); fnargs = assign_parms_augmented_arg_list (&all);
for (i = 0; VEC_iterate (tree, fnargs, i, parm); ++i) FOR_EACH_VEC_ELT (tree, fnargs, i, parm)
{ {
struct assign_parm_data_one data; struct assign_parm_data_one data;
@ -3523,7 +3523,7 @@ gimplify_parameters (void)
assign_parms_initialize_all (&all); assign_parms_initialize_all (&all);
fnargs = assign_parms_augmented_arg_list (&all); fnargs = assign_parms_augmented_arg_list (&all);
for (i = 0; VEC_iterate (tree, fnargs, i, parm); ++i) FOR_EACH_VEC_ELT (tree, fnargs, i, parm)
{ {
struct assign_parm_data_one data; struct assign_parm_data_one data;

View File

@ -4413,9 +4413,7 @@ hoist_code (void)
/* Walk over each basic block looking for potentially hoistable /* Walk over each basic block looking for potentially hoistable
expressions, nothing gets hoisted from the entry block. */ expressions, nothing gets hoisted from the entry block. */
for (dom_tree_walk_index = 0; FOR_EACH_VEC_ELT (basic_block, dom_tree_walk, dom_tree_walk_index, bb)
VEC_iterate (basic_block, dom_tree_walk, dom_tree_walk_index, bb);
dom_tree_walk_index++)
{ {
domby = get_dominated_to_depth (CDI_DOMINATORS, bb, MAX_HOIST_DEPTH); domby = get_dominated_to_depth (CDI_DOMINATORS, bb, MAX_HOIST_DEPTH);
@ -4468,7 +4466,7 @@ hoist_code (void)
/* We've found a potentially hoistable expression, now /* We've found a potentially hoistable expression, now
we look at every block BB dominates to see if it we look at every block BB dominates to see if it
computes the expression. */ computes the expression. */
for (j = 0; VEC_iterate (basic_block, domby, j, dominated); j++) FOR_EACH_VEC_ELT (basic_block, domby, j, dominated)
{ {
int max_distance; int max_distance;
@ -4552,9 +4550,7 @@ hoist_code (void)
/* Walk through occurences of I'th expressions we want /* Walk through occurences of I'th expressions we want
to hoist to BB and make the transformations. */ to hoist to BB and make the transformations. */
for (j = 0; FOR_EACH_VEC_ELT (occr_t, occrs_to_hoist, j, occr)
VEC_iterate (occr_t, occrs_to_hoist, j, occr);
j++)
{ {
rtx insn; rtx insn;
rtx set; rtx set;

View File

@ -142,13 +142,13 @@ find_tune_attr (rtx exp)
if (strcmp (XSTR (exp, 0), "alternative") == 0) if (strcmp (XSTR (exp, 0), "alternative") == 0)
return false; return false;
for (i = 0; VEC_iterate (rtx, const_attrs, i, attr); i++) FOR_EACH_VEC_ELT (rtx, const_attrs, i, attr)
if (strcmp (XSTR (attr, 0), XSTR (exp, 0)) == 0) if (strcmp (XSTR (attr, 0), XSTR (exp, 0)) == 0)
{ {
unsigned int j; unsigned int j;
rtx resv; rtx resv;
for (j = 0; VEC_iterate (rtx, reservations, j, resv); j++) FOR_EACH_VEC_ELT (rtx, reservations, j, resv)
if (! check_tune_attr (XSTR (attr, 0), XEXP (resv, 2))) if (! check_tune_attr (XSTR (attr, 0), XEXP (resv, 2)))
return false; return false;
return true; return true;

View File

@ -168,7 +168,7 @@ ggc_mark_roots (void)
for (i = 0; i < rti->nelt; i++) for (i = 0; i < rti->nelt; i++)
(*rti->cb) (*(void **)((char *)rti->base + rti->stride * i)); (*rti->cb) (*(void **)((char *)rti->base + rti->stride * i));
for (i = 0; VEC_iterate (const_ggc_root_tab_t, extra_root_vec, i, rtp); i++) FOR_EACH_VEC_ELT (const_ggc_root_tab_t, extra_root_vec, i, rtp)
{ {
for (rti = rtp; rti->base != NULL; rti++) for (rti = rtp; rti->base != NULL; rti++)
for (i = 0; i < rti->nelt; i++) for (i = 0; i < rti->nelt; i++)
@ -183,7 +183,7 @@ ggc_mark_roots (void)
for (ct = gt_ggc_cache_rtab; *ct; ct++) for (ct = gt_ggc_cache_rtab; *ct; ct++)
ggc_scan_cache_tab (*ct); ggc_scan_cache_tab (*ct);
for (i = 0; VEC_iterate (const_ggc_cache_tab_t, extra_cache_vec, i, ctp); i++) FOR_EACH_VEC_ELT (const_ggc_cache_tab_t, extra_cache_vec, i, ctp)
ggc_scan_cache_tab (ctp); ggc_scan_cache_tab (ctp);
if (! ggc_protect_identifiers) if (! ggc_protect_identifiers)

View File

@ -3328,7 +3328,7 @@ gimplify_init_ctor_preeval (tree *expr_p, gimple_seq *pre_p, gimple_seq *post_p,
constructor_elt *ce; constructor_elt *ce;
VEC(constructor_elt,gc) *v = CONSTRUCTOR_ELTS (*expr_p); VEC(constructor_elt,gc) *v = CONSTRUCTOR_ELTS (*expr_p);
for (ix = 0; VEC_iterate (constructor_elt, v, ix, ce); ix++) FOR_EACH_VEC_ELT (constructor_elt, v, ix, ce)
gimplify_init_ctor_preeval (&ce->value, pre_p, post_p, data); gimplify_init_ctor_preeval (&ce->value, pre_p, post_p, data);
return; return;
@ -3957,7 +3957,7 @@ gimplify_init_constructor (tree *expr_p, gimple_seq *pre_p, gimple_seq *post_p,
/* Vector types use CONSTRUCTOR all the way through gimple /* Vector types use CONSTRUCTOR all the way through gimple
compilation as a general initializer. */ compilation as a general initializer. */
for (ix = 0; VEC_iterate (constructor_elt, elts, ix, ce); ix++) FOR_EACH_VEC_ELT (constructor_elt, elts, ix, ce)
{ {
enum gimplify_status tret; enum gimplify_status tret;
tret = gimplify_expr (&ce->value, pre_p, post_p, is_gimple_val, tret = gimplify_expr (&ce->value, pre_p, post_p, is_gimple_val,
@ -6918,14 +6918,11 @@ gimplify_expr (tree *expr_p, gimple_seq *pre_p, gimple_seq *post_p,
if (fallback == fb_none) if (fallback == fb_none)
{ {
unsigned HOST_WIDE_INT ix; unsigned HOST_WIDE_INT ix;
constructor_elt *ce; tree val;
tree temp = NULL_TREE; tree temp = NULL_TREE;
for (ix = 0; FOR_EACH_CONSTRUCTOR_VALUE (CONSTRUCTOR_ELTS (*expr_p), ix, val)
VEC_iterate (constructor_elt, CONSTRUCTOR_ELTS (*expr_p), if (TREE_SIDE_EFFECTS (val))
ix, ce); append_to_statement_list (val, &temp);
ix++)
if (TREE_SIDE_EFFECTS (ce->value))
append_to_statement_list (ce->value, &temp);
*expr_p = temp; *expr_p = temp;
ret = temp ? GS_OK : GS_ALL_DONE; ret = temp ? GS_OK : GS_ALL_DONE;

View File

@ -212,7 +212,7 @@ lst_do_strip_mine_loop (lst_p lst, int depth)
{ {
bool res = false; bool res = false;
for (i = 0; VEC_iterate (lst_p, LST_SEQ (lst), i, l); i++) FOR_EACH_VEC_ELT (lst_p, LST_SEQ (lst), i, l)
res |= lst_do_strip_mine_loop (l, depth); res |= lst_do_strip_mine_loop (l, depth);
return res; return res;
@ -239,7 +239,7 @@ lst_do_strip_mine (lst_p lst)
|| !LST_LOOP_P (lst)) || !LST_LOOP_P (lst))
return false; return false;
for (i = 0; VEC_iterate (lst_p, LST_SEQ (lst), i, l); i++) FOR_EACH_VEC_ELT (lst_p, LST_SEQ (lst), i, l)
res |= lst_do_strip_mine (l); res |= lst_do_strip_mine (l);
depth = lst_depth (lst); depth = lst_depth (lst);

View File

@ -1224,7 +1224,7 @@ build_cloog_prog (scop_p scop, CloogProgram *prog,
cloog_program_set_nb_scattdims (prog, nbs); cloog_program_set_nb_scattdims (prog, nbs);
initialize_cloog_names (scop, prog); initialize_cloog_names (scop, prog);
for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb); i++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), i, pbb)
{ {
CloogStatement *stmt; CloogStatement *stmt;
CloogBlock *block; CloogBlock *block;

View File

@ -585,7 +585,7 @@ reduction_dr_1 (poly_bb_p pbb1, poly_dr_p pdr1, poly_dr_p pdr2)
int i; int i;
poly_dr_p pdr; poly_dr_p pdr;
for (i = 0; VEC_iterate (poly_dr_p, PBB_DRS (pbb1), i, pdr); i++) FOR_EACH_VEC_ELT (poly_dr_p, PBB_DRS (pbb1), i, pdr)
if (PDR_TYPE (pdr) == PDR_WRITE) if (PDR_TYPE (pdr) == PDR_WRITE)
break; break;
@ -722,8 +722,8 @@ graphite_legal_transform_bb (poly_bb_p pbb1, poly_bb_p pbb2)
if (reduction_ddr_p (pbb1, pbb2)) if (reduction_ddr_p (pbb1, pbb2))
return true; return true;
for (i = 0; VEC_iterate (poly_dr_p, PBB_DRS (pbb1), i, pdr1); i++) FOR_EACH_VEC_ELT (poly_dr_p, PBB_DRS (pbb1), i, pdr1)
for (j = 0; VEC_iterate (poly_dr_p, PBB_DRS (pbb2), j, pdr2); j++) FOR_EACH_VEC_ELT (poly_dr_p, PBB_DRS (pbb2), j, pdr2)
if (!graphite_legal_transform_dr (pdr1, pdr2)) if (!graphite_legal_transform_dr (pdr1, pdr2))
return false; return false;
@ -741,8 +741,8 @@ graphite_legal_transform (scop_p scop)
timevar_push (TV_GRAPHITE_DATA_DEPS); timevar_push (TV_GRAPHITE_DATA_DEPS);
for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb1); i++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), i, pbb1)
for (j = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), j, pbb2); j++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), j, pbb2)
if (!graphite_legal_transform_bb (pbb1, pbb2)) if (!graphite_legal_transform_bb (pbb1, pbb2))
{ {
timevar_pop (TV_GRAPHITE_DATA_DEPS); timevar_pop (TV_GRAPHITE_DATA_DEPS);
@ -803,8 +803,8 @@ dependency_between_pbbs_p (poly_bb_p pbb1, poly_bb_p pbb2, int level)
timevar_push (TV_GRAPHITE_DATA_DEPS); timevar_push (TV_GRAPHITE_DATA_DEPS);
for (i = 0; VEC_iterate (poly_dr_p, PBB_DRS (pbb1), i, pdr1); i++) FOR_EACH_VEC_ELT (poly_dr_p, PBB_DRS (pbb1), i, pdr1)
for (j = 0; VEC_iterate (poly_dr_p, PBB_DRS (pbb2), j, pdr2); j++) FOR_EACH_VEC_ELT (poly_dr_p, PBB_DRS (pbb2), j, pdr2)
if (graphite_carried_dependence_level_k (pdr1, pdr2, level)) if (graphite_carried_dependence_level_k (pdr1, pdr2, level))
{ {
timevar_pop (TV_GRAPHITE_DATA_DEPS); timevar_pop (TV_GRAPHITE_DATA_DEPS);
@ -825,11 +825,11 @@ dot_original_deps_stmt_1 (FILE *file, scop_p scop)
poly_bb_p pbb1, pbb2; poly_bb_p pbb1, pbb2;
poly_dr_p pdr1, pdr2; poly_dr_p pdr1, pdr2;
for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb1); i++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), i, pbb1)
for (j = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), j, pbb2); j++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), j, pbb2)
{ {
for (k = 0; VEC_iterate (poly_dr_p, PBB_DRS (pbb1), k, pdr1); k++) FOR_EACH_VEC_ELT (poly_dr_p, PBB_DRS (pbb1), k, pdr1)
for (l = 0; VEC_iterate (poly_dr_p, PBB_DRS (pbb2), l, pdr2); l++) FOR_EACH_VEC_ELT (poly_dr_p, PBB_DRS (pbb2), l, pdr2)
if (!pddr_is_empty (dependence_polyhedron (pdr1, pdr2, 1, true))) if (!pddr_is_empty (dependence_polyhedron (pdr1, pdr2, 1, true)))
{ {
fprintf (file, "OS%d -> OS%d\n", fprintf (file, "OS%d -> OS%d\n",
@ -850,11 +850,11 @@ dot_transformed_deps_stmt_1 (FILE *file, scop_p scop)
poly_bb_p pbb1, pbb2; poly_bb_p pbb1, pbb2;
poly_dr_p pdr1, pdr2; poly_dr_p pdr1, pdr2;
for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb1); i++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), i, pbb1)
for (j = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), j, pbb2); j++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), j, pbb2)
{ {
for (k = 0; VEC_iterate (poly_dr_p, PBB_DRS (pbb1), k, pdr1); k++) FOR_EACH_VEC_ELT (poly_dr_p, PBB_DRS (pbb1), k, pdr1)
for (l = 0; VEC_iterate (poly_dr_p, PBB_DRS (pbb2), l, pdr2); l++) FOR_EACH_VEC_ELT (poly_dr_p, PBB_DRS (pbb2), l, pdr2)
{ {
poly_ddr_p pddr = dependence_polyhedron (pdr1, pdr2, 1, false); poly_ddr_p pddr = dependence_polyhedron (pdr1, pdr2, 1, false);
@ -898,10 +898,10 @@ dot_original_deps (FILE *file, scop_p scop)
poly_bb_p pbb1, pbb2; poly_bb_p pbb1, pbb2;
poly_dr_p pdr1, pdr2; poly_dr_p pdr1, pdr2;
for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb1); i++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), i, pbb1)
for (j = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), j, pbb2); j++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), j, pbb2)
for (k = 0; VEC_iterate (poly_dr_p, PBB_DRS (pbb1), k, pdr1); k++) FOR_EACH_VEC_ELT (poly_dr_p, PBB_DRS (pbb1), k, pdr1)
for (l = 0; VEC_iterate (poly_dr_p, PBB_DRS (pbb2), l, pdr2); l++) FOR_EACH_VEC_ELT (poly_dr_p, PBB_DRS (pbb2), l, pdr2)
if (!pddr_is_empty (dependence_polyhedron (pdr1, pdr2, 1, true))) if (!pddr_is_empty (dependence_polyhedron (pdr1, pdr2, 1, true)))
fprintf (file, "OS%d_D%d -> OS%d_D%d\n", fprintf (file, "OS%d_D%d -> OS%d_D%d\n",
pbb_index (pbb1), PDR_ID (pdr1), pbb_index (pbb1), PDR_ID (pdr1),
@ -918,10 +918,10 @@ dot_transformed_deps (FILE *file, scop_p scop)
poly_bb_p pbb1, pbb2; poly_bb_p pbb1, pbb2;
poly_dr_p pdr1, pdr2; poly_dr_p pdr1, pdr2;
for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb1); i++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), i, pbb1)
for (j = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), j, pbb2); j++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), j, pbb2)
for (k = 0; VEC_iterate (poly_dr_p, PBB_DRS (pbb1), k, pdr1); k++) FOR_EACH_VEC_ELT (poly_dr_p, PBB_DRS (pbb1), k, pdr1)
for (l = 0; VEC_iterate (poly_dr_p, PBB_DRS (pbb2), l, pdr2); l++) FOR_EACH_VEC_ELT (poly_dr_p, PBB_DRS (pbb2), l, pdr2)
{ {
poly_ddr_p pddr = dependence_polyhedron (pdr1, pdr2, 1, false); poly_ddr_p pddr = dependence_polyhedron (pdr1, pdr2, 1, false);

View File

@ -349,11 +349,11 @@ memory_strides_in_loop_1 (lst_p loop, graphite_dim_t depth, mpz_t strides)
mpz_init (s); mpz_init (s);
mpz_init (n); mpz_init (n);
for (j = 0; VEC_iterate (lst_p, LST_SEQ (loop), j, l); j++) FOR_EACH_VEC_ELT (lst_p, LST_SEQ (loop), j, l)
if (LST_LOOP_P (l)) if (LST_LOOP_P (l))
memory_strides_in_loop_1 (l, depth, strides); memory_strides_in_loop_1 (l, depth, strides);
else else
for (i = 0; VEC_iterate (poly_dr_p, PBB_DRS (LST_PBB (l)), i, pdr); i++) FOR_EACH_VEC_ELT (poly_dr_p, PBB_DRS (LST_PBB (l)), i, pdr)
{ {
pdr_stride_in_loop (s, depth, pdr); pdr_stride_in_loop (s, depth, pdr);
mpz_set_si (n, PDR_NB_REFS (pdr)); mpz_set_si (n, PDR_NB_REFS (pdr));
@ -526,7 +526,7 @@ lst_apply_interchange (lst_p lst, int depth1, int depth2)
int i; int i;
lst_p l; lst_p l;
for (i = 0; VEC_iterate (lst_p, LST_SEQ (lst), i, l); i++) FOR_EACH_VEC_ELT (lst_p, LST_SEQ (lst), i, l)
lst_apply_interchange (l, depth1, depth2); lst_apply_interchange (l, depth1, depth2);
} }
else else
@ -672,7 +672,7 @@ lst_interchange_select_inner (scop_p scop, lst_p outer_father, int outer,
loop1 = VEC_index (lst_p, LST_SEQ (outer_father), outer); loop1 = VEC_index (lst_p, LST_SEQ (outer_father), outer);
for (inner = 0; VEC_iterate (lst_p, LST_SEQ (inner_father), inner, loop2); inner++) FOR_EACH_VEC_ELT (lst_p, LST_SEQ (inner_father), inner, loop2)
if (LST_LOOP_P (loop2) if (LST_LOOP_P (loop2)
&& (lst_try_interchange_loops (scop, loop1, loop2) && (lst_try_interchange_loops (scop, loop1, loop2)
|| lst_interchange_select_inner (scop, outer_father, outer, loop2))) || lst_interchange_select_inner (scop, outer_father, outer, loop2)))
@ -708,7 +708,7 @@ lst_interchange_select_outer (scop_p scop, lst_p loop, int outer)
} }
if (LST_LOOP_P (loop)) if (LST_LOOP_P (loop))
for (i = 0; VEC_iterate (lst_p, LST_SEQ (loop), i, l); i++) FOR_EACH_VEC_ELT (lst_p, LST_SEQ (loop), i, l)
if (LST_LOOP_P (l)) if (LST_LOOP_P (l))
res |= lst_interchange_select_outer (scop, l, i); res |= lst_interchange_select_outer (scop, l, i);

View File

@ -62,7 +62,7 @@ scop_max_loop_depth (scop_p scop)
poly_bb_p pbb; poly_bb_p pbb;
int max_nb_loops = 0; int max_nb_loops = 0;
for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb); i++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), i, pbb)
{ {
int nb_loops = pbb_dim_iter_domain (pbb); int nb_loops = pbb_dim_iter_domain (pbb);
if (max_nb_loops < nb_loops) if (max_nb_loops < nb_loops)
@ -127,10 +127,10 @@ unify_scattering_dimensions (scop_p scop)
poly_bb_p pbb; poly_bb_p pbb;
graphite_dim_t max_scattering = 0; graphite_dim_t max_scattering = 0;
for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb); i++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), i, pbb)
max_scattering = MAX (pbb_nb_scattering_transform (pbb), max_scattering); max_scattering = MAX (pbb_nb_scattering_transform (pbb), max_scattering);
for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb); i++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), i, pbb)
extend_scattering (pbb, max_scattering); extend_scattering (pbb, max_scattering);
return max_scattering; return max_scattering;
@ -221,7 +221,7 @@ print_scattering_functions (FILE *file, scop_p scop, int verbosity)
int i; int i;
poly_bb_p pbb; poly_bb_p pbb;
for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb); i++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), i, pbb)
print_scattering_function (file, pbb, verbosity); print_scattering_function (file, pbb, verbosity);
} }
@ -234,7 +234,7 @@ print_iteration_domains (FILE *file, scop_p scop, int verbosity)
int i; int i;
poly_bb_p pbb; poly_bb_p pbb;
for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb); i++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), i, pbb)
print_iteration_domain (file, pbb, verbosity); print_iteration_domain (file, pbb, verbosity);
} }
@ -342,8 +342,8 @@ pbb_remove_duplicate_pdrs (poly_bb_p pbb)
unsigned n = VEC_length (poly_dr_p, PBB_DRS (pbb)); unsigned n = VEC_length (poly_dr_p, PBB_DRS (pbb));
VEC (poly_dr_p, heap) *collapsed = VEC_alloc (poly_dr_p, heap, n); VEC (poly_dr_p, heap) *collapsed = VEC_alloc (poly_dr_p, heap, n);
for (i = 0; VEC_iterate (poly_dr_p, PBB_DRS (pbb), i, pdr1); i++) FOR_EACH_VEC_ELT (poly_dr_p, PBB_DRS (pbb), i, pdr1)
for (j = 0; VEC_iterate (poly_dr_p, collapsed, j, pdr2); j++) FOR_EACH_VEC_ELT (poly_dr_p, collapsed, j, pdr2)
if (!can_collapse_pdrs (pdr1, pdr2)) if (!can_collapse_pdrs (pdr1, pdr2))
VEC_quick_push (poly_dr_p, collapsed, pdr1); VEC_quick_push (poly_dr_p, collapsed, pdr1);
@ -422,7 +422,7 @@ free_poly_bb (poly_bb_p pbb)
poly_scattering_free (PBB_ORIGINAL (pbb)); poly_scattering_free (PBB_ORIGINAL (pbb));
if (PBB_DRS (pbb)) if (PBB_DRS (pbb))
for (i = 0; VEC_iterate (poly_dr_p, PBB_DRS (pbb), i, pdr); i++) FOR_EACH_VEC_ELT (poly_dr_p, PBB_DRS (pbb), i, pdr)
free_poly_dr (pdr); free_poly_dr (pdr);
VEC_free (poly_dr_p, heap, PBB_DRS (pbb)); VEC_free (poly_dr_p, heap, PBB_DRS (pbb));
@ -533,7 +533,7 @@ free_scop (scop_p scop)
int i; int i;
poly_bb_p pbb; poly_bb_p pbb;
for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb); i++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), i, pbb)
free_poly_bb (pbb); free_poly_bb (pbb);
VEC_free (poly_bb_p, heap, SCOP_BBS (scop)); VEC_free (poly_bb_p, heap, SCOP_BBS (scop));
@ -600,7 +600,7 @@ dump_gbb_cases (FILE *file, gimple_bb_p gbb)
fprintf (file, "# cases bb_%d (\n", GBB_BB (gbb)->index); fprintf (file, "# cases bb_%d (\n", GBB_BB (gbb)->index);
for (i = 0; VEC_iterate (gimple, cases, i, stmt); i++) FOR_EACH_VEC_ELT (gimple, cases, i, stmt)
{ {
fprintf (file, "# "); fprintf (file, "# ");
print_gimple_stmt (file, stmt, 0, 0); print_gimple_stmt (file, stmt, 0, 0);
@ -627,7 +627,7 @@ dump_gbb_conditions (FILE *file, gimple_bb_p gbb)
fprintf (file, "# conditions bb_%d (\n", GBB_BB (gbb)->index); fprintf (file, "# conditions bb_%d (\n", GBB_BB (gbb)->index);
for (i = 0; VEC_iterate (gimple, conditions, i, stmt); i++) FOR_EACH_VEC_ELT (gimple, conditions, i, stmt)
{ {
fprintf (file, "# "); fprintf (file, "# ");
print_gimple_stmt (file, stmt, 0, 0); print_gimple_stmt (file, stmt, 0, 0);
@ -662,7 +662,7 @@ print_pdrs (FILE *file, poly_bb_p pbb, int verbosity)
fprintf (file, "# Access informations are provided\n"); fprintf (file, "# Access informations are provided\n");
fprintf (file, "1\n"); fprintf (file, "1\n");
for (i = 0; VEC_iterate (poly_dr_p, PBB_DRS (pbb), i, pdr); i++) FOR_EACH_VEC_ELT (poly_dr_p, PBB_DRS (pbb), i, pdr)
if (PDR_TYPE (pdr) == PDR_READ) if (PDR_TYPE (pdr) == PDR_READ)
nb_reads++; nb_reads++;
else else
@ -675,7 +675,7 @@ print_pdrs (FILE *file, poly_bb_p pbb, int verbosity)
fprintf (file, "# Read access informations\n"); fprintf (file, "# Read access informations\n");
fprintf (file, "%d\n", nb_reads); fprintf (file, "%d\n", nb_reads);
for (i = 0; VEC_iterate (poly_dr_p, PBB_DRS (pbb), i, pdr); i++) FOR_EACH_VEC_ELT (poly_dr_p, PBB_DRS (pbb), i, pdr)
if (PDR_TYPE (pdr) == PDR_READ) if (PDR_TYPE (pdr) == PDR_READ)
print_pdr (file, pdr, verbosity); print_pdr (file, pdr, verbosity);
@ -689,7 +689,7 @@ print_pdrs (FILE *file, poly_bb_p pbb, int verbosity)
fprintf (file, "# Write access informations\n"); fprintf (file, "# Write access informations\n");
fprintf (file, "%d\n", nb_writes); fprintf (file, "%d\n", nb_writes);
for (i = 0; VEC_iterate (poly_dr_p, PBB_DRS (pbb), i, pdr); i++) FOR_EACH_VEC_ELT (poly_dr_p, PBB_DRS (pbb), i, pdr)
if (PDR_TYPE (pdr) != PDR_READ) if (PDR_TYPE (pdr) != PDR_READ)
print_pdr (file, pdr, verbosity); print_pdr (file, pdr, verbosity);
@ -784,7 +784,7 @@ print_scop_params (FILE *file, scop_p scop, int verbosity)
fprintf (file, "0\n"); fprintf (file, "0\n");
} }
for (i = 0; VEC_iterate (tree, SESE_PARAMS (SCOP_REGION (scop)), i, t); i++) FOR_EACH_VEC_ELT (tree, SESE_PARAMS (SCOP_REGION (scop)), i, t)
{ {
print_generic_expr (file, t, 0); print_generic_expr (file, t, 0);
fprintf (file, " "); fprintf (file, " ");
@ -841,7 +841,7 @@ print_scop (FILE *file, scop_p scop, int verbosity)
fprintf (file, "%d\n",VEC_length (poly_bb_p, SCOP_BBS (scop))); fprintf (file, "%d\n",VEC_length (poly_bb_p, SCOP_BBS (scop)));
for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb); i++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), i, pbb)
print_pbb (file, pbb, verbosity); print_pbb (file, pbb, verbosity);
if (verbosity > 1) if (verbosity > 1)
@ -880,7 +880,7 @@ print_cloog (FILE *file, scop_p scop, int verbosity)
fprintf (file, "%d\n", VEC_length (poly_bb_p, SCOP_BBS (scop))); fprintf (file, "%d\n", VEC_length (poly_bb_p, SCOP_BBS (scop)));
for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb); i++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), i, pbb)
{ {
if (verbosity > 1) if (verbosity > 1)
fprintf (file, "# pbb_%d (\n", pbb_index (pbb)); fprintf (file, "# pbb_%d (\n", pbb_index (pbb));
@ -909,7 +909,7 @@ print_cloog (FILE *file, scop_p scop, int verbosity)
fprintf (file, "%d\n", VEC_length (poly_bb_p, SCOP_BBS (scop))); fprintf (file, "%d\n", VEC_length (poly_bb_p, SCOP_BBS (scop)));
unify_scattering_dimensions (scop); unify_scattering_dimensions (scop);
for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb); i++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), i, pbb)
{ {
if (!PBB_TRANSFORMED (pbb) if (!PBB_TRANSFORMED (pbb)
|| !(PBB_TRANSFORMED_SCATTERING (pbb) || !(PBB_TRANSFORMED_SCATTERING (pbb)
@ -1214,7 +1214,7 @@ print_lst (FILE *file, lst_p lst, int indent)
else else
fprintf (file, "#(root"); fprintf (file, "#(root");
for (i = 0; VEC_iterate (lst_p, LST_SEQ (lst), i, l); i++) FOR_EACH_VEC_ELT (lst_p, LST_SEQ (lst), i, l)
print_lst (file, l, indent + 2); print_lst (file, l, indent + 2);
fprintf (file, ")"); fprintf (file, ")");
@ -1255,7 +1255,7 @@ dot_lst_1 (FILE *file, lst_p lst)
lst_depth (lst), lst_depth (lst),
lst_dewey_number (lst)); lst_dewey_number (lst));
for (i = 0; VEC_iterate (lst_p, LST_SEQ (lst), i, l); i++) FOR_EACH_VEC_ELT (lst_p, LST_SEQ (lst), i, l)
dot_lst_1 (file, l); dot_lst_1 (file, l);
} }

View File

@ -148,7 +148,7 @@ move_sd_regions (VEC (sd_region, heap) **source,
sd_region *s; sd_region *s;
int i; int i;
for (i = 0; VEC_iterate (sd_region, *source, i, s); i++) FOR_EACH_VEC_ELT (sd_region, *source, i, s)
VEC_safe_push (sd_region, heap, *target, s); VEC_safe_push (sd_region, heap, *target, s);
VEC_free (sd_region, heap, *source); VEC_free (sd_region, heap, *source);
@ -284,7 +284,7 @@ stmt_has_simple_data_refs_p (loop_p outermost_loop, gimple stmt)
graphite_find_data_references_in_stmt (outermost_loop, stmt, &drs); graphite_find_data_references_in_stmt (outermost_loop, stmt, &drs);
for (j = 0; VEC_iterate (data_reference_p, drs, j, dr); j++) FOR_EACH_VEC_ELT (data_reference_p, drs, j, dr)
for (i = 0; i < DR_NUM_DIMENSIONS (dr); i++) for (i = 0; i < DR_NUM_DIMENSIONS (dr); i++)
if (!graphite_can_represent_scev (DR_ACCESS_FN (dr, i), loop)) if (!graphite_can_represent_scev (DR_ACCESS_FN (dr, i), loop))
{ {
@ -552,7 +552,7 @@ scopdet_basic_block_info (basic_block bb, loop_p outermost_loop,
- The exit destinations are dominated by another bb inside - The exit destinations are dominated by another bb inside
the loop. the loop.
- The loop dominates bbs, that are not exit destinations. */ - The loop dominates bbs, that are not exit destinations. */
for (i = 0; VEC_iterate (edge, exits, i, e); i++) FOR_EACH_VEC_ELT (edge, exits, i, e)
if (e->src->loop_father == loop if (e->src->loop_father == loop
&& dominated_by_p (CDI_DOMINATORS, e->dest, e->src)) && dominated_by_p (CDI_DOMINATORS, e->dest, e->src))
{ {
@ -590,7 +590,7 @@ scopdet_basic_block_info (basic_block bb, loop_p outermost_loop,
/* First check the successors of BB, and check if it is /* First check the successors of BB, and check if it is
possible to join the different branches. */ possible to join the different branches. */
for (i = 0; VEC_iterate (edge, bb->succs, i, e); i++) FOR_EACH_VEC_ELT (edge, bb->succs, i, e)
{ {
/* Ignore loop exits. They will be handled after the loop /* Ignore loop exits. They will be handled after the loop
body. */ body. */
@ -676,7 +676,7 @@ scopdet_basic_block_info (basic_block bb, loop_p outermost_loop,
/* Scan remaining bbs dominated by BB. */ /* Scan remaining bbs dominated by BB. */
dominated = get_dominated_by (CDI_DOMINATORS, bb); dominated = get_dominated_by (CDI_DOMINATORS, bb);
for (i = 0; VEC_iterate (basic_block, dominated, i, dom_bb); i++) FOR_EACH_VEC_ELT (basic_block, dominated, i, dom_bb)
{ {
/* Ignore loop exits: they will be handled after the loop body. */ /* Ignore loop exits: they will be handled after the loop body. */
if (loop_depth (find_common_loop (loop, dom_bb->loop_father)) if (loop_depth (find_common_loop (loop, dom_bb->loop_father))
@ -990,7 +990,7 @@ unmark_exit_edges (VEC (sd_region, heap) *regions)
edge e; edge e;
edge_iterator ei; edge_iterator ei;
for (i = 0; VEC_iterate (sd_region, regions, i, s); i++) FOR_EACH_VEC_ELT (sd_region, regions, i, s)
FOR_EACH_EDGE (e, ei, s->exit->preds) FOR_EACH_EDGE (e, ei, s->exit->preds)
e->aux = NULL; e->aux = NULL;
} }
@ -1007,7 +1007,7 @@ mark_exit_edges (VEC (sd_region, heap) *regions)
edge e; edge e;
edge_iterator ei; edge_iterator ei;
for (i = 0; VEC_iterate (sd_region, regions, i, s); i++) FOR_EACH_VEC_ELT (sd_region, regions, i, s)
FOR_EACH_EDGE (e, ei, s->exit->preds) FOR_EACH_EDGE (e, ei, s->exit->preds)
if (bb_in_sd_region (e->src, s)) if (bb_in_sd_region (e->src, s))
e->aux = s; e->aux = s;
@ -1021,12 +1021,12 @@ create_sese_edges (VEC (sd_region, heap) *regions)
int i; int i;
sd_region *s; sd_region *s;
for (i = 0; VEC_iterate (sd_region, regions, i, s); i++) FOR_EACH_VEC_ELT (sd_region, regions, i, s)
create_single_entry_edge (s); create_single_entry_edge (s);
mark_exit_edges (regions); mark_exit_edges (regions);
for (i = 0; VEC_iterate (sd_region, regions, i, s); i++) FOR_EACH_VEC_ELT (sd_region, regions, i, s)
/* Don't handle multiple edges exiting the function. */ /* Don't handle multiple edges exiting the function. */
if (!find_single_exit_edge (s) if (!find_single_exit_edge (s)
&& s->exit != EXIT_BLOCK_PTR) && s->exit != EXIT_BLOCK_PTR)
@ -1052,7 +1052,7 @@ build_graphite_scops (VEC (sd_region, heap) *regions,
int i; int i;
sd_region *s; sd_region *s;
for (i = 0; VEC_iterate (sd_region, regions, i, s); i++) FOR_EACH_VEC_ELT (sd_region, regions, i, s)
{ {
edge entry = find_single_entry_edge (s); edge entry = find_single_entry_edge (s);
edge exit = find_single_exit_edge (s); edge exit = find_single_exit_edge (s);
@ -1070,7 +1070,7 @@ build_graphite_scops (VEC (sd_region, heap) *regions,
int j; int j;
sd_region *s2; sd_region *s2;
for (j = 0; VEC_iterate (sd_region, regions, j, s2); j++) FOR_EACH_VEC_ELT (sd_region, regions, j, s2)
if (s != s2) if (s != s2)
gcc_assert (!bb_in_sd_region (s->entry, s2)); gcc_assert (!bb_in_sd_region (s->entry, s2));
} }
@ -1159,7 +1159,7 @@ print_graphite_statistics (FILE* file, VEC (scop_p, heap) *scops)
int i; int i;
scop_p scop; scop_p scop;
for (i = 0; VEC_iterate (scop_p, scops, i, scop); i++) FOR_EACH_VEC_ELT (scop_p, scops, i, scop)
print_graphite_scop_statistics (file, scop); print_graphite_scop_statistics (file, scop);
} }
@ -1191,14 +1191,14 @@ limit_scops (VEC (scop_p, heap) **scops)
int i; int i;
scop_p scop; scop_p scop;
for (i = 0; VEC_iterate (scop_p, *scops, i, scop); i++) FOR_EACH_VEC_ELT (scop_p, *scops, i, scop)
{ {
int j; int j;
loop_p loop; loop_p loop;
sese region = SCOP_REGION (scop); sese region = SCOP_REGION (scop);
build_sese_loop_nests (region); build_sese_loop_nests (region);
for (j = 0; VEC_iterate (loop_p, SESE_LOOP_NEST (region), j, loop); j++) FOR_EACH_VEC_ELT (loop_p, SESE_LOOP_NEST (region), j, loop)
if (!loop_in_sese_p (loop_outer (loop), region) if (!loop_in_sese_p (loop_outer (loop), region)
&& single_exit (loop)) && single_exit (loop))
{ {
@ -1380,7 +1380,7 @@ dot_all_scops_1 (FILE *file, VEC (scop_p, heap) *scops)
fprintf (file, "CELLSPACING=\"0\">\n"); fprintf (file, "CELLSPACING=\"0\">\n");
/* Select color for SCoP. */ /* Select color for SCoP. */
for (i = 0; VEC_iterate (scop_p, scops, i, scop); i++) FOR_EACH_VEC_ELT (scop_p, scops, i, scop)
{ {
sese region = SCOP_REGION (scop); sese region = SCOP_REGION (scop);
if (bb_in_sese_p (bb, region) if (bb_in_sese_p (bb, region)

View File

@ -278,7 +278,7 @@ free_data_refs_aux (VEC (data_reference_p, heap) *datarefs)
unsigned int i; unsigned int i;
struct data_reference *dr; struct data_reference *dr;
for (i = 0; VEC_iterate (data_reference_p, datarefs, i, dr); i++) FOR_EACH_VEC_ELT (data_reference_p, datarefs, i, dr)
if (dr->aux) if (dr->aux)
{ {
base_alias_pair *bap = (base_alias_pair *)(dr->aux); base_alias_pair *bap = (base_alias_pair *)(dr->aux);
@ -312,7 +312,7 @@ remove_gbbs_in_scop (scop_p scop)
int i; int i;
poly_bb_p pbb; poly_bb_p pbb;
for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb); i++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), i, pbb)
free_gimple_bb (PBB_BLACK_BOX (pbb)); free_gimple_bb (PBB_BLACK_BOX (pbb));
} }
@ -324,7 +324,7 @@ free_scops (VEC (scop_p, heap) *scops)
int i; int i;
scop_p scop; scop_p scop;
for (i = 0; VEC_iterate (scop_p, scops, i, scop); i++) FOR_EACH_VEC_ELT (scop_p, scops, i, scop)
{ {
remove_gbbs_in_scop (scop); remove_gbbs_in_scop (scop);
free_sese (SCOP_REGION (scop)); free_sese (SCOP_REGION (scop));
@ -434,7 +434,7 @@ build_scop_bbs_1 (scop_p scop, sbitmap visited, basic_block bb, sbitmap reductio
int i; int i;
basic_block dom_bb; basic_block dom_bb;
for (i = 0; VEC_iterate (basic_block, dom, i, dom_bb); i++) FOR_EACH_VEC_ELT (basic_block, dom, i, dom_bb)
if (all_non_dominated_preds_marked_p (dom_bb, visited)) if (all_non_dominated_preds_marked_p (dom_bb, visited))
{ {
build_scop_bbs_1 (scop, visited, dom_bb, reductions); build_scop_bbs_1 (scop, visited, dom_bb, reductions);
@ -616,7 +616,7 @@ build_scop_scattering (scop_p scop)
ppl_assign_Coefficient_from_mpz_t (c, v); ppl_assign_Coefficient_from_mpz_t (c, v);
ppl_Linear_Expression_add_to_coefficient (static_schedule, 0, c); ppl_Linear_Expression_add_to_coefficient (static_schedule, 0, c);
for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb); i++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), i, pbb)
{ {
gimple_bb_p gbb = PBB_BLACK_BOX (pbb); gimple_bb_p gbb = PBB_BLACK_BOX (pbb);
ppl_Linear_Expression_t common; ppl_Linear_Expression_t common;
@ -741,7 +741,7 @@ parameter_index_in_region_1 (tree name, sese region)
gcc_assert (TREE_CODE (name) == SSA_NAME); gcc_assert (TREE_CODE (name) == SSA_NAME);
for (i = 0; VEC_iterate (tree, SESE_PARAMS (region), i, p); i++) FOR_EACH_VEC_ELT (tree, SESE_PARAMS (region), i, p)
if (p == name) if (p == name)
return i; return i;
@ -955,12 +955,12 @@ find_params_in_bb (sese region, gimple_bb_p gbb)
mpz_set_si (one, 1); mpz_set_si (one, 1);
/* Find parameters in the access functions of data references. */ /* Find parameters in the access functions of data references. */
for (i = 0; VEC_iterate (data_reference_p, GBB_DATA_REFS (gbb), i, dr); i++) FOR_EACH_VEC_ELT (data_reference_p, GBB_DATA_REFS (gbb), i, dr)
for (j = 0; j < DR_NUM_DIMENSIONS (dr); j++) for (j = 0; j < DR_NUM_DIMENSIONS (dr); j++)
scan_tree_for_params (region, DR_ACCESS_FN (dr, j), NULL, one); scan_tree_for_params (region, DR_ACCESS_FN (dr, j), NULL, one);
/* Find parameters in conditional statements. */ /* Find parameters in conditional statements. */
for (i = 0; VEC_iterate (gimple, GBB_CONDITIONS (gbb), i, stmt); i++) FOR_EACH_VEC_ELT (gimple, GBB_CONDITIONS (gbb), i, stmt)
{ {
tree lhs = scalar_evolution_in_region (region, loop, tree lhs = scalar_evolution_in_region (region, loop,
gimple_cond_lhs (stmt)); gimple_cond_lhs (stmt));
@ -990,7 +990,7 @@ find_scop_parameters (scop_p scop)
mpz_set_si (one, 1); mpz_set_si (one, 1);
/* Find the parameters used in the loop bounds. */ /* Find the parameters used in the loop bounds. */
for (i = 0; VEC_iterate (loop_p, SESE_LOOP_NEST (region), i, loop); i++) FOR_EACH_VEC_ELT (loop_p, SESE_LOOP_NEST (region), i, loop)
{ {
tree nb_iters = number_of_latch_executions (loop); tree nb_iters = number_of_latch_executions (loop);
@ -1004,7 +1004,7 @@ find_scop_parameters (scop_p scop)
mpz_clear (one); mpz_clear (one);
/* Find the parameters used in data accesses. */ /* Find the parameters used in data accesses. */
for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb); i++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), i, pbb)
find_params_in_bb (region, PBB_BLACK_BOX (pbb)); find_params_in_bb (region, PBB_BLACK_BOX (pbb));
scop_set_nb_params (scop, sese_nb_params (region)); scop_set_nb_params (scop, sese_nb_params (region));
@ -1335,7 +1335,7 @@ add_conditions_to_domain (poly_bb_p pbb)
if (VEC_empty (gimple, GBB_CONDITIONS (gbb))) if (VEC_empty (gimple, GBB_CONDITIONS (gbb)))
return; return;
for (i = 0; VEC_iterate (gimple, GBB_CONDITIONS (gbb), i, stmt); i++) FOR_EACH_VEC_ELT (gimple, GBB_CONDITIONS (gbb), i, stmt)
switch (gimple_code (stmt)) switch (gimple_code (stmt))
{ {
case GIMPLE_COND: case GIMPLE_COND:
@ -1490,7 +1490,7 @@ add_conditions_to_constraints (scop_p scop)
int i; int i;
poly_bb_p pbb; poly_bb_p pbb;
for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb); i++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), i, pbb)
add_conditions_to_domain (pbb); add_conditions_to_domain (pbb);
} }
@ -1586,11 +1586,11 @@ build_scop_iteration_domain (scop_p scop)
ppl_new_C_Polyhedron_from_space_dimension (&ph, scop_nb_params (scop), 0); ppl_new_C_Polyhedron_from_space_dimension (&ph, scop_nb_params (scop), 0);
for (i = 0; VEC_iterate (loop_p, SESE_LOOP_NEST (region), i, loop); i++) FOR_EACH_VEC_ELT (loop_p, SESE_LOOP_NEST (region), i, loop)
if (!loop_in_sese_p (loop_outer (loop), region)) if (!loop_in_sese_p (loop_outer (loop), region))
build_loop_iteration_domains (scop, loop, ph, 0, domains); build_loop_iteration_domains (scop, loop, ph, 0, domains);
for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb); i++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), i, pbb)
if (domains[gbb_loop (PBB_BLACK_BOX (pbb))->num]) if (domains[gbb_loop (PBB_BLACK_BOX (pbb))->num])
ppl_new_Pointset_Powerset_C_Polyhedron_from_Pointset_Powerset_C_Polyhedron ppl_new_Pointset_Powerset_C_Polyhedron_from_Pointset_Powerset_C_Polyhedron
(&PBB_DOMAIN (pbb), (ppl_const_Pointset_Powerset_C_Polyhedron_t) (&PBB_DOMAIN (pbb), (ppl_const_Pointset_Powerset_C_Polyhedron_t)
@ -1788,7 +1788,7 @@ write_alias_graph_to_ascii_dimacs (FILE *file, char *comment,
if (num_vertex == 0) if (num_vertex == 0)
return true; return true;
for (i = 0; VEC_iterate (data_reference_p, drs, i, dr1); i++) FOR_EACH_VEC_ELT (data_reference_p, drs, i, dr1)
for (j = i + 1; VEC_iterate (data_reference_p, drs, j, dr2); j++) for (j = i + 1; VEC_iterate (data_reference_p, drs, j, dr2); j++)
if (dr_may_alias_p (dr1, dr2)) if (dr_may_alias_p (dr1, dr2))
edge_num++; edge_num++;
@ -1800,7 +1800,7 @@ write_alias_graph_to_ascii_dimacs (FILE *file, char *comment,
fprintf (file, "p edge %d %d\n", num_vertex, edge_num); fprintf (file, "p edge %d %d\n", num_vertex, edge_num);
for (i = 0; VEC_iterate (data_reference_p, drs, i, dr1); i++) FOR_EACH_VEC_ELT (data_reference_p, drs, i, dr1)
for (j = i + 1; VEC_iterate (data_reference_p, drs, j, dr2); j++) for (j = i + 1; VEC_iterate (data_reference_p, drs, j, dr2); j++)
if (dr_may_alias_p (dr1, dr2)) if (dr_may_alias_p (dr1, dr2))
fprintf (file, "e %d %d\n", i + 1, j + 1); fprintf (file, "e %d %d\n", i + 1, j + 1);
@ -1827,10 +1827,10 @@ write_alias_graph_to_ascii_dot (FILE *file, char *comment,
fprintf (file, "c %s\n", comment); fprintf (file, "c %s\n", comment);
/* First print all the vertices. */ /* First print all the vertices. */
for (i = 0; VEC_iterate (data_reference_p, drs, i, dr1); i++) FOR_EACH_VEC_ELT (data_reference_p, drs, i, dr1)
fprintf (file, "n%d;\n", i); fprintf (file, "n%d;\n", i);
for (i = 0; VEC_iterate (data_reference_p, drs, i, dr1); i++) FOR_EACH_VEC_ELT (data_reference_p, drs, i, dr1)
for (j = i + 1; VEC_iterate (data_reference_p, drs, j, dr2); j++) for (j = i + 1; VEC_iterate (data_reference_p, drs, j, dr2); j++)
if (dr_may_alias_p (dr1, dr2)) if (dr_may_alias_p (dr1, dr2))
fprintf (file, "n%d n%d\n", i, j); fprintf (file, "n%d n%d\n", i, j);
@ -1856,7 +1856,7 @@ write_alias_graph_to_ascii_ecc (FILE *file, char *comment,
if (comment) if (comment)
fprintf (file, "c %s\n", comment); fprintf (file, "c %s\n", comment);
for (i = 0; VEC_iterate (data_reference_p, drs, i, dr1); i++) FOR_EACH_VEC_ELT (data_reference_p, drs, i, dr1)
for (j = i + 1; VEC_iterate (data_reference_p, drs, j, dr2); j++) for (j = i + 1; VEC_iterate (data_reference_p, drs, j, dr2); j++)
if (dr_may_alias_p (dr1, dr2)) if (dr_may_alias_p (dr1, dr2))
fprintf (file, "%d %d\n", i, j); fprintf (file, "%d %d\n", i, j);
@ -1892,7 +1892,7 @@ build_alias_set_optimal_p (VEC (data_reference_p, heap) *drs)
int this_component_is_clique; int this_component_is_clique;
int all_components_are_cliques = 1; int all_components_are_cliques = 1;
for (i = 0; VEC_iterate (data_reference_p, drs, i, dr1); i++) FOR_EACH_VEC_ELT (data_reference_p, drs, i, dr1)
for (j = i+1; VEC_iterate (data_reference_p, drs, j, dr2); j++) for (j = i+1; VEC_iterate (data_reference_p, drs, j, dr2); j++)
if (dr_may_alias_p (dr1, dr2)) if (dr_may_alias_p (dr1, dr2))
{ {
@ -1972,7 +1972,7 @@ build_base_obj_set_for_drs (VEC (data_reference_p, heap) *drs)
int i, j; int i, j;
int *queue; int *queue;
for (i = 0; VEC_iterate (data_reference_p, drs, i, dr1); i++) FOR_EACH_VEC_ELT (data_reference_p, drs, i, dr1)
for (j = i + 1; VEC_iterate (data_reference_p, drs, j, dr2); j++) for (j = i + 1; VEC_iterate (data_reference_p, drs, j, dr2); j++)
if (dr_same_base_object_p (dr1, dr2)) if (dr_same_base_object_p (dr1, dr2))
{ {
@ -2010,7 +2010,7 @@ build_pbb_drs (poly_bb_p pbb)
data_reference_p dr; data_reference_p dr;
VEC (data_reference_p, heap) *gbb_drs = GBB_DATA_REFS (PBB_BLACK_BOX (pbb)); VEC (data_reference_p, heap) *gbb_drs = GBB_DATA_REFS (PBB_BLACK_BOX (pbb));
for (j = 0; VEC_iterate (data_reference_p, gbb_drs, j, dr); j++) FOR_EACH_VEC_ELT (data_reference_p, gbb_drs, j, dr)
build_poly_dr (dr, pbb); build_poly_dr (dr, pbb);
} }
@ -2060,12 +2060,12 @@ build_scop_drs (scop_p scop)
data_reference_p dr; data_reference_p dr;
VEC (data_reference_p, heap) *drs = VEC_alloc (data_reference_p, heap, 3); VEC (data_reference_p, heap) *drs = VEC_alloc (data_reference_p, heap, 3);
for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb); i++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), i, pbb)
for (j = 0; VEC_iterate (data_reference_p, for (j = 0; VEC_iterate (data_reference_p,
GBB_DATA_REFS (PBB_BLACK_BOX (pbb)), j, dr); j++) GBB_DATA_REFS (PBB_BLACK_BOX (pbb)), j, dr); j++)
VEC_safe_push (data_reference_p, heap, drs, dr); VEC_safe_push (data_reference_p, heap, drs, dr);
for (i = 0; VEC_iterate (data_reference_p, drs, i, dr); i++) FOR_EACH_VEC_ELT (data_reference_p, drs, i, dr)
dr->aux = XNEW (base_alias_pair); dr->aux = XNEW (base_alias_pair);
if (!build_alias_set_optimal_p (drs)) if (!build_alias_set_optimal_p (drs))
@ -2083,7 +2083,7 @@ build_scop_drs (scop_p scop)
VEC_free (data_reference_p, heap, drs); VEC_free (data_reference_p, heap, drs);
for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb); i++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), i, pbb)
build_pbb_drs (pbb); build_pbb_drs (pbb);
} }
@ -2549,7 +2549,7 @@ nb_pbbs_in_loops (scop_p scop)
poly_bb_p pbb; poly_bb_p pbb;
int res = 0; int res = 0;
for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb); i++) FOR_EACH_VEC_ELT (poly_bb_p, SCOP_BBS (scop), i, pbb)
if (loop_in_sese_p (gbb_loop (PBB_BLACK_BOX (pbb)), SCOP_REGION (scop))) if (loop_in_sese_p (gbb_loop (PBB_BLACK_BOX (pbb)), SCOP_REGION (scop)))
res++; res++;
@ -2862,7 +2862,7 @@ remove_phi (gimple phi)
} }
} }
for (i = 0; VEC_iterate (gimple, update, i, stmt); i++) FOR_EACH_VEC_ELT (gimple, update, i, stmt)
update_stmt (stmt); update_stmt (stmt);
VEC_free (gimple, heap, update); VEC_free (gimple, heap, update);
@ -2890,7 +2890,7 @@ translate_scalar_reduction_to_array (VEC (gimple, heap) *in,
gimple loop_phi; gimple loop_phi;
tree red = NULL_TREE; tree red = NULL_TREE;
for (i = 0; VEC_iterate (gimple, in, i, loop_phi); i++) FOR_EACH_VEC_ELT (gimple, in, i, loop_phi)
{ {
gimple close_phi = VEC_index (gimple, out, i); gimple close_phi = VEC_index (gimple, out, i);

View File

@ -192,7 +192,7 @@ print_graphite_statistics (FILE* file, VEC (scop_p, heap) *scops)
scop_p scop; scop_p scop;
for (i = 0; VEC_iterate (scop_p, scops, i, scop); i++) FOR_EACH_VEC_ELT (scop_p, scops, i, scop)
print_graphite_scop_statistics (file, scop); print_graphite_scop_statistics (file, scop);
} }
@ -279,12 +279,12 @@ graphite_transform_loops (void)
reductions = sbitmap_alloc (last_basic_block * 2); reductions = sbitmap_alloc (last_basic_block * 2);
sbitmap_zero (reductions); sbitmap_zero (reductions);
for (i = 0; VEC_iterate (scop_p, scops, i, scop); i++) FOR_EACH_VEC_ELT (scop_p, scops, i, scop)
if (dbg_cnt (graphite_scop)) if (dbg_cnt (graphite_scop))
rewrite_commutative_reductions_out_of_ssa (SCOP_REGION (scop), rewrite_commutative_reductions_out_of_ssa (SCOP_REGION (scop),
reductions); reductions);
for (i = 0; VEC_iterate (scop_p, scops, i, scop); i++) FOR_EACH_VEC_ELT (scop_p, scops, i, scop)
if (dbg_cnt (graphite_scop)) if (dbg_cnt (graphite_scop))
{ {
rewrite_reductions_out_of_ssa (scop); rewrite_reductions_out_of_ssa (scop);
@ -294,11 +294,11 @@ graphite_transform_loops (void)
sbitmap_free (reductions); sbitmap_free (reductions);
for (i = 0; VEC_iterate (scop_p, scops, i, scop); i++) FOR_EACH_VEC_ELT (scop_p, scops, i, scop)
if (dbg_cnt (graphite_scop)) if (dbg_cnt (graphite_scop))
build_poly_scop (scop); build_poly_scop (scop);
for (i = 0; VEC_iterate (scop_p, scops, i, scop); i++) FOR_EACH_VEC_ELT (scop_p, scops, i, scop)
if (POLY_SCOP_P (scop) if (POLY_SCOP_P (scop)
&& apply_poly_transforms (scop) && apply_poly_transforms (scop)
&& gloog (scop, bb_pbb_mapping)) && gloog (scop, bb_pbb_mapping))

View File

@ -5093,7 +5093,7 @@ calc_priorities (rtx_vec_t roots)
int i; int i;
rtx insn; rtx insn;
for (i = 0; VEC_iterate (rtx, roots, i, insn); i++) FOR_EACH_VEC_ELT (rtx, roots, i, insn)
priority (insn); priority (insn);
} }
@ -5321,7 +5321,7 @@ sched_scan (const struct sched_scan_info_def *ssi,
unsigned i; unsigned i;
basic_block x; basic_block x;
for (i = 0; VEC_iterate (basic_block, bbs, i, x); i++) FOR_EACH_VEC_ELT (basic_block, bbs, i, x)
init_bb (x); init_bb (x);
} }
@ -5336,7 +5336,7 @@ sched_scan (const struct sched_scan_info_def *ssi,
unsigned i; unsigned i;
basic_block x; basic_block x;
for (i = 0; VEC_iterate (basic_block, bbs, i, x); i++) FOR_EACH_VEC_ELT (basic_block, bbs, i, x)
init_insns_in_bb (x); init_insns_in_bb (x);
} }
@ -5348,7 +5348,7 @@ sched_scan (const struct sched_scan_info_def *ssi,
unsigned i; unsigned i;
rtx x; rtx x;
for (i = 0; VEC_iterate (rtx, insns, i, x); i++) FOR_EACH_VEC_ELT (rtx, insns, i, x)
init_insn (x); init_insn (x);
} }
@ -5478,7 +5478,7 @@ haifa_finish_h_i_d (void)
haifa_insn_data_t data; haifa_insn_data_t data;
struct reg_use_data *use, *next; struct reg_use_data *use, *next;
for (i = 0; VEC_iterate (haifa_insn_data_def, h_i_d, i, data); i++) FOR_EACH_VEC_ELT (haifa_insn_data_def, h_i_d, i, data)
{ {
if (data->reg_pressure != NULL) if (data->reg_pressure != NULL)
free (data->reg_pressure); free (data->reg_pressure);

View File

@ -2760,7 +2760,7 @@ cond_move_process_if_block (struct noce_if_info *if_info)
source register does not change after the assignment. Also count source register does not change after the assignment. Also count
the number of registers set in only one of the blocks. */ the number of registers set in only one of the blocks. */
c = 0; c = 0;
for (i = 0; VEC_iterate (int, then_regs, i, reg); i++) FOR_EACH_VEC_ELT (int, then_regs, i, reg)
{ {
if (!then_vals[reg] && !else_vals[reg]) if (!then_vals[reg] && !else_vals[reg])
continue; continue;
@ -2781,7 +2781,7 @@ cond_move_process_if_block (struct noce_if_info *if_info)
} }
/* Finish off c for MAX_CONDITIONAL_EXECUTE. */ /* Finish off c for MAX_CONDITIONAL_EXECUTE. */
for (i = 0; VEC_iterate (int, else_regs, i, reg); ++i) FOR_EACH_VEC_ELT (int, else_regs, i, reg)
if (!then_vals[reg]) if (!then_vals[reg])
++c; ++c;

View File

@ -727,7 +727,7 @@ combine_reaching_defs (rtx zero_extend_insn, rtx set_pat)
in this vector. */ in this vector. */
vec = VEC_alloc (rtx, heap, 8); vec = VEC_alloc (rtx, heap, 8);
for (defs_ix = 0; VEC_iterate (rtx, defs_list, defs_ix, def_insn); defs_ix++) FOR_EACH_VEC_ELT (rtx, defs_list, defs_ix, def_insn)
{ {
merge_code = get_insn_status (def_insn); merge_code = get_insn_status (def_insn);
gcc_assert (merge_code == MERGE_NOT_ATTEMPTED); gcc_assert (merge_code == MERGE_NOT_ATTEMPTED);
@ -746,7 +746,7 @@ combine_reaching_defs (rtx zero_extend_insn, rtx set_pat)
if (merge_successful) if (merge_successful)
{ {
for (i = 0; VEC_iterate (rtx, copies_list, i, def_insn); i++) FOR_EACH_VEC_ELT (rtx, copies_list, i, def_insn)
{ {
if (transform_ifelse (def_insn)) if (transform_ifelse (def_insn))
{ {
@ -773,7 +773,7 @@ combine_reaching_defs (rtx zero_extend_insn, rtx set_pat)
if (dump_file) if (dump_file)
fprintf (dump_file, "All merges were successful ....\n"); fprintf (dump_file, "All merges were successful ....\n");
for (i = 0; VEC_iterate (rtx, vec, i, def_insn); i++) FOR_EACH_VEC_ELT (rtx, vec, i, def_insn)
{ {
set_insn_status (def_insn, MERGE_SUCCESS); set_insn_status (def_insn, MERGE_SUCCESS);
} }
@ -791,7 +791,7 @@ combine_reaching_defs (rtx zero_extend_insn, rtx set_pat)
if (dump_file) if (dump_file)
{ {
for (i = 0; VEC_iterate (rtx, vec, i, def_insn); i++) FOR_EACH_VEC_ELT (rtx, vec, i, def_insn)
{ {
fprintf (dump_file, " Ummergable definitions : \n"); fprintf (dump_file, " Ummergable definitions : \n");
print_rtl_single (dump_file, def_insn); print_rtl_single (dump_file, def_insn);
@ -916,7 +916,7 @@ find_and_remove_ze (void)
zeinsn_list = find_removable_zero_extends (); zeinsn_list = find_removable_zero_extends ();
for (ix = 0; VEC_iterate (rtx, zeinsn_list, ix, curr_insn); ix++) FOR_EACH_VEC_ELT (rtx, zeinsn_list, ix, curr_insn)
{ {
num_ze_opportunities++; num_ze_opportunities++;
/* Try to combine the zero-extends with the definition here. */ /* Try to combine the zero-extends with the definition here. */
@ -937,7 +937,7 @@ find_and_remove_ze (void)
} }
/* Delete all useless zero extensions here in one sweep. */ /* Delete all useless zero extensions here in one sweep. */
for (ix = 0; VEC_iterate (rtx, zeinsn_del_list, ix, curr_insn); ix++) FOR_EACH_VEC_ELT (rtx, zeinsn_del_list, ix, curr_insn)
delete_insn (curr_insn); delete_insn (curr_insn);
free (is_insn_merge_attempted); free (is_insn_merge_attempted);

View File

@ -1672,9 +1672,7 @@ ipa_free_all_edge_args (void)
int i; int i;
struct ipa_edge_args *args; struct ipa_edge_args *args;
for (i = 0; FOR_EACH_VEC_ELT (ipa_edge_args_t, ipa_edge_args_vector, i, args)
VEC_iterate (ipa_edge_args_t, ipa_edge_args_vector, i, args);
i++)
ipa_free_edge_args_substructures (args); ipa_free_edge_args_substructures (args);
VEC_free (ipa_edge_args_t, gc, ipa_edge_args_vector); VEC_free (ipa_edge_args_t, gc, ipa_edge_args_vector);
@ -1701,9 +1699,7 @@ ipa_free_all_node_params (void)
int i; int i;
struct ipa_node_params *info; struct ipa_node_params *info;
for (i = 0; FOR_EACH_VEC_ELT (ipa_node_params_t, ipa_node_params_vector, i, info)
VEC_iterate (ipa_node_params_t, ipa_node_params_vector, i, info);
i++)
ipa_free_node_params_substructures (info); ipa_free_node_params_substructures (info);
VEC_free (ipa_node_params_t, heap, ipa_node_params_vector); VEC_free (ipa_node_params_t, heap, ipa_node_params_vector);

View File

@ -556,7 +556,7 @@ finalize_new_vars_creation (void **slot, void *data ATTRIBUTE_UNUSED)
unsigned i; unsigned i;
tree var; tree var;
for (i = 0; VEC_iterate (tree, n_var->new_vars, i, var); i++) FOR_EACH_VEC_ELT (tree, n_var->new_vars, i, var)
finalize_var_creation (var); finalize_var_creation (var);
return 1; return 1;
} }
@ -570,7 +570,7 @@ find_var_in_new_vars_vec (new_var var, tree new_type)
tree n_var; tree n_var;
unsigned i; unsigned i;
for (i = 0; VEC_iterate (tree, var->new_vars, i, n_var); i++) FOR_EACH_VEC_ELT (tree, var->new_vars, i, n_var)
{ {
tree type = strip_type(get_type_of_var (n_var)); tree type = strip_type(get_type_of_var (n_var));
gcc_assert (type); gcc_assert (type);
@ -786,7 +786,7 @@ is_part_of_malloc (gimple stmt, tree fn_decl)
alloc_site_t *call; alloc_site_t *call;
unsigned i; unsigned i;
for (i = 0; VEC_iterate (alloc_site_t, fallocs->allocs, i, call); i++) FOR_EACH_VEC_ELT (alloc_site_t, fallocs->allocs, i, call)
if (call->stmt == stmt if (call->stmt == stmt
|| get_final_alloc_stmt (call->stmt) == stmt) || get_final_alloc_stmt (call->stmt) == stmt)
return true; return true;
@ -1065,7 +1065,7 @@ find_structure (tree type)
type = TYPE_MAIN_VARIANT (type); type = TYPE_MAIN_VARIANT (type);
for (i = 0; VEC_iterate (structure, structures, i, str); i++) FOR_EACH_VEC_ELT (structure, structures, i, str)
if (is_equal_types (str->decl, type)) if (is_equal_types (str->decl, type))
return i; return i;
@ -1259,7 +1259,7 @@ create_new_stmts_for_cond_expr (gimple stmt)
arg = integer_zerop (arg0) ? arg1 : arg0; arg = integer_zerop (arg0) ? arg1 : arg0;
pos = integer_zerop (arg0) ? 1 : 0; pos = integer_zerop (arg0) ? 1 : 0;
for (i = 0; VEC_iterate (tree, str->new_types, i, type); i++) FOR_EACH_VEC_ELT (tree, str->new_types, i, type)
{ {
tree new_arg; tree new_arg;
@ -1313,7 +1313,7 @@ create_general_new_stmt (struct access_site *acc, tree new_type)
gimple_set_vdef (new_stmt, NULL_TREE); gimple_set_vdef (new_stmt, NULL_TREE);
} }
for (i = 0; VEC_iterate (tree, acc->vars, i, var); i++) FOR_EACH_VEC_ELT (tree, acc->vars, i, var)
{ {
tree new_var = find_new_var_of_type (var, new_type); tree new_var = find_new_var_of_type (var, new_type);
tree lhs, rhs = NULL_TREE; tree lhs, rhs = NULL_TREE;
@ -1366,7 +1366,7 @@ create_new_stmts_for_general_acc (struct access_site *acc, d_str str)
gimple stmt = acc->stmt; gimple stmt = acc->stmt;
unsigned i; unsigned i;
for (i = 0; VEC_iterate (tree, str->new_types, i, type); i++) FOR_EACH_VEC_ELT (tree, str->new_types, i, type)
{ {
gimple new_stmt; gimple new_stmt;
@ -1475,7 +1475,7 @@ update_varpool_with_new_var (void **slot, void *data ATTRIBUTE_UNUSED)
tree var; tree var;
unsigned i; unsigned i;
for (i = 0; VEC_iterate (tree, n_var->new_vars, i, var); i++) FOR_EACH_VEC_ELT (tree, n_var->new_vars, i, var)
insert_global_to_varpool (var); insert_global_to_varpool (var);
return 1; return 1;
} }
@ -1566,7 +1566,7 @@ add_unsuitable_type (VEC (tree, heap) **unsuitable_types, tree type)
type = TYPE_MAIN_VARIANT (type); type = TYPE_MAIN_VARIANT (type);
for (i = 0; VEC_iterate (tree, *unsuitable_types, i, t); i++) FOR_EACH_VEC_ELT (tree, *unsuitable_types, i, t)
if (is_equal_types (t, type)) if (is_equal_types (t, type))
break; break;
@ -2088,7 +2088,7 @@ dump_acc (void **slot, void *data ATTRIBUTE_UNUSED)
print_gimple_stmt (dump_file, acc->stmt, 0, 0); print_gimple_stmt (dump_file, acc->stmt, 0, 0);
fprintf(dump_file, " : "); fprintf(dump_file, " : ");
for (i = 0; VEC_iterate (tree, acc->vars, i, var); i++) FOR_EACH_VEC_ELT (tree, acc->vars, i, var)
{ {
print_generic_expr (dump_file, var, 0); print_generic_expr (dump_file, var, 0);
fprintf(dump_file, ", "); fprintf(dump_file, ", ");
@ -2155,7 +2155,7 @@ create_new_accesses_in_bb (basic_block bb)
d_str str; d_str str;
unsigned i; unsigned i;
for (i = 0; VEC_iterate (structure, structures, i, str); i++) FOR_EACH_VEC_ELT (structure, structures, i, str)
create_new_accs_for_struct (str, bb); create_new_accs_for_struct (str, bb);
} }
@ -2168,7 +2168,7 @@ create_new_alloc_sites (fallocs_t m_data, tree context)
alloc_site_t *call; alloc_site_t *call;
unsigned j; unsigned j;
for (j = 0; VEC_iterate (alloc_site_t, m_data->allocs, j, call); j++) FOR_EACH_VEC_ELT (alloc_site_t, m_data->allocs, j, call)
{ {
gimple stmt = call->stmt; gimple stmt = call->stmt;
d_str str = call->str; d_str str = call->str;
@ -2187,7 +2187,7 @@ create_new_alloc_sites (fallocs_t m_data, tree context)
} }
/* Generate an allocation sites for each new structure type. */ /* Generate an allocation sites for each new structure type. */
for (i = 0; VEC_iterate (tree, str->new_types, i, type); i++) FOR_EACH_VEC_ELT (tree, str->new_types, i, type)
{ {
gimple new_malloc_stmt = NULL; gimple new_malloc_stmt = NULL;
gimple last_stmt_tmp = NULL; gimple last_stmt_tmp = NULL;
@ -2646,7 +2646,7 @@ free_structures (void)
d_str str; d_str str;
unsigned i; unsigned i;
for (i = 0; VEC_iterate (structure, structures, i, str); i++) FOR_EACH_VEC_ELT (structure, structures, i, str)
free_data_struct (str); free_data_struct (str);
VEC_free (structure, heap, structures); VEC_free (structure, heap, structures);
@ -2874,7 +2874,7 @@ exclude_escaping_types_1 (VEC (tree, heap) **unsuitable_types)
d_str str; d_str str;
unsigned i; unsigned i;
for (i = 0; VEC_iterate (structure, structures, i, str); i++) FOR_EACH_VEC_ELT (structure, structures, i, str)
check_type_escape (str, unsuitable_types); check_type_escape (str, unsuitable_types);
} }
@ -3355,8 +3355,8 @@ remove_unsuitable_types (VEC (tree, heap) *unsuitable_types)
tree type; tree type;
unsigned i, j; unsigned i, j;
for (j = 0; VEC_iterate (tree, unsuitable_types, j, type); j++) FOR_EACH_VEC_ELT (tree, unsuitable_types, j, type)
for (i = 0; VEC_iterate (structure, structures, i, str); i++) FOR_EACH_VEC_ELT (structure, structures, i, str)
if (is_equal_types (str->decl, type)) if (is_equal_types (str->decl, type))
{ {
remove_structure (i); remove_structure (i);
@ -3375,7 +3375,7 @@ exclude_types_with_bit_fields (VEC (tree, heap) **unsuitable_types)
d_str str; d_str str;
unsigned i; unsigned i;
for (i = 0; VEC_iterate (structure, structures, i, str); i++) FOR_EACH_VEC_ELT (structure, structures, i, str)
check_bitfields (str, unsuitable_types); check_bitfields (str, unsuitable_types);
} }
@ -3406,7 +3406,7 @@ analyze_struct_form (VEC (tree, heap) **unsuitable_types)
d_str str; d_str str;
unsigned i; unsigned i;
for (i = 0; VEC_iterate (structure, structures, i, str); i++) FOR_EACH_VEC_ELT (structure, structures, i, str)
check_struct_form (str, unsuitable_types); check_struct_form (str, unsuitable_types);
} }
@ -3580,7 +3580,7 @@ dump_accesses (void)
if (!dump_file) if (!dump_file)
return; return;
for (i = 0; VEC_iterate (structure, structures, i, str); i++) FOR_EACH_VEC_ELT (structure, structures, i, str)
dump_accs (str); dump_accs (str);
} }
@ -3618,7 +3618,7 @@ exclude_alloc_and_field_accs (struct cgraph_node *node)
d_str str; d_str str;
unsigned i; unsigned i;
for (i = 0; VEC_iterate (structure, structures, i, str); i++) FOR_EACH_VEC_ELT (structure, structures, i, str)
exclude_alloc_and_field_accs_1 (str, node); exclude_alloc_and_field_accs_1 (str, node);
} }
@ -3783,7 +3783,7 @@ dump_new_types (void)
fprintf (dump_file, "\nThe following are the new types generated by" fprintf (dump_file, "\nThe following are the new types generated by"
" this optimization:\n"); " this optimization:\n");
for (i = 0; VEC_iterate (structure, structures, i, str); i++) FOR_EACH_VEC_ELT (structure, structures, i, str)
{ {
if (dump_file) if (dump_file)
{ {
@ -3792,7 +3792,7 @@ dump_new_types (void)
fprintf (dump_file, "\nthe number of new types is %d\n", fprintf (dump_file, "\nthe number of new types is %d\n",
VEC_length (tree, str->new_types)); VEC_length (tree, str->new_types));
} }
for (j = 0; VEC_iterate (tree, str->new_types, j, type); j++) FOR_EACH_VEC_ELT (tree, str->new_types, j, type)
dump_struct_type (type, 2, 0); dump_struct_type (type, 2, 0);
} }
} }
@ -3806,7 +3806,7 @@ create_new_types (void)
unsigned i; unsigned i;
int str_num = 0; int str_num = 0;
for (i = 0; VEC_iterate (structure, structures, i, str); i++) FOR_EACH_VEC_ELT (structure, structures, i, str)
create_new_type (str, &str_num); create_new_type (str, &str_num);
} }
@ -3911,7 +3911,7 @@ exclude_cold_structs (void)
d_str str; d_str str;
/* We summarize counts of fields of a structure into the structure count. */ /* We summarize counts of fields of a structure into the structure count. */
for (i = 0; VEC_iterate (structure, structures, i, str); i++) FOR_EACH_VEC_ELT (structure, structures, i, str)
sum_counts (str, &hottest); sum_counts (str, &hottest);
/* Remove cold structures from structures vector. */ /* Remove cold structures from structures vector. */
@ -3940,7 +3940,7 @@ peel_structs (void)
d_str str; d_str str;
unsigned i; unsigned i;
for (i = 0; VEC_iterate (structure, structures, i, str); i++) FOR_EACH_VEC_ELT (structure, structures, i, str)
peel_hot_fields (str); peel_hot_fields (str);
} }

View File

@ -658,7 +658,7 @@ function_and_variable_visibility (bool whole_program)
alias_pair *p; alias_pair *p;
/* Discover aliased nodes. */ /* Discover aliased nodes. */
for (i = 0; VEC_iterate (alias_pair, alias_pairs, i, p); i++) FOR_EACH_VEC_ELT (alias_pair, alias_pairs, i, p)
{ {
if (dump_file) if (dump_file)
fprintf (dump_file, "Alias %s->%s", fprintf (dump_file, "Alias %s->%s",

View File

@ -127,7 +127,7 @@ create_loop_tree_nodes (bool loops_p)
ira_allocate (sizeof (struct ira_loop_tree_node) ira_allocate (sizeof (struct ira_loop_tree_node)
* VEC_length (loop_p, ira_loops.larray))); * VEC_length (loop_p, ira_loops.larray)));
max_regno = max_reg_num (); max_regno = max_reg_num ();
for (i = 0; VEC_iterate (loop_p, ira_loops.larray, i, loop); i++) FOR_EACH_VEC_ELT (loop_p, ira_loops.larray, i, loop)
{ {
if (loop != ira_loops.tree_root) if (loop != ira_loops.tree_root)
{ {
@ -145,7 +145,7 @@ create_loop_tree_nodes (bool loops_p)
if (skip_p) if (skip_p)
continue; continue;
edges = get_loop_exit_edges (loop); edges = get_loop_exit_edges (loop);
for (j = 0; VEC_iterate (edge, edges, j, e); j++) FOR_EACH_VEC_ELT (edge, edges, j, e)
if ((e->flags & EDGE_ABNORMAL) && EDGE_CRITICAL_P (e)) if ((e->flags & EDGE_ABNORMAL) && EDGE_CRITICAL_P (e))
{ {
skip_p = true; skip_p = true;
@ -176,7 +176,7 @@ more_one_region_p (void)
unsigned int i; unsigned int i;
loop_p loop; loop_p loop;
for (i = 0; VEC_iterate (loop_p, ira_loops.larray, i, loop); i++) FOR_EACH_VEC_ELT (loop_p, ira_loops.larray, i, loop)
if (ira_loop_nodes[i].regno_allocno_map != NULL if (ira_loop_nodes[i].regno_allocno_map != NULL
&& ira_loop_tree_root != &ira_loop_nodes[i]) && ira_loop_tree_root != &ira_loop_nodes[i])
return true; return true;
@ -206,7 +206,7 @@ finish_loop_tree_nodes (void)
unsigned int i; unsigned int i;
loop_p loop; loop_p loop;
for (i = 0; VEC_iterate (loop_p, ira_loops.larray, i, loop); i++) FOR_EACH_VEC_ELT (loop_p, ira_loops.larray, i, loop)
finish_loop_tree_node (&ira_loop_nodes[i]); finish_loop_tree_node (&ira_loop_nodes[i]);
ira_free (ira_loop_nodes); ira_free (ira_loop_nodes);
for (i = 0; i < (unsigned int) last_basic_block_before_change; i++) for (i = 0; i < (unsigned int) last_basic_block_before_change; i++)
@ -309,7 +309,7 @@ form_loop_tree (void)
/* We can not use loop/bb node access macros because of potential /* We can not use loop/bb node access macros because of potential
checking and because the nodes are not initialized enough checking and because the nodes are not initialized enough
yet. */ yet. */
for (i = 0; VEC_iterate (loop_p, ira_loops.larray, i, loop); i++) FOR_EACH_VEC_ELT (loop_p, ira_loops.larray, i, loop)
if (ira_loop_nodes[i].regno_allocno_map != NULL) if (ira_loop_nodes[i].regno_allocno_map != NULL)
{ {
ira_loop_nodes[i].children = NULL; ira_loop_nodes[i].children = NULL;
@ -355,7 +355,7 @@ rebuild_regno_allocno_maps (void)
ira_allocno_iterator ai; ira_allocno_iterator ai;
max_regno = max_reg_num (); max_regno = max_reg_num ();
for (l = 0; VEC_iterate (loop_p, ira_loops.larray, l, loop); l++) FOR_EACH_VEC_ELT (loop_p, ira_loops.larray, l, loop)
if (ira_loop_nodes[l].regno_allocno_map != NULL) if (ira_loop_nodes[l].regno_allocno_map != NULL)
{ {
ira_free (ira_loop_nodes[l].regno_allocno_map); ira_free (ira_loop_nodes[l].regno_allocno_map);
@ -1615,7 +1615,7 @@ create_loop_tree_node_allocnos (ira_loop_tree_node_t loop_node)
create_loop_allocnos (e); create_loop_allocnos (e);
edges = get_loop_exit_edges (loop_node->loop); edges = get_loop_exit_edges (loop_node->loop);
for (i = 0; VEC_iterate (edge, edges, i, e); i++) FOR_EACH_VEC_ELT (edge, edges, i, e)
create_loop_allocnos (e); create_loop_allocnos (e);
VEC_free (edge, heap, edges); VEC_free (edge, heap, edges);
} }
@ -1875,7 +1875,7 @@ mark_all_loops_for_removal (void)
int i; int i;
loop_p loop; loop_p loop;
for (i = 0; VEC_iterate (loop_p, ira_loops.larray, i, loop); i++) FOR_EACH_VEC_ELT (loop_p, ira_loops.larray, i, loop)
if (ira_loop_nodes[i].regno_allocno_map != NULL) if (ira_loop_nodes[i].regno_allocno_map != NULL)
{ {
if (ira_loop_nodes[i].parent == NULL) if (ira_loop_nodes[i].parent == NULL)

View File

@ -1113,7 +1113,7 @@ ira_loop_edge_freq (ira_loop_tree_node_t loop_node, int regno, bool exit_p)
else else
{ {
edges = get_loop_exit_edges (loop_node->loop); edges = get_loop_exit_edges (loop_node->loop);
for (i = 0; VEC_iterate (edge, edges, i, e); i++) FOR_EACH_VEC_ELT (edge, edges, i, e)
if (regno < 0 if (regno < 0
|| (bitmap_bit_p (DF_LR_OUT (e->src), regno) || (bitmap_bit_p (DF_LR_OUT (e->src), regno)
&& bitmap_bit_p (DF_LR_IN (e->dest), regno))) && bitmap_bit_p (DF_LR_IN (e->dest), regno)))

View File

@ -323,7 +323,7 @@ setup_entered_from_non_parent_p (void)
unsigned int i; unsigned int i;
loop_p loop; loop_p loop;
for (i = 0; VEC_iterate (loop_p, ira_loops.larray, i, loop); i++) FOR_EACH_VEC_ELT (loop_p, ira_loops.larray, i, loop)
if (ira_loop_nodes[i].regno_allocno_map != NULL) if (ira_loop_nodes[i].regno_allocno_map != NULL)
ira_loop_nodes[i].entered_from_non_parent_p ira_loop_nodes[i].entered_from_non_parent_p
= entered_from_non_parent_p (&ira_loop_nodes[i]); = entered_from_non_parent_p (&ira_loop_nodes[i]);

View File

@ -1,3 +1,10 @@
2010-08-20 Nathan Froyd <froydnj@codesourcery.com>
* class.c: Use FOR_EACH_VEC_ELT.
* expr.c: Likewise.
* jcf-parse.c: Likewise.
* resource.c: Likewise.
2010-08-16 Joseph Myers <joseph@codesourcery.com> 2010-08-16 Joseph Myers <joseph@codesourcery.com>
* lang.opt (MD_, MMD_, version): Mark RejectDriver. * lang.opt (MD_, MMD_, version): Mark RejectDriver.

View File

@ -1544,9 +1544,7 @@ make_method_value (tree mdecl)
e = VEC_index (constructor_elt, v, idx--); e = VEC_index (constructor_elt, v, idx--);
e->value = null_pointer_node; e->value = null_pointer_node;
for (ix = 0; FOR_EACH_VEC_ELT (tree, DECL_FUNCTION_THROWS (mdecl), ix, t)
VEC_iterate (tree, DECL_FUNCTION_THROWS (mdecl), ix, t);
ix++)
{ {
tree sig = DECL_NAME (TYPE_NAME (t)); tree sig = DECL_NAME (TYPE_NAME (t));
tree utf8 tree utf8
@ -2762,7 +2760,7 @@ emit_indirect_register_classes (tree *list_p)
VAR_DECL, get_identifier ("_Jv_CLS"), VAR_DECL, get_identifier ("_Jv_CLS"),
class_array_type); class_array_type);
tree reg_class_list; tree reg_class_list;
for (i = 0; VEC_iterate (tree, registered_class, i, klass); ++i) FOR_EACH_VEC_ELT (tree, registered_class, i, klass)
{ {
t = fold_convert (ptr_type_node, build_static_class_ref (klass)); t = fold_convert (ptr_type_node, build_static_class_ref (klass));
CONSTRUCTOR_APPEND_ELT (init, NULL_TREE, t); CONSTRUCTOR_APPEND_ELT (init, NULL_TREE, t);
@ -2834,7 +2832,7 @@ emit_register_classes (tree *list_p)
#endif #endif
assemble_align (POINTER_SIZE); assemble_align (POINTER_SIZE);
for (i = 0; VEC_iterate (tree, registered_class, i, klass); ++i) FOR_EACH_VEC_ELT (tree, registered_class, i, klass)
{ {
t = build_fold_addr_expr (klass); t = build_fold_addr_expr (klass);
output_constant (t, POINTER_SIZE / BITS_PER_UNIT, POINTER_SIZE); output_constant (t, POINTER_SIZE / BITS_PER_UNIT, POINTER_SIZE);
@ -2852,7 +2850,7 @@ emit_register_classes (tree *list_p)
DECL_EXTERNAL (t) = 1; DECL_EXTERNAL (t) = 1;
register_class_fn = t; register_class_fn = t;
for (i = 0; VEC_iterate (tree, registered_class, i, klass); ++i) FOR_EACH_VEC_ELT (tree, registered_class, i, klass)
{ {
t = build_fold_addr_expr (klass); t = build_fold_addr_expr (klass);
t = build_call_expr (register_class_fn, 1, t); t = build_call_expr (register_class_fn, 1, t);
@ -2928,7 +2926,7 @@ emit_symbol_table (tree name, tree the_table,
return the_table; return the_table;
/* Build a list of _Jv_MethodSymbols for each entry in otable_methods. */ /* Build a list of _Jv_MethodSymbols for each entry in otable_methods. */
for (index = 0; VEC_iterate (method_entry, decl_table, index, e); index++) FOR_EACH_VEC_ELT (method_entry, decl_table, index, e)
CONSTRUCTOR_APPEND_ELT (v, NULL_TREE, CONSTRUCTOR_APPEND_ELT (v, NULL_TREE,
build_symbol_entry (e->method, e->special)); build_symbol_entry (e->method, e->special));

View File

@ -2296,7 +2296,7 @@ get_symbol_table_index (tree t, tree special,
method_entry *e; method_entry *e;
unsigned i; unsigned i;
for (i = 0; VEC_iterate (method_entry, *symbol_table, i, e); i++) FOR_EACH_VEC_ELT (method_entry, *symbol_table, i, e)
if (t == e->method && special == e->special) if (t == e->method && special == e->special)
goto done; goto done;

View File

@ -1683,7 +1683,7 @@ predefined_filename_p (tree node)
unsigned ix; unsigned ix;
tree f; tree f;
for (ix = 0; VEC_iterate (tree, predefined_filenames, ix, f); ix++) FOR_EACH_VEC_ELT (tree, predefined_filenames, ix, f)
if (f == node) if (f == node)
return 1; return 1;
@ -1869,7 +1869,7 @@ java_parse_file (int set_yydebug ATTRIBUTE_UNUSED)
} }
current_jcf = main_jcf; current_jcf = main_jcf;
for (ix = 0; VEC_iterate (tree, current_file_list, ix, node); ix++) FOR_EACH_VEC_ELT (tree, current_file_list, ix, node)
{ {
unsigned char magic_string[4]; unsigned char magic_string[4];
char *real_path; char *real_path;
@ -1956,7 +1956,7 @@ java_parse_file (int set_yydebug ATTRIBUTE_UNUSED)
} }
} }
for (ix = 0; VEC_iterate (tree, current_file_list, ix, node); ix++) FOR_EACH_VEC_ELT (tree, current_file_list, ix, node)
{ {
input_location = DECL_SOURCE_LOCATION (node); input_location = DECL_SOURCE_LOCATION (node);
if (CLASS_FILE_P (node)) if (CLASS_FILE_P (node))

View File

@ -107,7 +107,7 @@ write_resource_constructor (tree *list_p)
register_resource_fn = t; register_resource_fn = t;
/* Write out entries in the same order in which they were defined. */ /* Write out entries in the same order in which they were defined. */
for (ix = 0; VEC_iterate (tree, resources, ix, decl); ix++) FOR_EACH_VEC_ELT (tree, resources, ix, decl)
{ {
t = build_fold_addr_expr (decl); t = build_fold_addr_expr (decl);
t = build_call_expr (register_resource_fn, 1, t); t = build_call_expr (register_resource_fn, 1, t);

View File

@ -1167,7 +1167,7 @@ gcc_tree_to_linear_expression (int depth, tree expr,
{ {
tree iv, invar; tree iv, invar;
size_t i; size_t i;
for (i = 0; VEC_iterate (tree, outerinductionvars, i, iv); i++) FOR_EACH_VEC_ELT (tree, outerinductionvars, i, iv)
if (iv != NULL) if (iv != NULL)
{ {
if (SSA_NAME_VAR (iv) == SSA_NAME_VAR (expr)) if (SSA_NAME_VAR (iv) == SSA_NAME_VAR (expr))
@ -1181,7 +1181,7 @@ gcc_tree_to_linear_expression (int depth, tree expr,
LLE_DENOMINATOR (lle) = 1; LLE_DENOMINATOR (lle) = 1;
} }
} }
for (i = 0; VEC_iterate (tree, invariants, i, invar); i++) FOR_EACH_VEC_ELT (tree, invariants, i, invar)
if (invar != NULL) if (invar != NULL)
{ {
if (SSA_NAME_VAR (invar) == SSA_NAME_VAR (expr)) if (SSA_NAME_VAR (invar) == SSA_NAME_VAR (expr))
@ -1542,7 +1542,7 @@ gcc_loopnest_to_lambda_loopnest (struct loop *loop_nest,
ret = lambda_loopnest_new (depth, 2 * depth, lambda_obstack); ret = lambda_loopnest_new (depth, 2 * depth, lambda_obstack);
for (i = 0; VEC_iterate (lambda_loop, loops, i, newloop); i++) FOR_EACH_VEC_ELT (lambda_loop, loops, i, newloop)
LN_LOOPS (ret)[i] = newloop; LN_LOOPS (ret)[i] = newloop;
fail: fail:
@ -1837,7 +1837,7 @@ lambda_loopnest_to_gcc_loopnest (struct loop *old_loopnest,
/* Rewrite uses of the old ivs so that they are now specified in terms of /* Rewrite uses of the old ivs so that they are now specified in terms of
the new ivs. */ the new ivs. */
for (i = 0; VEC_iterate (tree, old_ivs, i, oldiv); i++) FOR_EACH_VEC_ELT (tree, old_ivs, i, oldiv)
{ {
imm_use_iterator imm_iter; imm_use_iterator imm_iter;
use_operand_p use_p; use_operand_p use_p;
@ -2641,7 +2641,7 @@ lambda_transform_legal_p (lambda_trans_matrix trans,
distres = lambda_vector_new (nb_loops); distres = lambda_vector_new (nb_loops);
/* For each distance vector in the dependence graph. */ /* For each distance vector in the dependence graph. */
for (i = 0; VEC_iterate (ddr_p, dependence_relations, i, ddr); i++) FOR_EACH_VEC_ELT (ddr_p, dependence_relations, i, ddr)
{ {
/* Don't care about relations for which we know that there is no /* Don't care about relations for which we know that there is no
dependence, nor about read-read (aka. output-dependences): dependence, nor about read-read (aka. output-dependences):
@ -2710,7 +2710,7 @@ lambda_collect_parameters (VEC (data_reference_p, heap) *datarefs,
struct pointer_set_t *parameter_set = pointer_set_create (); struct pointer_set_t *parameter_set = pointer_set_create ();
data_reference_p data_reference; data_reference_p data_reference;
for (i = 0; VEC_iterate (data_reference_p, datarefs, i, data_reference); i++) FOR_EACH_VEC_ELT (data_reference_p, datarefs, i, data_reference)
for (j = 0; j < DR_NUM_DIMENSIONS (data_reference); j++) for (j = 0; j < DR_NUM_DIMENSIONS (data_reference); j++)
lambda_collect_parameters_from_af (DR_ACCESS_FN (data_reference, j), lambda_collect_parameters_from_af (DR_ACCESS_FN (data_reference, j),
parameter_set, parameters); parameter_set, parameters);
@ -2862,7 +2862,7 @@ lambda_compute_access_matrices (VEC (data_reference_p, heap) *datarefs,
data_reference_p dataref; data_reference_p dataref;
unsigned ix; unsigned ix;
for (ix = 0; VEC_iterate (data_reference_p, datarefs, ix, dataref); ix++) FOR_EACH_VEC_ELT (data_reference_p, datarefs, ix, dataref)
if (!build_access_matrix (dataref, parameters, nest, lambda_obstack)) if (!build_access_matrix (dataref, parameters, nest, lambda_obstack))
return false; return false;

View File

@ -536,7 +536,7 @@ merge_identical_invariants (void)
htab_t eq = htab_create (VEC_length (invariant_p, invariants), htab_t eq = htab_create (VEC_length (invariant_p, invariants),
hash_invariant_expr, eq_invariant_expr, free); hash_invariant_expr, eq_invariant_expr, free);
for (i = 0; VEC_iterate (invariant_p, invariants, i, inv); i++) FOR_EACH_VEC_ELT (invariant_p, invariants, i, inv)
find_identical_invariants (eq, inv); find_identical_invariants (eq, inv);
htab_delete (eq); htab_delete (eq);
@ -1254,7 +1254,7 @@ best_gain_for_invariant (struct invariant **best, unsigned *regs_needed,
int i, gain = 0, again; int i, gain = 0, again;
unsigned aregs_needed[N_REG_CLASSES], invno; unsigned aregs_needed[N_REG_CLASSES], invno;
for (invno = 0; VEC_iterate (invariant_p, invariants, invno, inv); invno++) FOR_EACH_VEC_ELT (invariant_p, invariants, invno, inv)
{ {
if (inv->move) if (inv->move)
continue; continue;
@ -1508,11 +1508,11 @@ move_invariants (struct loop *loop)
struct invariant *inv; struct invariant *inv;
unsigned i; unsigned i;
for (i = 0; VEC_iterate (invariant_p, invariants, i, inv); i++) FOR_EACH_VEC_ELT (invariant_p, invariants, i, inv)
move_invariant_reg (loop, i); move_invariant_reg (loop, i);
if (flag_ira_loop_pressure && resize_reg_info ()) if (flag_ira_loop_pressure && resize_reg_info ())
{ {
for (i = 0; VEC_iterate (invariant_p, invariants, i, inv); i++) FOR_EACH_VEC_ELT (invariant_p, invariants, i, inv)
if (inv->reg != NULL_RTX) if (inv->reg != NULL_RTX)
{ {
if (inv->orig_regno >= 0) if (inv->orig_regno >= 0)
@ -1561,7 +1561,7 @@ free_inv_motion_data (void)
} }
} }
for (i = 0; VEC_iterate (invariant_p, invariants, i, inv); i++) FOR_EACH_VEC_ELT (invariant_p, invariants, i, inv)
{ {
BITMAP_FREE (inv->depends_on); BITMAP_FREE (inv->depends_on);
free (inv); free (inv);

View File

@ -501,7 +501,7 @@ peel_loop_completely (struct loop *loop)
} }
/* Remove the exit edges. */ /* Remove the exit edges. */
for (i = 0; VEC_iterate (edge, remove_edges, i, ein); i++) FOR_EACH_VEC_ELT (edge, remove_edges, i, ein)
remove_path (ein); remove_path (ein);
VEC_free (edge, heap, remove_edges); VEC_free (edge, heap, remove_edges);
} }
@ -789,7 +789,7 @@ unroll_loop_constant_iterations (struct loop *loop)
desc->niter_expr = GEN_INT (desc->niter); desc->niter_expr = GEN_INT (desc->niter);
/* Remove the edges. */ /* Remove the edges. */
for (i = 0; VEC_iterate (edge, remove_edges, i, e); i++) FOR_EACH_VEC_ELT (edge, remove_edges, i, e)
remove_path (e); remove_path (e);
VEC_free (edge, heap, remove_edges); VEC_free (edge, heap, remove_edges);
@ -992,7 +992,7 @@ unroll_loop_runtime_iterations (struct loop *loop)
basic_block bb; basic_block bb;
ldom = get_dominated_by (CDI_DOMINATORS, body[i]); ldom = get_dominated_by (CDI_DOMINATORS, body[i]);
for (j = 0; VEC_iterate (basic_block, ldom, j, bb); j++) FOR_EACH_VEC_ELT (basic_block, ldom, j, bb)
if (!flow_bb_inside_loop_p (loop, bb)) if (!flow_bb_inside_loop_p (loop, bb))
VEC_safe_push (basic_block, heap, dom_bbs, bb); VEC_safe_push (basic_block, heap, dom_bbs, bb);
@ -1161,7 +1161,7 @@ unroll_loop_runtime_iterations (struct loop *loop)
} }
/* Remove the edges. */ /* Remove the edges. */
for (i = 0; VEC_iterate (edge, remove_edges, i, e); i++) FOR_EACH_VEC_ELT (edge, remove_edges, i, e)
remove_path (e); remove_path (e);
VEC_free (edge, heap, remove_edges); VEC_free (edge, heap, remove_edges);
@ -2124,7 +2124,7 @@ insert_var_expansion_initialization (struct var_to_expand *ve,
start_sequence (); start_sequence ();
if (ve->op == PLUS || ve->op == MINUS) if (ve->op == PLUS || ve->op == MINUS)
for (i = 0; VEC_iterate (rtx, ve->var_expansions, i, var); i++) FOR_EACH_VEC_ELT (rtx, ve->var_expansions, i, var)
{ {
if (honor_signed_zero_p) if (honor_signed_zero_p)
zero_init = simplify_gen_unary (NEG, mode, CONST0_RTX (mode), mode); zero_init = simplify_gen_unary (NEG, mode, CONST0_RTX (mode), mode);
@ -2134,7 +2134,7 @@ insert_var_expansion_initialization (struct var_to_expand *ve,
emit_move_insn (var, zero_init); emit_move_insn (var, zero_init);
} }
else if (ve->op == MULT) else if (ve->op == MULT)
for (i = 0; VEC_iterate (rtx, ve->var_expansions, i, var); i++) FOR_EACH_VEC_ELT (rtx, ve->var_expansions, i, var)
{ {
zero_init = CONST1_RTX (GET_MODE (var)); zero_init = CONST1_RTX (GET_MODE (var));
emit_move_insn (var, zero_init); emit_move_insn (var, zero_init);
@ -2166,13 +2166,13 @@ combine_var_copies_in_loop_exit (struct var_to_expand *ve, basic_block place)
start_sequence (); start_sequence ();
if (ve->op == PLUS || ve->op == MINUS) if (ve->op == PLUS || ve->op == MINUS)
for (i = 0; VEC_iterate (rtx, ve->var_expansions, i, var); i++) FOR_EACH_VEC_ELT (rtx, ve->var_expansions, i, var)
{ {
sum = simplify_gen_binary (PLUS, GET_MODE (ve->reg), sum = simplify_gen_binary (PLUS, GET_MODE (ve->reg),
var, sum); var, sum);
} }
else if (ve->op == MULT) else if (ve->op == MULT)
for (i = 0; VEC_iterate (rtx, ve->var_expansions, i, var); i++) FOR_EACH_VEC_ELT (rtx, ve->var_expansions, i, var)
{ {
sum = simplify_gen_binary (MULT, GET_MODE (ve->reg), sum = simplify_gen_binary (MULT, GET_MODE (ve->reg),
var, sum); var, sum);

View File

@ -1312,7 +1312,7 @@ decompose_multiword_subregs (void)
unsigned int i; unsigned int i;
bitmap b; bitmap b;
for (i = 0; VEC_iterate (bitmap, reg_copy_graph, i, b); ++i) FOR_EACH_VEC_ELT (bitmap, reg_copy_graph, i, b)
if (b) if (b)
BITMAP_FREE (b); BITMAP_FREE (b);
} }

View File

@ -1268,7 +1268,7 @@ input_cgraph_1 (struct lto_file_decl_data *file_data,
len = lto_input_uleb128 (ib); len = lto_input_uleb128 (ib);
} }
for (i = 0; VEC_iterate (cgraph_node_ptr, nodes, i, node); i++) FOR_EACH_VEC_ELT (cgraph_node_ptr, nodes, i, node)
{ {
int ref = (int) (intptr_t) node->global.inlined_to; int ref = (int) (intptr_t) node->global.inlined_to;
@ -1307,7 +1307,7 @@ input_varpool_1 (struct lto_file_decl_data *file_data,
input_varpool_node (file_data, ib)); input_varpool_node (file_data, ib));
len--; len--;
} }
for (i = 0; VEC_iterate (varpool_node_ptr, varpool, i, node); i++) FOR_EACH_VEC_ELT (varpool_node_ptr, varpool, i, node)
{ {
int ref = (int) (intptr_t) node->same_comdat_group; int ref = (int) (intptr_t) node->same_comdat_group;
@ -1481,7 +1481,7 @@ output_node_opt_summary (struct output_block *ob,
lto_output_uleb128_stream (ob->main_stream, index); lto_output_uleb128_stream (ob->main_stream, index);
lto_output_uleb128_stream (ob->main_stream, lto_output_uleb128_stream (ob->main_stream,
VEC_length (ipa_replace_map_p, node->clone.tree_map)); VEC_length (ipa_replace_map_p, node->clone.tree_map));
for (i = 0; VEC_iterate (ipa_replace_map_p, node->clone.tree_map, i, map); i++) FOR_EACH_VEC_ELT (ipa_replace_map_p, node->clone.tree_map, i, map)
{ {
int parm_num; int parm_num;
tree parm; tree parm;

View File

@ -128,7 +128,7 @@ clear_options (VEC(opt_t, heap) **opts_p)
int i; int i;
opt_t *o; opt_t *o;
for (i = 0; VEC_iterate (opt_t, *opts_p, i, o); i++) FOR_EACH_VEC_ELT (opt_t, *opts_p, i, o)
free (o->arg); free (o->arg);
VEC_free (opt_t, heap, *opts_p); VEC_free (opt_t, heap, *opts_p);
@ -278,7 +278,7 @@ output_options (struct lto_output_stream *stream)
output_data_stream (stream, &length, sizeof (length)); output_data_stream (stream, &length, sizeof (length));
for (i = 0; VEC_iterate (opt_t, opts, i, o); i++) FOR_EACH_VEC_ELT (opt_t, opts, i, o)
{ {
output_data_stream (stream, &o->type, sizeof (o->type)); output_data_stream (stream, &o->type, sizeof (o->type));
output_data_stream (stream, &o->code, sizeof (o->code)); output_data_stream (stream, &o->code, sizeof (o->code));
@ -397,7 +397,7 @@ lto_reissue_options (void)
int i; int i;
opt_t *o; opt_t *o;
for (i = 0; VEC_iterate (opt_t, opts, i, o); i++) FOR_EACH_VEC_ELT (opt_t, opts, i, o)
{ {
const struct cl_option *option = &cl_options[o->code]; const struct cl_option *option = &cl_options[o->code];

View File

@ -539,7 +539,7 @@ fixup_eh_region_pointers (struct function *fn, HOST_WIDE_INT root_region)
/* Convert all the index numbers stored in pointer fields into /* Convert all the index numbers stored in pointer fields into
pointers to the corresponding slots in the EH region array. */ pointers to the corresponding slots in the EH region array. */
for (i = 0; VEC_iterate (eh_region, eh_array, i, r); i++) FOR_EACH_VEC_ELT (eh_region, eh_array, i, r)
{ {
/* The array may contain NULL regions. */ /* The array may contain NULL regions. */
if (r == NULL) if (r == NULL)
@ -554,7 +554,7 @@ fixup_eh_region_pointers (struct function *fn, HOST_WIDE_INT root_region)
/* Convert all the index numbers stored in pointer fields into /* Convert all the index numbers stored in pointer fields into
pointers to the corresponding slots in the EH landing pad array. */ pointers to the corresponding slots in the EH landing pad array. */
for (i = 0; VEC_iterate (eh_landing_pad, lp_array, i, lp); i++) FOR_EACH_VEC_ELT (eh_landing_pad, lp_array, i, lp)
{ {
/* The array may contain NULL landing pads. */ /* The array may contain NULL landing pads. */
if (lp == NULL) if (lp == NULL)

View File

@ -1042,7 +1042,7 @@ lto_output_ts_block_tree_pointers (struct output_block *ob, tree expr,
lto_output_chain (ob, BLOCK_VARS (expr), ref_p); lto_output_chain (ob, BLOCK_VARS (expr), ref_p);
output_uleb128 (ob, VEC_length (tree, BLOCK_NONLOCALIZED_VARS (expr))); output_uleb128 (ob, VEC_length (tree, BLOCK_NONLOCALIZED_VARS (expr)));
for (i = 0; VEC_iterate (tree, BLOCK_NONLOCALIZED_VARS (expr), i, t); i++) FOR_EACH_VEC_ELT (tree, BLOCK_NONLOCALIZED_VARS (expr), i, t)
lto_output_tree_or_ref (ob, t, ref_p); lto_output_tree_or_ref (ob, t, ref_p);
lto_output_tree_or_ref (ob, BLOCK_SUPERCONTEXT (expr), ref_p); lto_output_tree_or_ref (ob, BLOCK_SUPERCONTEXT (expr), ref_p);
@ -1067,7 +1067,7 @@ lto_output_ts_binfo_tree_pointers (struct output_block *ob, tree expr,
/* Note that the number of BINFO slots has already been emitted in /* Note that the number of BINFO slots has already been emitted in
EXPR's header (see lto_output_tree_header) because this length EXPR's header (see lto_output_tree_header) because this length
is needed to build the empty BINFO node on the reader side. */ is needed to build the empty BINFO node on the reader side. */
for (i = 0; VEC_iterate (tree, BINFO_BASE_BINFOS (expr), i, t); i++) FOR_EACH_VEC_ELT (tree, BINFO_BASE_BINFOS (expr), i, t)
lto_output_tree_or_ref (ob, t, ref_p); lto_output_tree_or_ref (ob, t, ref_p);
output_zero (ob); output_zero (ob);
@ -1077,7 +1077,7 @@ lto_output_ts_binfo_tree_pointers (struct output_block *ob, tree expr,
lto_output_tree_or_ref (ob, BINFO_VPTR_FIELD (expr), ref_p); lto_output_tree_or_ref (ob, BINFO_VPTR_FIELD (expr), ref_p);
output_uleb128 (ob, VEC_length (tree, BINFO_BASE_ACCESSES (expr))); output_uleb128 (ob, VEC_length (tree, BINFO_BASE_ACCESSES (expr)));
for (i = 0; VEC_iterate (tree, BINFO_BASE_ACCESSES (expr), i, t); i++) FOR_EACH_VEC_ELT (tree, BINFO_BASE_ACCESSES (expr), i, t)
lto_output_tree_or_ref (ob, t, ref_p); lto_output_tree_or_ref (ob, t, ref_p);
lto_output_tree_or_ref (ob, BINFO_INHERITANCE_CHAIN (expr), ref_p); lto_output_tree_or_ref (ob, BINFO_INHERITANCE_CHAIN (expr), ref_p);
@ -1508,17 +1508,17 @@ output_eh_regions (struct output_block *ob, struct function *fn)
/* Emit all the EH regions in the region array. */ /* Emit all the EH regions in the region array. */
output_sleb128 (ob, VEC_length (eh_region, fn->eh->region_array)); output_sleb128 (ob, VEC_length (eh_region, fn->eh->region_array));
for (i = 0; VEC_iterate (eh_region, fn->eh->region_array, i, eh); i++) FOR_EACH_VEC_ELT (eh_region, fn->eh->region_array, i, eh)
output_eh_region (ob, eh); output_eh_region (ob, eh);
/* Emit all landing pads. */ /* Emit all landing pads. */
output_sleb128 (ob, VEC_length (eh_landing_pad, fn->eh->lp_array)); output_sleb128 (ob, VEC_length (eh_landing_pad, fn->eh->lp_array));
for (i = 0; VEC_iterate (eh_landing_pad, fn->eh->lp_array, i, lp); i++) FOR_EACH_VEC_ELT (eh_landing_pad, fn->eh->lp_array, i, lp)
output_eh_lp (ob, lp); output_eh_lp (ob, lp);
/* Emit all the runtime type data. */ /* Emit all the runtime type data. */
output_sleb128 (ob, VEC_length (tree, fn->eh->ttype_data)); output_sleb128 (ob, VEC_length (tree, fn->eh->ttype_data));
for (i = 0; VEC_iterate (tree, fn->eh->ttype_data, i, ttype); i++) FOR_EACH_VEC_ELT (tree, fn->eh->ttype_data, i, ttype)
lto_output_tree_ref (ob, ttype); lto_output_tree_ref (ob, ttype);
/* Emit the table of action chains. */ /* Emit the table of action chains. */
@ -1526,16 +1526,14 @@ output_eh_regions (struct output_block *ob, struct function *fn)
{ {
tree t; tree t;
output_sleb128 (ob, VEC_length (tree, fn->eh->ehspec_data.arm_eabi)); output_sleb128 (ob, VEC_length (tree, fn->eh->ehspec_data.arm_eabi));
for (i = 0; FOR_EACH_VEC_ELT (tree, fn->eh->ehspec_data.arm_eabi, i, t)
VEC_iterate (tree, fn->eh->ehspec_data.arm_eabi, i, t);
i++)
lto_output_tree_ref (ob, t); lto_output_tree_ref (ob, t);
} }
else else
{ {
uchar c; uchar c;
output_sleb128 (ob, VEC_length (uchar, fn->eh->ehspec_data.other)); output_sleb128 (ob, VEC_length (uchar, fn->eh->ehspec_data.other));
for (i = 0; VEC_iterate (uchar, fn->eh->ehspec_data.other, i, c); i++) FOR_EACH_VEC_ELT (uchar, fn->eh->ehspec_data.other, i, c)
lto_output_1_stream (ob->main_stream, c); lto_output_1_stream (ob->main_stream, c);
} }
} }
@ -1908,7 +1906,7 @@ output_function (struct cgraph_node *node)
/* Output all the local variables in the function. */ /* Output all the local variables in the function. */
output_sleb128 (ob, VEC_length (tree, fn->local_decls)); output_sleb128 (ob, VEC_length (tree, fn->local_decls));
for (i = 0; VEC_iterate (tree, fn->local_decls, i, t); i++) FOR_EACH_VEC_ELT (tree, fn->local_decls, i, t)
lto_output_tree_ref (ob, t); lto_output_tree_ref (ob, t);
/* Output the head of the arguments list. */ /* Output the head of the arguments list. */
@ -2013,7 +2011,7 @@ output_unreferenced_globals (cgraph_node_set set, varpool_node_set vset)
output_zero (ob); output_zero (ob);
/* Emit the alias pairs for the nodes in SET. */ /* Emit the alias pairs for the nodes in SET. */
for (i = 0; VEC_iterate (alias_pair, alias_pairs, i, p); i++) FOR_EACH_VEC_ELT (alias_pair, alias_pairs, i, p)
{ {
if (output_alias_pair_p (p, set, vset)) if (output_alias_pair_p (p, set, vset))
{ {
@ -2446,7 +2444,7 @@ produce_symtab (struct output_block *ob,
} }
/* Write all aliases. */ /* Write all aliases. */
for (i = 0; VEC_iterate (alias_pair, alias_pairs, i, p); i++) FOR_EACH_VEC_ELT (alias_pair, alias_pairs, i, p)
if (output_alias_pair_p (p, set, vset)) if (output_alias_pair_p (p, set, vset))
write_symbol (cache, &stream, p->decl, seen, true); write_symbol (cache, &stream, p->decl, seen, true);

View File

@ -643,7 +643,7 @@ lto_streamer_cache_create (void)
unnecessarily. */ unnecessarily. */
common_nodes = lto_get_common_nodes (); common_nodes = lto_get_common_nodes ();
for (i = 0; VEC_iterate (tree, common_nodes, i, node); i++) FOR_EACH_VEC_ELT (tree, common_nodes, i, node)
preload_common_node (cache, node); preload_common_node (cache, node);
VEC_free(tree, heap, common_nodes); VEC_free(tree, heap, common_nodes);

View File

@ -601,7 +601,7 @@ lto_symtab_merge_decls_2 (void **slot)
return; return;
/* Diagnose all mismatched re-declarations. */ /* Diagnose all mismatched re-declarations. */
for (i = 0; VEC_iterate (tree, mismatches, i, decl); ++i) FOR_EACH_VEC_ELT (tree, mismatches, i, decl)
{ {
if (!gimple_types_compatible_p (TREE_TYPE (prevailing->decl), if (!gimple_types_compatible_p (TREE_TYPE (prevailing->decl),
TREE_TYPE (decl), GTC_DIAG)) TREE_TYPE (decl), GTC_DIAG))

View File

@ -1,3 +1,7 @@
2010-08-20 Nathan Froyd <froydnj@codesourcery.com>
* lto.c: Use FOR_EACH_VEC_ELT.
2010-07-27 Andi Kleen <ak@linux.intel.com> 2010-07-27 Andi Kleen <ak@linux.intel.com>
* Make-lang.in (lto.o): Add dependency to splay-tree.h * Make-lang.in (lto.o): Add dependency to splay-tree.h

View File

@ -1063,7 +1063,7 @@ lto_wpa_write_files (void)
compiled by LTRANS. After this loop, only those sets that compiled by LTRANS. After this loop, only those sets that
contain callgraph nodes from more than one file will need to be contain callgraph nodes from more than one file will need to be
compiled by LTRANS. */ compiled by LTRANS. */
for (i = 0; VEC_iterate (ltrans_partition, ltrans_partitions, i, part); i++) FOR_EACH_VEC_ELT (ltrans_partition, ltrans_partitions, i, part)
lto_stats.num_output_cgraph_nodes += VEC_length (cgraph_node_ptr, lto_stats.num_output_cgraph_nodes += VEC_length (cgraph_node_ptr,
part->cgraph_set->nodes); part->cgraph_set->nodes);
@ -1592,7 +1592,7 @@ lto_fixup_decls (struct lto_file_decl_data **files)
htab_traverse (file->function_decl_states, lto_fixup_state_aux, &data); htab_traverse (file->function_decl_states, lto_fixup_state_aux, &data);
} }
for (i = 0; VEC_iterate (tree, lto_global_var_decls, i, decl); i++) FOR_EACH_VEC_ELT (tree, lto_global_var_decls, i, decl)
{ {
tree saved_decl = decl; tree saved_decl = decl;
walk_tree (&decl, lto_fixup_tree, &data, NULL); walk_tree (&decl, lto_fixup_tree, &data, NULL);
@ -1892,7 +1892,7 @@ materialize_cgraph (void)
set_cfun (NULL); set_cfun (NULL);
/* Inform the middle end about the global variables we have seen. */ /* Inform the middle end about the global variables we have seen. */
for (i = 0; VEC_iterate (tree, lto_global_var_decls, i, decl); i++) FOR_EACH_VEC_ELT (tree, lto_global_var_decls, i, decl)
rest_of_decl_compilation (decl, 1, 0); rest_of_decl_compilation (decl, 1, 0);
if (!quiet_flag) if (!quiet_flag)

View File

@ -890,9 +890,7 @@ analyze_transpose (void **slot, void *data ATTRIBUTE_UNUSED)
{ {
if (mi->access_l) if (mi->access_l)
{ {
for (i = 0; FOR_EACH_VEC_ELT (access_site_info_p, mi->access_l, i, acc_info)
VEC_iterate (access_site_info_p, mi->access_l, i, acc_info);
i++)
free (acc_info); free (acc_info);
VEC_free (access_site_info_p, heap, mi->access_l); VEC_free (access_site_info_p, heap, mi->access_l);

View File

@ -592,15 +592,11 @@ flag_instrument_functions_exclude_p (tree fndecl)
char *s; char *s;
name = lang_hooks.decl_printable_name (fndecl, 0); name = lang_hooks.decl_printable_name (fndecl, 0);
for (i = 0; FOR_EACH_VEC_ELT (char_p, flag_instrument_functions_exclude_functions,
VEC_iterate (char_p, flag_instrument_functions_exclude_functions, i, s)
i, s);
++i)
{
if (strstr (name, s) != NULL) if (strstr (name, s) != NULL)
return true; return true;
} }
}
if (VEC_length (char_p, flag_instrument_functions_exclude_files) > 0) if (VEC_length (char_p, flag_instrument_functions_exclude_files) > 0)
{ {
@ -609,14 +605,10 @@ flag_instrument_functions_exclude_p (tree fndecl)
char *s; char *s;
name = DECL_SOURCE_FILE (fndecl); name = DECL_SOURCE_FILE (fndecl);
for (i = 0; FOR_EACH_VEC_ELT (char_p, flag_instrument_functions_exclude_files, i, s)
VEC_iterate (char_p, flag_instrument_functions_exclude_files, i, s);
++i)
{
if (strstr (name, s) != NULL) if (strstr (name, s) != NULL)
return true; return true;
} }
}
return false; return false;
} }

View File

@ -942,7 +942,7 @@ predict_loops (void)
exits = get_loop_exit_edges (loop); exits = get_loop_exit_edges (loop);
n_exits = VEC_length (edge, exits); n_exits = VEC_length (edge, exits);
for (j = 0; VEC_iterate (edge, exits, j, ex); j++) FOR_EACH_VEC_ELT (edge, exits, j, ex)
{ {
tree niter = NULL; tree niter = NULL;
HOST_WIDE_INT nitercst; HOST_WIDE_INT nitercst;

View File

@ -1009,7 +1009,7 @@ print_vec_tree (FILE *file, const char *prefix, VEC(tree,gc) *vec, int indent)
fprintf (file, "%s <VEC", prefix); fprintf (file, "%s <VEC", prefix);
dump_addr (file, " ", vec); dump_addr (file, " ", vec);
for (ix = 0; VEC_iterate (tree, vec, ix, elt); ++ix) FOR_EACH_VEC_ELT (tree, vec, ix, elt)
{ {
char temp[10]; char temp[10];
sprintf (temp, "elt %d", ix); sprintf (temp, "elt %d", ix);

View File

@ -1484,7 +1484,7 @@ sdbout_finish (const char *main_filename ATTRIBUTE_UNUSED)
size_t i; size_t i;
tree decl; tree decl;
for (i = 0; VEC_iterate (tree, deferred_global_decls, i, decl); i++) FOR_EACH_VEC_ELT (tree, deferred_global_decls, i, decl)
sdbout_symbol (decl, 0); sdbout_symbol (decl, 0);
} }

View File

@ -467,7 +467,7 @@ dump_insn_vector (rtx_vec_t succs)
int i; int i;
rtx succ; rtx succ;
for (i = 0; VEC_iterate (rtx, succs, i, succ); i++) FOR_EACH_VEC_ELT (rtx, succs, i, succ)
if (succ) if (succ)
dump_insn (succ); dump_insn (succ);
else else

View File

@ -5822,7 +5822,7 @@ make_region_from_loop_preheader (VEC(basic_block, heap) **loop_blocks)
new_rgn_number = sel_create_new_region (); new_rgn_number = sel_create_new_region ();
for (i = 0; VEC_iterate (basic_block, *loop_blocks, i, bb); i++) FOR_EACH_VEC_ELT (basic_block, *loop_blocks, i, bb)
{ {
gcc_assert (new_rgn_number >= 0); gcc_assert (new_rgn_number >= 0);
@ -6167,7 +6167,7 @@ sel_remove_loop_preheader (void)
{ {
/* If all preheader blocks are empty - dont create new empty region. /* If all preheader blocks are empty - dont create new empty region.
Instead, remove them completely. */ Instead, remove them completely. */
for (i = 0; VEC_iterate (basic_block, preheader_blocks, i, bb); i++) FOR_EACH_VEC_ELT (basic_block, preheader_blocks, i, bb)
{ {
edge e; edge e;
edge_iterator ei; edge_iterator ei;

View File

@ -2736,7 +2736,7 @@ compute_av_set_at_bb_end (insn_t insn, ilist_t p, int ws)
/* Add insn to to the tail of current path. */ /* Add insn to to the tail of current path. */
ilist_add (&p, insn); ilist_add (&p, insn);
for (is = 0; VEC_iterate (rtx, sinfo->succs_ok, is, succ); is++) FOR_EACH_VEC_ELT (rtx, sinfo->succs_ok, is, succ)
{ {
av_set_t succ_set; av_set_t succ_set;
@ -2790,7 +2790,7 @@ compute_av_set_at_bb_end (insn_t insn, ilist_t p, int ws)
/* Check liveness restrictions via hard way when there are more than /* Check liveness restrictions via hard way when there are more than
two successors. */ two successors. */
if (sinfo->succs_ok_n > 2) if (sinfo->succs_ok_n > 2)
for (is = 0; VEC_iterate (rtx, sinfo->succs_ok, is, succ); is++) FOR_EACH_VEC_ELT (rtx, sinfo->succs_ok, is, succ)
{ {
basic_block succ_bb = BLOCK_FOR_INSN (succ); basic_block succ_bb = BLOCK_FOR_INSN (succ);
@ -2801,7 +2801,7 @@ compute_av_set_at_bb_end (insn_t insn, ilist_t p, int ws)
/* Finally, check liveness restrictions on paths leaving the region. */ /* Finally, check liveness restrictions on paths leaving the region. */
if (sinfo->all_succs_n > sinfo->succs_ok_n) if (sinfo->all_succs_n > sinfo->succs_ok_n)
for (is = 0; VEC_iterate (rtx, sinfo->succs_other, is, succ); is++) FOR_EACH_VEC_ELT (rtx, sinfo->succs_other, is, succ)
mark_unavailable_targets mark_unavailable_targets
(av1, NULL, BB_LV_SET (BLOCK_FOR_INSN (succ))); (av1, NULL, BB_LV_SET (BLOCK_FOR_INSN (succ)));
@ -3572,7 +3572,7 @@ vinsn_vec_has_expr_p (vinsn_vec_t vinsn_vec, expr_t expr)
vinsn_t vinsn; vinsn_t vinsn;
int n; int n;
for (n = 0; VEC_iterate (vinsn_t, vinsn_vec, n, vinsn); n++) FOR_EACH_VEC_ELT (vinsn_t, vinsn_vec, n, vinsn)
if (VINSN_SEPARABLE_P (vinsn)) if (VINSN_SEPARABLE_P (vinsn))
{ {
if (vinsn_equal_p (vinsn, EXPR_VINSN (expr))) if (vinsn_equal_p (vinsn, EXPR_VINSN (expr)))
@ -3646,7 +3646,7 @@ vinsn_vec_clear (vinsn_vec_t *vinsn_vec)
vinsn_t vinsn; vinsn_t vinsn;
int n; int n;
for (n = 0; VEC_iterate (vinsn_t, *vinsn_vec, n, vinsn); n++) FOR_EACH_VEC_ELT (vinsn_t, *vinsn_vec, n, vinsn)
vinsn_detach (vinsn); vinsn_detach (vinsn);
VEC_block_remove (vinsn_t, *vinsn_vec, 0, len); VEC_block_remove (vinsn_t, *vinsn_vec, 0, len);
} }
@ -3942,7 +3942,7 @@ fill_vec_av_set (av_set_t av, blist_t bnds, fence_t fence,
sel_print ("Total ready exprs: %d, stalled: %d\n", sel_print ("Total ready exprs: %d, stalled: %d\n",
VEC_length (expr_t, vec_av_set), stalled); VEC_length (expr_t, vec_av_set), stalled);
sel_print ("Sorted av set (%d): ", VEC_length (expr_t, vec_av_set)); sel_print ("Sorted av set (%d): ", VEC_length (expr_t, vec_av_set));
for (n = 0; VEC_iterate (expr_t, vec_av_set, n, expr); n++) FOR_EACH_VEC_ELT (expr_t, vec_av_set, n, expr)
dump_expr (expr); dump_expr (expr);
sel_print ("\n"); sel_print ("\n");
} }
@ -3971,7 +3971,7 @@ convert_vec_av_set_to_ready (void)
sched_extend_ready_list (ready.n_ready); sched_extend_ready_list (ready.n_ready);
} }
for (n = 0; VEC_iterate (expr_t, vec_av_set, n, expr); n++) FOR_EACH_VEC_ELT (expr_t, vec_av_set, n, expr)
{ {
vinsn_t vi = EXPR_VINSN (expr); vinsn_t vi = EXPR_VINSN (expr);
insn_t insn = VINSN_INSN_RTX (vi); insn_t insn = VINSN_INSN_RTX (vi);
@ -4951,7 +4951,7 @@ remove_temp_moveop_nops (bool full_tidying)
int i; int i;
insn_t insn; insn_t insn;
for (i = 0; VEC_iterate (insn_t, vec_temp_moveop_nops, i, insn); i++) FOR_EACH_VEC_ELT (insn_t, vec_temp_moveop_nops, i, insn)
{ {
gcc_assert (INSN_NOP_P (insn)); gcc_assert (INSN_NOP_P (insn));
return_nop_to_pool (insn, full_tidying); return_nop_to_pool (insn, full_tidying);

View File

@ -181,7 +181,7 @@ build_sese_loop_nests (sese region)
/* Make sure that the loops in the SESE_LOOP_NEST are ordered. It /* Make sure that the loops in the SESE_LOOP_NEST are ordered. It
can be the case that an inner loop is inserted before an outer can be the case that an inner loop is inserted before an outer
loop. To avoid this, semi-sort once. */ loop. To avoid this, semi-sort once. */
for (i = 0; VEC_iterate (loop_p, SESE_LOOP_NEST (region), i, loop0); i++) FOR_EACH_VEC_ELT (loop_p, SESE_LOOP_NEST (region), i, loop0)
{ {
if (VEC_length (loop_p, SESE_LOOP_NEST (region)) == i + 1) if (VEC_length (loop_p, SESE_LOOP_NEST (region)) == i + 1)
break; break;

View File

@ -258,7 +258,7 @@ self_referential_size (tree size)
/* Build the parameter and argument lists in parallel; also /* Build the parameter and argument lists in parallel; also
substitute the former for the latter in the expression. */ substitute the former for the latter in the expression. */
args = VEC_alloc (tree, gc, VEC_length (tree, self_refs)); args = VEC_alloc (tree, gc, VEC_length (tree, self_refs));
for (i = 0; VEC_iterate (tree, self_refs, i, ref); i++) FOR_EACH_VEC_ELT (tree, self_refs, i, ref)
{ {
tree subst, param_name, param_type, param_decl; tree subst, param_name, param_type, param_decl;

View File

@ -6213,7 +6213,7 @@ move_sese_region_to_fn (struct function *dest_cfun, basic_block entry_bb,
{ {
eh_region region = NULL; eh_region region = NULL;
for (i = 0; VEC_iterate (basic_block, bbs, i, bb); i++) FOR_EACH_VEC_ELT (basic_block, bbs, i, bb)
region = find_outermost_region_in_block (saved_cfun, bb, region); region = find_outermost_region_in_block (saved_cfun, bb, region);
init_eh_for_function (); init_eh_for_function ();
@ -6242,7 +6242,7 @@ move_sese_region_to_fn (struct function *dest_cfun, basic_block entry_bb,
d.eh_map = eh_map; d.eh_map = eh_map;
d.remap_decls_p = true; d.remap_decls_p = true;
for (i = 0; VEC_iterate (basic_block, bbs, i, bb); i++) FOR_EACH_VEC_ELT (basic_block, bbs, i, bb)
{ {
/* No need to update edge counts on the last block. It has /* No need to update edge counts on the last block. It has
already been updated earlier when we detached the region from already been updated earlier when we detached the region from
@ -6307,7 +6307,7 @@ move_sese_region_to_fn (struct function *dest_cfun, basic_block entry_bb,
} }
set_immediate_dominator (CDI_DOMINATORS, bb, dom_entry); set_immediate_dominator (CDI_DOMINATORS, bb, dom_entry);
for (i = 0; VEC_iterate (basic_block, dom_bbs, i, abb); i++) FOR_EACH_VEC_ELT (basic_block, dom_bbs, i, abb)
set_immediate_dominator (CDI_DOMINATORS, abb, bb); set_immediate_dominator (CDI_DOMINATORS, abb, bb);
VEC_free (basic_block, heap, dom_bbs); VEC_free (basic_block, heap, dom_bbs);
@ -6917,7 +6917,7 @@ remove_edge_and_dominated_blocks (edge e)
else else
{ {
bbs_to_remove = get_all_dominated_blocks (CDI_DOMINATORS, e->dest); bbs_to_remove = get_all_dominated_blocks (CDI_DOMINATORS, e->dest);
for (i = 0; VEC_iterate (basic_block, bbs_to_remove, i, bb); i++) FOR_EACH_VEC_ELT (basic_block, bbs_to_remove, i, bb)
{ {
FOR_EACH_EDGE (f, ei, bb->succs) FOR_EACH_EDGE (f, ei, bb->succs)
{ {
@ -6925,7 +6925,7 @@ remove_edge_and_dominated_blocks (edge e)
bitmap_set_bit (df, f->dest->index); bitmap_set_bit (df, f->dest->index);
} }
} }
for (i = 0; VEC_iterate (basic_block, bbs_to_remove, i, bb); i++) FOR_EACH_VEC_ELT (basic_block, bbs_to_remove, i, bb)
bitmap_clear_bit (df, bb->index); bitmap_clear_bit (df, bb->index);
EXECUTE_IF_SET_IN_BITMAP (df, 0, i, bi) EXECUTE_IF_SET_IN_BITMAP (df, 0, i, bi)

View File

@ -901,7 +901,7 @@ remove_forwarder_block_with_phi (basic_block bb)
redirection, replace it with the PHI argument that used redirection, replace it with the PHI argument that used
to be on E. */ to be on E. */
head = redirect_edge_var_map_vector (e); head = redirect_edge_var_map_vector (e);
for (i = 0; VEC_iterate (edge_var_map, head, i, vm); ++i) FOR_EACH_VEC_ELT (edge_var_map, head, i, vm)
{ {
tree old_arg = redirect_edge_var_map_result (vm); tree old_arg = redirect_edge_var_map_result (vm);
tree new_arg = redirect_edge_var_map_def (vm); tree new_arg = redirect_edge_var_map_def (vm);

View File

@ -659,7 +659,7 @@ chrec_apply_map (tree chrec, VEC (tree, heap) *iv_map)
int i; int i;
tree expr; tree expr;
for (i = 0; VEC_iterate (tree, iv_map, i, expr); i++) FOR_EACH_VEC_ELT (tree, iv_map, i, expr)
if (expr) if (expr)
chrec = chrec_apply (i, chrec, expr); chrec = chrec_apply (i, chrec, expr);

View File

@ -152,7 +152,7 @@ dump_data_references (FILE *file, VEC (data_reference_p, heap) *datarefs)
unsigned int i; unsigned int i;
struct data_reference *dr; struct data_reference *dr;
for (i = 0; VEC_iterate (data_reference_p, datarefs, i, dr); i++) FOR_EACH_VEC_ELT (data_reference_p, datarefs, i, dr)
dump_data_reference (file, dr); dump_data_reference (file, dr);
} }
@ -181,7 +181,7 @@ dump_data_dependence_relations (FILE *file,
unsigned int i; unsigned int i;
struct data_dependence_relation *ddr; struct data_dependence_relation *ddr;
for (i = 0; VEC_iterate (ddr_p, ddrs, i, ddr); i++) FOR_EACH_VEC_ELT (ddr_p, ddrs, i, ddr)
dump_data_dependence_relation (file, ddr); dump_data_dependence_relation (file, ddr);
} }
@ -342,7 +342,7 @@ print_dir_vectors (FILE *outf, VEC (lambda_vector, heap) *dir_vects,
unsigned j; unsigned j;
lambda_vector v; lambda_vector v;
for (j = 0; VEC_iterate (lambda_vector, dir_vects, j, v); j++) FOR_EACH_VEC_ELT (lambda_vector, dir_vects, j, v)
print_direction_vector (outf, v, length); print_direction_vector (outf, v, length);
} }
@ -355,7 +355,7 @@ print_dist_vectors (FILE *outf, VEC (lambda_vector, heap) *dist_vects,
unsigned j; unsigned j;
lambda_vector v; lambda_vector v;
for (j = 0; VEC_iterate (lambda_vector, dist_vects, j, v); j++) FOR_EACH_VEC_ELT (lambda_vector, dist_vects, j, v)
print_lambda_vector (outf, v, length); print_lambda_vector (outf, v, length);
} }
@ -420,7 +420,7 @@ dump_data_dependence_relation (FILE *outf,
fprintf (outf, " inner loop index: %d\n", DDR_INNER_LOOP (ddr)); fprintf (outf, " inner loop index: %d\n", DDR_INNER_LOOP (ddr));
fprintf (outf, " loop nest: ("); fprintf (outf, " loop nest: (");
for (i = 0; VEC_iterate (loop_p, DDR_LOOP_NEST (ddr), i, loopi); i++) FOR_EACH_VEC_ELT (loop_p, DDR_LOOP_NEST (ddr), i, loopi)
fprintf (outf, "%d ", loopi->num); fprintf (outf, "%d ", loopi->num);
fprintf (outf, ")\n"); fprintf (outf, ")\n");
@ -495,17 +495,17 @@ dump_dist_dir_vectors (FILE *file, VEC (ddr_p, heap) *ddrs)
struct data_dependence_relation *ddr; struct data_dependence_relation *ddr;
lambda_vector v; lambda_vector v;
for (i = 0; VEC_iterate (ddr_p, ddrs, i, ddr); i++) FOR_EACH_VEC_ELT (ddr_p, ddrs, i, ddr)
if (DDR_ARE_DEPENDENT (ddr) == NULL_TREE && DDR_AFFINE_P (ddr)) if (DDR_ARE_DEPENDENT (ddr) == NULL_TREE && DDR_AFFINE_P (ddr))
{ {
for (j = 0; VEC_iterate (lambda_vector, DDR_DIST_VECTS (ddr), j, v); j++) FOR_EACH_VEC_ELT (lambda_vector, DDR_DIST_VECTS (ddr), j, v)
{ {
fprintf (file, "DISTANCE_V ("); fprintf (file, "DISTANCE_V (");
print_lambda_vector (file, v, DDR_NB_LOOPS (ddr)); print_lambda_vector (file, v, DDR_NB_LOOPS (ddr));
fprintf (file, ")\n"); fprintf (file, ")\n");
} }
for (j = 0; VEC_iterate (lambda_vector, DDR_DIR_VECTS (ddr), j, v); j++) FOR_EACH_VEC_ELT (lambda_vector, DDR_DIR_VECTS (ddr), j, v)
{ {
fprintf (file, "DIRECTION_V ("); fprintf (file, "DIRECTION_V (");
print_direction_vector (file, v, DDR_NB_LOOPS (ddr)); print_direction_vector (file, v, DDR_NB_LOOPS (ddr));
@ -524,7 +524,7 @@ dump_ddrs (FILE *file, VEC (ddr_p, heap) *ddrs)
unsigned int i; unsigned int i;
struct data_dependence_relation *ddr; struct data_dependence_relation *ddr;
for (i = 0; VEC_iterate (ddr_p, ddrs, i, ddr); i++) FOR_EACH_VEC_ELT (ddr_p, ddrs, i, ddr)
dump_data_dependence_relation (file, ddr); dump_data_dependence_relation (file, ddr);
fprintf (file, "\n\n"); fprintf (file, "\n\n");
@ -923,7 +923,7 @@ dr_address_invariant_p (struct data_reference *dr)
unsigned i; unsigned i;
tree idx; tree idx;
for (i = 0; VEC_iterate (tree, DR_ACCESS_FNS (dr), i, idx); i++) FOR_EACH_VEC_ELT (tree, DR_ACCESS_FNS (dr), i, idx)
if (tree_contains_chrecs (idx, NULL)) if (tree_contains_chrecs (idx, NULL))
return false; return false;
@ -1506,7 +1506,7 @@ free_subscripts (VEC (subscript_p, heap) *subscripts)
unsigned i; unsigned i;
subscript_p s; subscript_p s;
for (i = 0; VEC_iterate (subscript_p, subscripts, i, s); i++) FOR_EACH_VEC_ELT (subscript_p, subscripts, i, s)
{ {
free_conflict_function (s->conflicting_iterations_in_a); free_conflict_function (s->conflicting_iterations_in_a);
free_conflict_function (s->conflicting_iterations_in_b); free_conflict_function (s->conflicting_iterations_in_b);
@ -2841,7 +2841,7 @@ save_dist_v (struct data_dependence_relation *ddr, lambda_vector dist_v)
unsigned i; unsigned i;
lambda_vector v; lambda_vector v;
for (i = 0; VEC_iterate (lambda_vector, DDR_DIST_VECTS (ddr), i, v); i++) FOR_EACH_VEC_ELT (lambda_vector, DDR_DIST_VECTS (ddr), i, v)
if (lambda_vector_equal (v, dist_v, DDR_NB_LOOPS (ddr))) if (lambda_vector_equal (v, dist_v, DDR_NB_LOOPS (ddr)))
return; return;
@ -2856,7 +2856,7 @@ save_dir_v (struct data_dependence_relation *ddr, lambda_vector dir_v)
unsigned i; unsigned i;
lambda_vector v; lambda_vector v;
for (i = 0; VEC_iterate (lambda_vector, DDR_DIR_VECTS (ddr), i, v); i++) FOR_EACH_VEC_ELT (lambda_vector, DDR_DIR_VECTS (ddr), i, v)
if (lambda_vector_equal (v, dir_v, DDR_NB_LOOPS (ddr))) if (lambda_vector_equal (v, dir_v, DDR_NB_LOOPS (ddr)))
return; return;
@ -3319,7 +3319,7 @@ build_classic_dir_vector (struct data_dependence_relation *ddr)
unsigned i, j; unsigned i, j;
lambda_vector dist_v; lambda_vector dist_v;
for (i = 0; VEC_iterate (lambda_vector, DDR_DIST_VECTS (ddr), i, dist_v); i++) FOR_EACH_VEC_ELT (lambda_vector, DDR_DIST_VECTS (ddr), i, dist_v)
{ {
lambda_vector dir_v = lambda_vector_new (DDR_NB_LOOPS (ddr)); lambda_vector dir_v = lambda_vector_new (DDR_NB_LOOPS (ddr));
@ -3421,7 +3421,7 @@ access_functions_are_affine_or_constant_p (const struct data_reference *a,
VEC(tree,heap) *fns = DR_ACCESS_FNS (a); VEC(tree,heap) *fns = DR_ACCESS_FNS (a);
tree t; tree t;
for (i = 0; VEC_iterate (tree, fns, i, t); i++) FOR_EACH_VEC_ELT (tree, fns, i, t)
if (!evolution_function_is_invariant_p (t, loop_nest->num) if (!evolution_function_is_invariant_p (t, loop_nest->num)
&& !evolution_function_is_affine_multivariate_p (t, loop_nest->num)) && !evolution_function_is_affine_multivariate_p (t, loop_nest->num))
return false; return false;
@ -3883,7 +3883,7 @@ ddr_consistent_p (FILE *file,
DDR_NUM_DIST_VECTS (ddr)); DDR_NUM_DIST_VECTS (ddr));
fprintf (file, "Banerjee dist vectors:\n"); fprintf (file, "Banerjee dist vectors:\n");
for (i = 0; VEC_iterate (lambda_vector, dist_vects, i, b_dist_v); i++) FOR_EACH_VEC_ELT (lambda_vector, dist_vects, i, b_dist_v)
print_lambda_vector (file, b_dist_v, DDR_NB_LOOPS (ddr)); print_lambda_vector (file, b_dist_v, DDR_NB_LOOPS (ddr));
fprintf (file, "Omega dist vectors:\n"); fprintf (file, "Omega dist vectors:\n");
@ -3912,7 +3912,7 @@ ddr_consistent_p (FILE *file,
/* Distance vectors are not ordered in the same way in the DDR /* Distance vectors are not ordered in the same way in the DDR
and in the DIST_VECTS: search for a matching vector. */ and in the DIST_VECTS: search for a matching vector. */
for (j = 0; VEC_iterate (lambda_vector, dist_vects, j, a_dist_v); j++) FOR_EACH_VEC_ELT (lambda_vector, dist_vects, j, a_dist_v)
if (lambda_vector_equal (a_dist_v, b_dist_v, DDR_NB_LOOPS (ddr))) if (lambda_vector_equal (a_dist_v, b_dist_v, DDR_NB_LOOPS (ddr)))
break; break;
@ -3935,7 +3935,7 @@ ddr_consistent_p (FILE *file,
/* Direction vectors are not ordered in the same way in the DDR /* Direction vectors are not ordered in the same way in the DDR
and in the DIR_VECTS: search for a matching vector. */ and in the DIR_VECTS: search for a matching vector. */
for (j = 0; VEC_iterate (lambda_vector, dir_vects, j, a_dir_v); j++) FOR_EACH_VEC_ELT (lambda_vector, dir_vects, j, a_dir_v)
if (lambda_vector_equal (a_dir_v, b_dir_v, DDR_NB_LOOPS (ddr))) if (lambda_vector_equal (a_dir_v, b_dir_v, DDR_NB_LOOPS (ddr)))
break; break;
@ -4105,7 +4105,7 @@ compute_all_dependences (VEC (data_reference_p, heap) *datarefs,
struct data_reference *a, *b; struct data_reference *a, *b;
unsigned int i, j; unsigned int i, j;
for (i = 0; VEC_iterate (data_reference_p, datarefs, i, a); i++) FOR_EACH_VEC_ELT (data_reference_p, datarefs, i, a)
for (j = i + 1; VEC_iterate (data_reference_p, datarefs, j, b); j++) for (j = i + 1; VEC_iterate (data_reference_p, datarefs, j, b); j++)
if (!DR_IS_READ (a) || !DR_IS_READ (b) || compute_self_and_rr) if (!DR_IS_READ (a) || !DR_IS_READ (b) || compute_self_and_rr)
{ {
@ -4116,7 +4116,7 @@ compute_all_dependences (VEC (data_reference_p, heap) *datarefs,
} }
if (compute_self_and_rr) if (compute_self_and_rr)
for (i = 0; VEC_iterate (data_reference_p, datarefs, i, a); i++) FOR_EACH_VEC_ELT (data_reference_p, datarefs, i, a)
{ {
ddr = initialize_data_dependence_relation (a, a, loop_nest); ddr = initialize_data_dependence_relation (a, a, loop_nest);
VEC_safe_push (ddr_p, heap, *dependence_relations, ddr); VEC_safe_push (ddr_p, heap, *dependence_relations, ddr);
@ -4214,7 +4214,7 @@ find_data_references_in_stmt (struct loop *nest, gimple stmt,
return false; return false;
} }
for (i = 0; VEC_iterate (data_ref_loc, references, i, ref); i++) FOR_EACH_VEC_ELT (data_ref_loc, references, i, ref)
{ {
dr = create_data_ref (nest, *ref->pos, stmt, ref->is_read); dr = create_data_ref (nest, *ref->pos, stmt, ref->is_read);
gcc_assert (dr != NULL); gcc_assert (dr != NULL);
@ -4257,7 +4257,7 @@ graphite_find_data_references_in_stmt (struct loop *nest, gimple stmt,
return false; return false;
} }
for (i = 0; VEC_iterate (data_ref_loc, references, i, ref); i++) FOR_EACH_VEC_ELT (data_ref_loc, references, i, ref)
{ {
dr = create_data_ref (nest, *ref->pos, stmt, ref->is_read); dr = create_data_ref (nest, *ref->pos, stmt, ref->is_read);
gcc_assert (dr != NULL); gcc_assert (dr != NULL);
@ -4526,7 +4526,7 @@ analyze_all_data_dependences (struct loop *loop)
unsigned nb_chrec_relations = 0; unsigned nb_chrec_relations = 0;
struct data_dependence_relation *ddr; struct data_dependence_relation *ddr;
for (i = 0; VEC_iterate (ddr_p, dependence_relations, i, ddr); i++) FOR_EACH_VEC_ELT (ddr_p, dependence_relations, i, ddr)
{ {
if (chrec_contains_undetermined (DDR_ARE_DEPENDENT (ddr))) if (chrec_contains_undetermined (DDR_ARE_DEPENDENT (ddr)))
nb_top_relations++; nb_top_relations++;
@ -4587,7 +4587,7 @@ free_dependence_relations (VEC (ddr_p, heap) *dependence_relations)
struct data_dependence_relation *ddr; struct data_dependence_relation *ddr;
VEC (loop_p, heap) *loop_nest = NULL; VEC (loop_p, heap) *loop_nest = NULL;
for (i = 0; VEC_iterate (ddr_p, dependence_relations, i, ddr); i++) FOR_EACH_VEC_ELT (ddr_p, dependence_relations, i, ddr)
{ {
if (ddr == NULL) if (ddr == NULL)
continue; continue;
@ -4612,7 +4612,7 @@ free_data_refs (VEC (data_reference_p, heap) *datarefs)
unsigned int i; unsigned int i;
struct data_reference *dr; struct data_reference *dr;
for (i = 0; VEC_iterate (data_reference_p, datarefs, i, dr); i++) FOR_EACH_VEC_ELT (data_reference_p, datarefs, i, dr)
free_data_ref (dr); free_data_ref (dr);
VEC_free (data_reference_p, heap, datarefs); VEC_free (data_reference_p, heap, datarefs);
} }
@ -4814,7 +4814,7 @@ create_rdg_edges (struct graph *rdg, VEC (ddr_p, heap) *ddrs)
def_operand_p def_p; def_operand_p def_p;
ssa_op_iter iter; ssa_op_iter iter;
for (i = 0; VEC_iterate (ddr_p, ddrs, i, ddr); i++) FOR_EACH_VEC_ELT (ddr_p, ddrs, i, ddr)
if (DDR_ARE_DEPENDENT (ddr) == NULL_TREE) if (DDR_ARE_DEPENDENT (ddr) == NULL_TREE)
create_rdg_edge_for_ddr (rdg, ddr); create_rdg_edge_for_ddr (rdg, ddr);
@ -4832,7 +4832,7 @@ create_rdg_vertices (struct graph *rdg, VEC (gimple, heap) *stmts)
int i, j; int i, j;
gimple stmt; gimple stmt;
for (i = 0; VEC_iterate (gimple, stmts, i, stmt); i++) FOR_EACH_VEC_ELT (gimple, stmts, i, stmt)
{ {
VEC (data_ref_loc, heap) *references; VEC (data_ref_loc, heap) *references;
data_ref_loc *ref; data_ref_loc *ref;
@ -4858,7 +4858,7 @@ create_rdg_vertices (struct graph *rdg, VEC (gimple, heap) *stmts)
continue; continue;
get_references_in_stmt (stmt, &references); get_references_in_stmt (stmt, &references);
for (j = 0; VEC_iterate (data_ref_loc, references, j, ref); j++) FOR_EACH_VEC_ELT (data_ref_loc, references, j, ref)
if (!ref->is_read) if (!ref->is_read)
RDG_MEM_WRITE_STMT (rdg, i) = true; RDG_MEM_WRITE_STMT (rdg, i) = true;
else else
@ -4908,7 +4908,7 @@ known_dependences_p (VEC (ddr_p, heap) *dependence_relations)
ddr_p ddr; ddr_p ddr;
unsigned int i; unsigned int i;
for (i = 0; VEC_iterate (ddr_p, dependence_relations, i, ddr); i++) FOR_EACH_VEC_ELT (ddr_p, dependence_relations, i, ddr)
if (DDR_ARE_DEPENDENT (ddr) == chrec_dont_know) if (DDR_ARE_DEPENDENT (ddr) == chrec_dont_know)
return false; return false;
@ -5142,12 +5142,12 @@ have_similar_memory_accesses (gimple s1, gimple s2)
get_references_in_stmt (s1, &refs1); get_references_in_stmt (s1, &refs1);
get_references_in_stmt (s2, &refs2); get_references_in_stmt (s2, &refs2);
for (i = 0; VEC_iterate (data_ref_loc, refs1, i, ref1); i++) FOR_EACH_VEC_ELT (data_ref_loc, refs1, i, ref1)
{ {
tree base1 = ref_base_address (s1, ref1); tree base1 = ref_base_address (s1, ref1);
if (base1) if (base1)
for (j = 0; VEC_iterate (data_ref_loc, refs2, j, ref2); j++) FOR_EACH_VEC_ELT (data_ref_loc, refs2, j, ref2)
if (base1 == ref_base_address (s2, ref2)) if (base1 == ref_base_address (s2, ref2))
{ {
res = true; res = true;
@ -5183,7 +5183,7 @@ ref_base_address_1 (const void *s)
get_references_in_stmt (stmt, &refs); get_references_in_stmt (stmt, &refs);
for (i = 0; VEC_iterate (data_ref_loc, refs, i, ref); i++) FOR_EACH_VEC_ELT (data_ref_loc, refs, i, ref)
if (!ref->is_read) if (!ref->is_read)
{ {
res = htab_hash_pointer (ref_base_address (stmt, ref)); res = htab_hash_pointer (ref_base_address (stmt, ref));
@ -5233,7 +5233,7 @@ access_matrix_get_index_for_parameter (tree parameter,
VEC (tree,heap) *lambda_parameters = AM_PARAMETERS (access_matrix); VEC (tree,heap) *lambda_parameters = AM_PARAMETERS (access_matrix);
tree lambda_parameter; tree lambda_parameter;
for (i = 0; VEC_iterate (tree, lambda_parameters, i, lambda_parameter); i++) FOR_EACH_VEC_ELT (tree, lambda_parameters, i, lambda_parameter)
if (lambda_parameter == parameter) if (lambda_parameter == parameter)
return i + AM_NB_INDUCTION_VARS (access_matrix); return i + AM_NB_INDUCTION_VARS (access_matrix);

View File

@ -714,7 +714,7 @@ ipa_lower_emutls (void)
VEC_safe_grow (tree, heap, access_vars, n_tls); VEC_safe_grow (tree, heap, access_vars, n_tls);
/* Create the control variables for each TLS variable. */ /* Create the control variables for each TLS variable. */
for (i = 0; VEC_iterate (varpool_node_ptr, tls_vars->nodes, i, var); ++i) FOR_EACH_VEC_ELT (varpool_node_ptr, tls_vars->nodes, i, var)
{ {
tree cdecl; tree cdecl;
struct varpool_node *cvar; struct varpool_node *cvar;
@ -750,7 +750,7 @@ ipa_lower_emutls (void)
if (any_aliases) if (any_aliases)
{ {
alias_pair *p; alias_pair *p;
for (i = 0; VEC_iterate (alias_pair, alias_pairs, i, p); ++i) FOR_EACH_VEC_ELT (alias_pair, alias_pairs, i, p)
if (DECL_THREAD_LOCAL_P (p->decl)) if (DECL_THREAD_LOCAL_P (p->decl))
{ {
p->decl = emutls_decl (p->decl); p->decl = emutls_decl (p->decl);

View File

@ -2370,7 +2370,7 @@ copy_debug_stmts (copy_body_data *id)
if (!id->debug_stmts) if (!id->debug_stmts)
return; return;
for (i = 0; VEC_iterate (gimple, id->debug_stmts, i, stmt); i++) FOR_EACH_VEC_ELT (gimple, id->debug_stmts, i, stmt)
copy_debug_stmt (stmt, id); copy_debug_stmt (stmt, id);
VEC_free (gimple, heap, id->debug_stmts); VEC_free (gimple, heap, id->debug_stmts);

View File

@ -1992,7 +1992,7 @@ rewrite_update_phi_arguments (basic_block bb)
continue; continue;
phis = VEC_index (gimple_vec, phis_to_rewrite, e->dest->index); phis = VEC_index (gimple_vec, phis_to_rewrite, e->dest->index);
for (i = 0; VEC_iterate (gimple, phis, i, phi); i++) FOR_EACH_VEC_ELT (gimple, phis, i, phi)
{ {
tree arg, lhs_sym, reaching_def = NULL; tree arg, lhs_sym, reaching_def = NULL;
use_operand_p arg_p; use_operand_p arg_p;

View File

@ -517,7 +517,7 @@ mark_nodes_having_upstream_mem_writes (struct graph *rdg)
graphds_dfs (rdg, &v, 1, &nodes, false, NULL); graphds_dfs (rdg, &v, 1, &nodes, false, NULL);
for (i = 0; VEC_iterate (int, nodes, i, x); i++) FOR_EACH_VEC_ELT (int, nodes, i, x)
{ {
if (!bitmap_set_bit (seen, x)) if (!bitmap_set_bit (seen, x))
continue; continue;
@ -672,7 +672,7 @@ rdg_flag_vertex_and_dependent (struct graph *rdg, int v, bitmap partition,
graphds_dfs (rdg, &v, 1, &nodes, false, remaining_stmts); graphds_dfs (rdg, &v, 1, &nodes, false, remaining_stmts);
rdg_flag_vertex (rdg, v, partition, loops, part_has_writes); rdg_flag_vertex (rdg, v, partition, loops, part_has_writes);
for (i = 0; VEC_iterate (int, nodes, i, x); i++) FOR_EACH_VEC_ELT (int, nodes, i, x)
if (!already_processed_vertex_p (processed, x)) if (!already_processed_vertex_p (processed, x))
rdg_flag_vertex_and_dependent (rdg, x, partition, loops, processed, rdg_flag_vertex_and_dependent (rdg, x, partition, loops, processed,
part_has_writes); part_has_writes);
@ -690,7 +690,7 @@ collect_condition_stmts (struct loop *loop, VEC (gimple, heap) **conds)
edge e; edge e;
VEC (edge, heap) *exits = get_loop_exit_edges (loop); VEC (edge, heap) *exits = get_loop_exit_edges (loop);
for (i = 0; VEC_iterate (edge, exits, i, e); i++) FOR_EACH_VEC_ELT (edge, exits, i, e)
{ {
gimple cond = last_stmt (e->src); gimple cond = last_stmt (e->src);
@ -771,7 +771,7 @@ rdg_flag_similar_memory_accesses (struct graph *rdg, bitmap partition,
/* Remove from OTHER_STORES the vertex that we flagged. */ /* Remove from OTHER_STORES the vertex that we flagged. */
if (RDG_MEM_WRITE_STMT (rdg, j)) if (RDG_MEM_WRITE_STMT (rdg, j))
for (k = 0; VEC_iterate (int, *other_stores, k, kk); k++) FOR_EACH_VEC_ELT (int, *other_stores, k, kk)
if (kk == j) if (kk == j)
{ {
VEC_unordered_remove (int, *other_stores, k); VEC_unordered_remove (int, *other_stores, k);
@ -802,7 +802,7 @@ build_rdg_partition_for_component (struct graph *rdg, rdgc c,
bitmap loops = BITMAP_ALLOC (NULL); bitmap loops = BITMAP_ALLOC (NULL);
bitmap processed = BITMAP_ALLOC (NULL); bitmap processed = BITMAP_ALLOC (NULL);
for (i = 0; VEC_iterate (int, c->vertices, i, v); i++) FOR_EACH_VEC_ELT (int, c->vertices, i, v)
if (!already_processed_vertex_p (processed, v)) if (!already_processed_vertex_p (processed, v))
rdg_flag_vertex_and_dependent (rdg, v, partition, loops, processed, rdg_flag_vertex_and_dependent (rdg, v, partition, loops, processed,
part_has_writes); part_has_writes);
@ -829,7 +829,7 @@ free_rdg_components (VEC (rdgc, heap) *components)
int i; int i;
rdgc x; rdgc x;
for (i = 0; VEC_iterate (rdgc, components, i, x); i++) FOR_EACH_VEC_ELT (rdgc, components, i, x)
{ {
VEC_free (int, heap, x->vertices); VEC_free (int, heap, x->vertices);
free (x); free (x);
@ -854,7 +854,7 @@ rdg_build_components (struct graph *rdg, VEC (int, heap) *starting_vertices,
for (i = 0; i < rdg->n_vertices; i++) for (i = 0; i < rdg->n_vertices; i++)
VEC_safe_push (int, heap, all_components[rdg->vertices[i].component], i); VEC_safe_push (int, heap, all_components[rdg->vertices[i].component], i);
for (i = 0; VEC_iterate (int, starting_vertices, i, v); i++) FOR_EACH_VEC_ELT (int, starting_vertices, i, v)
{ {
int c = rdg->vertices[v].component; int c = rdg->vertices[v].component;
@ -889,7 +889,7 @@ rdg_build_partitions (struct graph *rdg, VEC (rdgc, heap) *components,
rdgc x; rdgc x;
bitmap partition = BITMAP_ALLOC (NULL); bitmap partition = BITMAP_ALLOC (NULL);
for (i = 0; VEC_iterate (rdgc, components, i, x); i++) FOR_EACH_VEC_ELT (rdgc, components, i, x)
{ {
bitmap np; bitmap np;
bool part_has_writes = false; bool part_has_writes = false;
@ -955,7 +955,7 @@ dump_rdg_partitions (FILE *file, VEC (bitmap, heap) *partitions)
int i; int i;
bitmap partition; bitmap partition;
for (i = 0; VEC_iterate (bitmap, partitions, i, partition); i++) FOR_EACH_VEC_ELT (bitmap, partitions, i, partition)
debug_bitmap_file (file, partition); debug_bitmap_file (file, partition);
} }
@ -1019,7 +1019,7 @@ partition_contains_all_rw (struct graph *rdg, VEC (bitmap, heap) *partitions)
bitmap partition; bitmap partition;
int nrw = number_of_rw_in_rdg (rdg); int nrw = number_of_rw_in_rdg (rdg);
for (i = 0; VEC_iterate (bitmap, partitions, i, partition); i++) FOR_EACH_VEC_ELT (bitmap, partitions, i, partition)
if (nrw == number_of_rw_in_partition (rdg, partition)) if (nrw == number_of_rw_in_partition (rdg, partition))
return true; return true;
@ -1054,7 +1054,7 @@ ldist_gen (struct loop *loop, struct graph *rdg,
unsigned j; unsigned j;
bool found = false; bool found = false;
for (j = 0; VEC_iterate (int, starting_vertices, j, v); j++) FOR_EACH_VEC_ELT (int, starting_vertices, j, v)
if (i == v) if (i == v)
{ {
found = true; found = true;
@ -1080,7 +1080,7 @@ ldist_gen (struct loop *loop, struct graph *rdg,
if (dump_file && (dump_flags & TDF_DETAILS)) if (dump_file && (dump_flags & TDF_DETAILS))
dump_rdg_partitions (dump_file, partitions); dump_rdg_partitions (dump_file, partitions);
for (i = 0; VEC_iterate (bitmap, partitions, i, partition); i++) FOR_EACH_VEC_ELT (bitmap, partitions, i, partition)
if (!generate_code_for_partition (loop, partition, i < nbp - 1)) if (!generate_code_for_partition (loop, partition, i < nbp - 1))
goto ldist_done; goto ldist_done;
@ -1092,7 +1092,7 @@ ldist_gen (struct loop *loop, struct graph *rdg,
BITMAP_FREE (remaining_stmts); BITMAP_FREE (remaining_stmts);
BITMAP_FREE (upstream_mem_writes); BITMAP_FREE (upstream_mem_writes);
for (i = 0; VEC_iterate (bitmap, partitions, i, partition); i++) FOR_EACH_VEC_ELT (bitmap, partitions, i, partition)
BITMAP_FREE (partition); BITMAP_FREE (partition);
VEC_free (int, heap, other_stores); VEC_free (int, heap, other_stores);
@ -1143,7 +1143,7 @@ distribute_loop (struct loop *loop, VEC (gimple, heap) *stmts)
if (dump_file && (dump_flags & TDF_DETAILS)) if (dump_file && (dump_flags & TDF_DETAILS))
dump_rdg (dump_file, rdg); dump_rdg (dump_file, rdg);
for (i = 0; VEC_iterate (gimple, stmts, i, s); i++) FOR_EACH_VEC_ELT (gimple, stmts, i, s)
{ {
int v = rdg_vertex_for_stmt (rdg, s); int v = rdg_vertex_for_stmt (rdg, s);

View File

@ -99,7 +99,7 @@ gather_interchange_stats (VEC (ddr_p, heap) *dependence_relations ATTRIBUTE_UNUS
*nb_deps_not_carried_by_loop = 0; *nb_deps_not_carried_by_loop = 0;
*access_strides = double_int_zero; *access_strides = double_int_zero;
for (i = 0; VEC_iterate (ddr_p, dependence_relations, i, ddr); i++) FOR_EACH_VEC_ELT (ddr_p, dependence_relations, i, ddr)
{ {
/* If we don't know anything about this dependence, or the distance /* If we don't know anything about this dependence, or the distance
vector is NULL, or there is no dependence, then there is no reuse of vector is NULL, or there is no dependence, then there is no reuse of
@ -125,7 +125,7 @@ gather_interchange_stats (VEC (ddr_p, heap) *dependence_relations ATTRIBUTE_UNUS
} }
/* Compute the access strides. */ /* Compute the access strides. */
for (i = 0; VEC_iterate (data_reference_p, datarefs, i, dr); i++) FOR_EACH_VEC_ELT (data_reference_p, datarefs, i, dr)
{ {
unsigned int it; unsigned int it;
tree ref = DR_REF (dr); tree ref = DR_REF (dr);
@ -414,7 +414,7 @@ linear_transform_loops (void)
VEC_free (loop_p, heap, nest); VEC_free (loop_p, heap, nest);
} }
for (i = 0; VEC_iterate (gimple, remove_ivs, i, oldiv_stmt); i++) FOR_EACH_VEC_ELT (gimple, remove_ivs, i, oldiv_stmt)
remove_iv (oldiv_stmt); remove_iv (oldiv_stmt);
VEC_free (tree, heap, oldivs); VEC_free (tree, heap, oldivs);

Some files were not shown because too many files have changed in this diff Show More