Home | History | Annotate | Download | only in gcc

Lines Matching refs:prolog

1683    Generate the number of iterations which should be peeled as prolog for the
1703 and SLP), the number of iterations of the prolog must be divided by the step
1742 /* We only do prolog peeling if the target alignment is known at compile
1771 "niters for prolog loop: %T\n", iters);
1925 of prolog loop. If it's integer const, the integer number is also passed
1927 number of iterations of the prolog loop. BOUND_EPILOG is the corresponding
2525 This function peels prolog and epilog from the loop, adds guards skipping
2526 PROLOG and EPILOG for various conditions. As a result, the changed CFG
2538 PROLOG:
2570 Note this function peels prolog and epilog only if it's necessary,
2608 /* We currently do not support prolog peeling if the target alignment is not
2677 class loop *prolog, *epilog = NULL;
2727 /* Generate the number of iterations for the prolog loop. We do this here
2779 /* Prolog loop may be skipped. */
2788 this we use the upper bounds on the prolog and epilog peeling. When we
2812 /* Due to the order in which we peel prolog and epilog, we first
2814 avoid adjusting probabilities of both prolog and vector loops
2842 /* Peel prolog and put it on preheader edge of loop. */
2843 prolog = slpeel_tree_duplicate_loop_to_edge_cfg (loop, scalar_loop, e);
2844 if (!prolog)
2850 prolog->force_vectorize = false;
2851 slpeel_update_phi_nodes_for_loops (loop_vinfo, prolog, loop, true);
2852 first_loop = prolog;
2855 /* Update the number of iterations for prolog loop. */
2857 vect_set_loop_condition (prolog, NULL, niters_prolog,
2860 /* Skip the prolog loop. */
2865 guard_bb = loop_preheader_edge (prolog)->src;
2874 slpeel_update_phi_nodes_for_guard1 (prolog, loop, guard_e, e);
2877 scale_loop_profile (prolog, prob_prolog, bound_prolog);
2897 /* Prolog iterates at most bound_prolog times, latch iterates at
2899 record_niter_bound (prolog, bound_prolog - 1, false, true);