Home
last modified time | relevance | path

Searched refs:loop (Results 1 – 25 of 751) sorted by relevance

12345678910>>...31

/trueos/contrib/gcc/
HDcfgloop.c44 static int flow_loop_level_compute (struct loop *);
46 static void establish_preds (struct loop *);
96 flow_loop_nested_p (const struct loop *outer, const struct loop *loop) in flow_loop_nested_p() argument
98 return (loop->depth > outer->depth in flow_loop_nested_p()
99 && loop->pred[outer->depth] == outer); in flow_loop_nested_p()
105 struct loop *
106 superloop_at_depth (struct loop *loop, unsigned depth) in superloop_at_depth() argument
108 gcc_assert (depth <= (unsigned) loop->depth); in superloop_at_depth()
110 if (depth == (unsigned) loop->depth) in superloop_at_depth()
111 return loop; in superloop_at_depth()
[all …]
HDcfgloop.h59 struct loop struct
86 struct loop **pred; argument
93 struct loop *outer; argument
96 struct loop *inner; argument
99 struct loop *next; argument
102 struct loop *copy; argument
157 struct loop **parray;
160 struct loop *tree_root;
185 void (*)(const struct loop *, FILE *, int), int);
186 extern void flow_loop_dump (const struct loop *, FILE *,
[all …]
HDcfgloopmanip.c34 static void duplicate_subloops (struct loops *, struct loop *, struct loop *);
35 static void copy_loops_to (struct loops *, struct loop **, int,
36 struct loop *);
43 static void add_loop (struct loops *, struct loop *);
44 static void fix_loop_placements (struct loops *, struct loop *, bool *);
47 static void place_new_loop (struct loops *, struct loop *);
48 static void scale_loop_frequencies (struct loop *, int, int);
49 static basic_block create_preheader (struct loop *, int);
50 static void unloop (struct loops *, struct loop *, bool *);
104 struct loop *loop = loops->tree_root, *act; in fix_bb_placement() local
[all …]
HDtree-ssa-loop-ivcanon.c73 create_canonical_iv (struct loop *loop, edge exit, tree niter) in create_canonical_iv() argument
82 fprintf (dump_file, "Added canonical iv to loop %d, ", loop->num); in create_canonical_iv()
104 NULL_TREE, loop, in create_canonical_iv()
117 tree_num_loop_insns (struct loop *loop) in tree_num_loop_insns() argument
119 basic_block *body = get_loop_body (loop); in tree_num_loop_insns()
123 for (i = 0; i < loop->num_nodes; i++) in tree_num_loop_insns()
163 struct loop *loop, in try_unroll_loop_completely() argument
170 if (loop->inner) in try_unroll_loop_completely()
186 ninsns = tree_num_loop_insns (loop); in try_unroll_loop_completely()
206 fprintf (dump_file, "Not unrolling loop %d:\n", loop->num); in try_unroll_loop_completely()
[all …]
HDtree-if-conv.c106 static tree tree_if_convert_stmt (struct loop *loop, tree, tree,
108 static void tree_if_convert_cond_expr (struct loop *, tree, tree,
110 static bool if_convertible_phi_p (struct loop *, basic_block, tree);
111 static bool if_convertible_modify_expr_p (struct loop *, basic_block, tree);
112 static bool if_convertible_stmt_p (struct loop *, basic_block, tree);
113 static bool if_convertible_bb_p (struct loop *, basic_block, basic_block);
114 static bool if_convertible_loop_p (struct loop *, bool);
116 static tree add_to_dst_predicate_list (struct loop * loop, edge,
119 static void clean_predicate_lists (struct loop *loop);
120 static basic_block find_phi_replacement_condition (struct loop *loop,
[all …]
HDloop-unroll.c119 static void decide_peel_simple (struct loop *, int);
120 static void decide_peel_once_rolling (struct loop *, int);
121 static void decide_peel_completely (struct loop *, int);
122 static void decide_unroll_stupid (struct loop *, int);
123 static void decide_unroll_constant_iterations (struct loop *, int);
124 static void decide_unroll_runtime_iterations (struct loop *, int);
125 static void peel_loop_simple (struct loops *, struct loop *);
126 static void peel_loop_completely (struct loops *, struct loop *);
127 static void unroll_loop_stupid (struct loops *, struct loop *);
128 static void unroll_loop_constant_iterations (struct loops *, struct loop *);
[all …]
HDtree-ssa-loop-unswitch.c76 static struct loop *tree_unswitch_loop (struct loops *, struct loop *, basic_block,
78 static bool tree_unswitch_single_loop (struct loops *, struct loop *, int);
79 static tree tree_may_unswitch_on (basic_block, struct loop *);
87 struct loop *loop; in tree_ssa_unswitch_loops() local
96 loop = loops->parray[i]; in tree_ssa_unswitch_loops()
97 if (!loop) in tree_ssa_unswitch_loops()
100 if (loop->inner) in tree_ssa_unswitch_loops()
103 changed |= tree_unswitch_single_loop (loops, loop, 0); in tree_ssa_unswitch_loops()
115 tree_may_unswitch_on (basic_block bb, struct loop *loop) in tree_may_unswitch_on() argument
132 && flow_bb_inside_loop_p (loop, def_bb)) in tree_may_unswitch_on()
[all …]
HDtree-ssa-loop-im.c78 struct loop *max_loop; /* The outermost loop in that the statement
81 struct loop *tgt_loop; /* The loop out of that we want to move the
84 struct loop *always_executed_in;
141 #define ALWAYS_EXECUTED_IN(BB) ((struct loop *) (BB)->aux)
300 static struct loop *
301 outermost_invariant_loop (tree def, struct loop *loop) in outermost_invariant_loop() argument
305 struct loop *max_loop; in outermost_invariant_loop()
308 return superloop_at_depth (loop, 1); in outermost_invariant_loop()
313 return superloop_at_depth (loop, 1); in outermost_invariant_loop()
315 max_loop = find_common_loop (loop, def_bb->loop_father); in outermost_invariant_loop()
[all …]
HDtree-scalar-evolution.c256 static tree analyze_scalar_evolution_1 (struct loop *, tree, tree);
257 static tree resolve_mixers (struct loop *, tree);
377 struct loop *def_loop = loop_containing_stmt (def); in chrec_contains_symbols_defined_in_loop()
378 struct loop *loop = current_loops->parray[loop_nb]; in chrec_contains_symbols_defined_in_loop() local
383 if (loop == def_loop || flow_loop_nested_p (loop, def_loop)) in chrec_contains_symbols_defined_in_loop()
459 compute_overall_effect_of_inner_loop (struct loop *loop, tree evolution_fn) in compute_overall_effect_of_inner_loop() argument
468 if (CHREC_VARIABLE (evolution_fn) >= (unsigned) loop->num) in compute_overall_effect_of_inner_loop()
470 struct loop *inner_loop = in compute_overall_effect_of_inner_loop()
491 return compute_overall_effect_of_inner_loop (loop, res); in compute_overall_effect_of_inner_loop()
499 else if (no_evolution_in_loop_p (evolution_fn, loop->num, &val) && val) in compute_overall_effect_of_inner_loop()
[all …]
HDtree-vectorizer.c152 static struct loop *slpeel_tree_duplicate_loop_to_edge_cfg
153 (struct loop *, struct loops *, edge);
155 (struct loop *, struct loop *, bool after);
157 (edge, struct loop *, bool, basic_block *, bitmap *);
159 (edge, struct loop *, bool, basic_block *);
164 static void rename_variables_in_loop (struct loop *);
228 struct loop *loop = bb->loop_father; in rename_variables_in_bb() local
240 if (!flow_bb_inside_loop_p (loop, e->dest)) in rename_variables_in_bb()
251 rename_variables_in_loop (struct loop *loop) in rename_variables_in_loop() argument
256 bbs = get_loop_body (loop); in rename_variables_in_loop()
[all …]
HDloop-unswitch.c82 static struct loop *unswitch_loop (struct loops *, struct loop *,
84 static void unswitch_single_loop (struct loops *, struct loop *, rtx, int);
85 static rtx may_unswitch_on (basic_block, struct loop *, rtx *);
143 struct loop *loop; in unswitch_loops() local
151 loop = loops->parray[i]; in unswitch_loops()
152 if (!loop) in unswitch_loops()
155 if (loop->inner) in unswitch_loops()
158 unswitch_single_loop (loops, loop, NULL_RTX, 0); in unswitch_loops()
173 may_unswitch_on (basic_block bb, struct loop *loop, rtx *cinsn) in may_unswitch_on() argument
187 if (!flow_bb_inside_loop_p (loop, EDGE_SUCC (bb, 0)->dest) in may_unswitch_on()
[all …]
HDtree-ssa-loop-ch.c51 should_duplicate_loop_header_p (basic_block header, struct loop *loop, in should_duplicate_loop_header_p() argument
65 if (flow_bb_inside_loop_p (loop, EDGE_SUCC (header, 0)->dest) in should_duplicate_loop_header_p()
66 && flow_bb_inside_loop_p (loop, EDGE_SUCC (header, 1)->dest)) in should_duplicate_loop_header_p()
71 if (header != loop->header && !single_pred_p (header)) in should_duplicate_loop_header_p()
101 do_while_loop_p (struct loop *loop) in do_while_loop_p() argument
103 tree stmt = last_stmt (loop->latch); in do_while_loop_p()
111 stmt = last_and_only_stmt (loop->header); in do_while_loop_p()
128 struct loop *loop; in copy_loop_headers() local
153 loop = loops->parray[i]; in copy_loop_headers()
154 if (!loop) in copy_loop_headers()
[all …]
HDtree-ssa-loop-niter.c907 simplify_using_initial_conditions (struct loop *loop, tree expr, in simplify_using_initial_conditions() argument
921 for (bb = loop->header; in simplify_using_initial_conditions()
955 simplify_using_outer_evolutions (struct loop *loop, tree expr) in simplify_using_outer_evolutions() argument
970 e0 = simplify_using_outer_evolutions (loop, TREE_OPERAND (expr, 0)); in simplify_using_outer_evolutions()
974 e1 = simplify_using_outer_evolutions (loop, TREE_OPERAND (expr, 1)); in simplify_using_outer_evolutions()
980 e2 = simplify_using_outer_evolutions (loop, TREE_OPERAND (expr, 2)); in simplify_using_outer_evolutions()
998 e = instantiate_parameters (loop, expr); in simplify_using_outer_evolutions()
1008 loop_only_exit_p (struct loop *loop, edge exit) in loop_only_exit_p() argument
1015 if (exit != loop->single_exit) in loop_only_exit_p()
1018 body = get_loop_body (loop); in loop_only_exit_p()
[all …]
HDtree-ssa-loop-manip.c51 create_iv (tree base, tree step, tree var, struct loop *loop, in create_iv() argument
58 edge pe = loop_preheader_edge (loop); in create_iv()
118 stmt = create_phi_node (vb, loop->header); in create_iv()
120 add_phi_arg (stmt, initial, loop_preheader_edge (loop)); in create_iv()
121 add_phi_arg (stmt, va, loop_latch_edge (loop)); in create_iv()
131 struct loop *def_loop; in add_exit_phis_edge()
230 struct loop *def_loop; in find_uses_to_rename_use()
482 struct loop *loop_c; in bsi_insert_on_edge_immediate_loop()
505 ip_end_pos (struct loop *loop) in ip_end_pos() argument
507 return loop->latch; in ip_end_pos()
[all …]
HDloop-invariant.c61 struct loop *outermost_exit; /* The outermost exit of the loop. */
509 compute_always_reached (struct loop *loop, basic_block *body, in compute_always_reached() argument
514 for (i = 0; i < loop->num_nodes; i++) in compute_always_reached()
516 if (dominated_by_p (CDI_DOMINATORS, loop->latch, body[i])) in compute_always_reached()
529 find_exits (struct loop *loop, basic_block *body, in find_exits() argument
535 struct loop *outermost_exit = loop, *aexit; in find_exits()
539 for (i = 0; i < loop->num_nodes; i++) in find_exits()
541 if (body[i]->loop_father == loop) in find_exits()
556 if (flow_bb_inside_loop_p (loop, e->dest)) in find_exits()
579 if (aexit != loop) in find_exits()
[all …]
HDlambda-code.c119 struct loop *, VEC(tree,heap) *,
149 static tree find_induction_var_from_exit_cond (struct loop *);
150 static bool can_convert_to_perfect_nest (struct loop *);
298 print_lambda_loop (FILE * outfile, lambda_loop loop, int depth, in print_lambda_loop() argument
304 gcc_assert (loop); in print_lambda_loop()
306 expr = LL_LINEAR_OFFSET (loop); in print_lambda_loop()
307 step = LL_STEP (loop); in print_lambda_loop()
318 for (expr = LL_LOWER_BOUND (loop); expr != NULL; expr = LLE_NEXT (expr)) in print_lambda_loop()
321 for (expr = LL_UPPER_BOUND (loop); expr != NULL; expr = LLE_NEXT (expr)) in print_lambda_loop()
388 lambda_loop loop; in lambda_lattice_compute_base() local
[all …]
HDloop-doloop.c156 doloop_valid_p (struct loop *loop, struct niter_desc *desc) in doloop_valid_p() argument
158 basic_block *body = get_loop_body (loop), bb; in doloop_valid_p()
196 for (i = 0; i < loop->num_nodes; i++) in doloop_valid_p()
290 doloop_modify (struct loop *loop, struct niter_desc *desc, in doloop_modify() argument
368 emit_insn_after (sequence, BB_END (loop_preheader_edge (loop)->src)); in doloop_modify()
373 basic_block preheader = loop_preheader_edge (loop)->src; in doloop_modify()
375 = loop_split_edge_with (loop_preheader_edge (loop), NULL_RTX); in doloop_modify()
377 = loop_split_edge_with (loop_preheader_edge (loop), NULL_RTX); in doloop_modify()
436 unsigned level = get_loop_level (loop) + 1; in doloop_modify()
447 emit_insn_after (sequence, BB_END (loop_preheader_edge (loop)->src)); in doloop_modify()
[all …]
HDtree-ssa-loop-prefetch.c325 struct loop *loop; /* Loop of the reference. */ member
346 if (!simple_iv (ar_data->loop, ar_data->stmt, *index, &iv, false)) in idx_analyze_ref()
396 analyze_ref (struct loop *loop, tree *ref_p, tree *base, in analyze_ref() argument
425 ar_data.loop = loop; in analyze_ref()
436 gather_memory_references_ref (struct loop *loop, struct mem_ref_group **refs, in gather_memory_references_ref() argument
443 if (!analyze_ref (loop, &ref, &base, &step, &delta, stmt)) in gather_memory_references_ref()
455 gather_memory_references (struct loop *loop) in gather_memory_references() argument
457 basic_block *body = get_loop_body_in_dom_order (loop); in gather_memory_references()
466 for (i = 0; i < loop->num_nodes; i++) in gather_memory_references()
469 if (bb->loop_father != loop) in gather_memory_references()
[all …]
HDtree-vect-analyze.c44 static loop_vec_info vect_analyze_loop_form (struct loop *);
60 static tree vect_get_loop_niters (struct loop *, tree *);
98 struct loop *loop = LOOP_VINFO_LOOP (loop_vinfo); in vect_determine_vectorization_factor() local
100 int nbbs = loop->num_nodes; in vect_determine_vectorization_factor()
231 struct loop *loop = LOOP_VINFO_LOOP (loop_vinfo); in vect_analyze_operations() local
233 int nbbs = loop->num_nodes; in vect_analyze_operations()
401 if (!slpeel_can_duplicate_loop_p (loop, loop->single_exit)) in vect_analyze_operations()
502 struct loop *loop = LOOP_VINFO_LOOP (loop_vinfo); in vect_analyze_scalar_cycles() local
503 basic_block bb = loop->header; in vect_analyze_scalar_cycles()
536 access_fn = analyze_scalar_evolution (loop, def); in vect_analyze_scalar_cycles()
[all …]
HDcfgloopanal.c36 just_once_each_iteration_p (const struct loop *loop, basic_block bb) in just_once_each_iteration_p() argument
39 if (!dominated_by_p (CDI_DOMINATORS, loop->latch, bb)) in just_once_each_iteration_p()
43 if (bb->loop_father != loop) in just_once_each_iteration_p()
279 struct loop *cloop; in mark_irreducible_loops()
362 num_loop_insns (struct loop *loop) in num_loop_insns() argument
368 bbs = get_loop_body (loop); in num_loop_insns()
369 for (i = 0; i < loop->num_nodes; i++) in num_loop_insns()
384 average_num_loop_insns (struct loop *loop) in average_num_loop_insns() argument
391 bbs = get_loop_body (loop); in average_num_loop_insns()
392 for (i = 0; i < loop->num_nodes; i++) in average_num_loop_insns()
[all …]
/trueos/crypto/openssl/crypto/engine/
HDenginetest.c79 int loop; in display_engine_list() local
82 loop = 0; in display_engine_list()
86 loop++, ENGINE_get_id(h), ENGINE_get_name(h)); in display_engine_list()
103 int loop; in main() local
208 for (loop = 0; loop < 512; loop++) { in main()
209 sprintf(buf, "id%i", loop); in main()
211 sprintf(buf, "Fake engine type %i", loop); in main()
213 if (((block[loop] = ENGINE_new()) == NULL) || in main()
214 !ENGINE_set_id(block[loop], id) || in main()
215 !ENGINE_set_name(block[loop], name)) { in main()
[all …]
/trueos/usr.bin/sed/tests/
HDmath.sed34 # main loop, process operators ((), !, *, /, %, +, and -)
35 : loop
40 b loop
44 b loop
53 b loop
58 b loop
63 b loop
67 b loop
71 b loop
75 b loop
[all …]
/trueos/contrib/gcc/doc/
HDloop.texi16 RTL, as well as the interfaces to loop-related analyses (induction
25 * loop-iv:: Induction variables on RTL.
28 * Lambda:: Linear loop transformations framework.
39 At the moment, loop structures are analyzed and this information is
44 In general, a natural loop has one entry block (header) and possibly
46 the loop. Loops with several latches may appear if several loops share
47 a single header, or if there is a branching in the middle of the loop.
49 single latch. During loop analysis, headers of such loops are split and
52 the latches correspond to sub-loops or to control flow in a single loop.
57 Body of the loop is the set of blocks that are dominated by its header,
[all …]
/trueos/sys/arm/cavium/cns11xx/
HDecona_machdep.c167 int loop, i; in initarm() local
199 for (loop = 0; loop < NUM_KERNEL_PTS; ++loop) { in initarm()
200 if (!(loop % (PAGE_SIZE / L2_TABLE_SIZE_REAL))) { in initarm()
201 valloc_pages(kernel_pt_table[loop], in initarm()
204 kernel_pt_table[loop].pv_va = freemempos - in initarm()
205 (loop % (PAGE_SIZE / L2_TABLE_SIZE_REAL)) * in initarm()
207 kernel_pt_table[loop].pv_pa = in initarm()
208 kernel_pt_table[loop].pv_va - KERNVIRTADDR + in initarm()
268 for (loop = 0; loop < NUM_KERNEL_PTS; ++loop) { in initarm()
269 pmap_map_chunk(l1pagetable, kernel_pt_table[loop].pv_va, in initarm()
[all …]
/trueos/contrib/llvm/lib/Target/NVPTX/
HDNVPTXLowerAggrCopies.cpp55 IRBuilder<> loop(loopBB); in convertTransferToLoop() local
57 PHINode *ind = loop.CreatePHI(indType, 0); in convertTransferToLoop()
62 Value *val = loop.CreateLoad(loop.CreateGEP(srcAddr, ind), srcVolatile); in convertTransferToLoop()
64 loop.CreateStore(val, loop.CreateGEP(dstAddr, ind), dstVolatile); in convertTransferToLoop()
67 Value *newind = loop.CreateAdd(ind, ConstantInt::get(indType, 1)); in convertTransferToLoop()
70 loop.CreateCondBr(loop.CreateICmpULT(newind, len), loopBB, newBB); in convertTransferToLoop()
90 IRBuilder<> loop(loopBB); in convertMemSetToLoop() local
91 PHINode *ind = loop.CreatePHI(len->getType(), 0); in convertMemSetToLoop()
94 loop.CreateStore(val, loop.CreateGEP(dstAddr, ind), false); in convertMemSetToLoop()
96 Value *newind = loop.CreateAdd(ind, ConstantInt::get(len->getType(), 1)); in convertMemSetToLoop()
[all …]

12345678910>>...31