Lines Matching refs:loop
156 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()
479 doloop_optimize (struct loop *loop) in doloop_optimize() argument
494 fprintf (dump_file, "Doloop: Processing loop %d.\n", loop->num); in doloop_optimize()
496 iv_analysis_loop_init (loop); in doloop_optimize()
499 desc = get_simple_loop_desc (loop); in doloop_optimize()
502 if (!doloop_valid_p (loop, desc)) in doloop_optimize()
517 if (loop->header->count) in doloop_optimize()
518 est_niter = expected_loop_iterations (loop); in doloop_optimize()
542 level = get_loop_level (loop) + 1; in doloop_optimize()
612 doloop_modify (loop, desc, doloop_seq, condition, count); in doloop_optimize()
622 struct loop *loop; in doloop_optimize_loops() local
626 loop = loops->parray[i]; in doloop_optimize_loops()
627 if (!loop) in doloop_optimize_loops()
630 doloop_optimize (loop); in doloop_optimize_loops()