This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[patch] pr18181 fix: part2





Cleanup towards pr18181 fix (part 2):

Cleanup loop-bound analysis functions:
Some functions were removed, and parts of their functionality moved to
other functions. More specifically - the loop-ivs-check was moved out of
'vect_analyze_loop_with_symbolic_num_of_iters' because it should be done
also when the loop bound is known and doesn't divide by the vectorization
factor (not only for the unknown loop bound case). The loop-ivs-check was
therefore moved into a new function - 'vect_can_advance_ivs', and is now
called from 'vect_analyze_operations' for both known and unknown
loop-bound.  The little that was left of
'vect_analyze_loop_with_symbolic_num_of_iters' was moved to
'vect_analyze_loop_form' and the function was removed.

ok?

Changelog:

        * tree-vectorizer.c (slpeel_can_duplicate_loop_p): New name for
function
        previously called verify_loop_for_duplication. All conditions
compacted
        into one compound condition. Removed debug dumps.
        (vect_analyze_loop_with_symbolic_num_of_iters): Removed. Some of
the
        functionality moved to vect_can_advance_ivs_p, and some to
        vect_analyze_loop_form.
        (vect_can_advance_ivs_p): New function. Contains functionality that
was
        taken out of vect_analyze_loop_with_symbolic_num_of_iters.
        (slpeel_tree_peel_loop_to_edge): Call slpeel_can_duplicate_loop_p.
        (vect_analyze_operations): Call vect_can_advance_ivs_p and
        slpeel_can_duplicate_loop_p.
        (vect_get_loop_niters): Added documentation.
        (vect_analyze_loop_form): Check the loop entry always - not only in
case
        of unknown loop bound. Create preheader and exit bb if necessary.
Apply
        a check that used to take place in
        vect_analyze_loop_with_symbolic_num_of_iters.
        (vectorize_loops): Call verify_loop_closed_ssa under
ENABLE_CHECKING.
        Remove redundant call to rewrite_into_loop_closed_ssa.
        (vect_compute_data_refs_alignment): Removed obsolete comment.

Patch:

(See attached file: pr18181.part2)

Attachment: pr18181.part2
Description: Binary data


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]