This is the mail archive of the 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: part3

Cleanup towards pr18181 fix (part 3):

Cleanup loop-bound transformation functions:
Some functions were removed, and parts of their functionality moved to
other functions. More specifically:
1. Code to change the loop exit condition was duplicated in both
'vect_transform_loop_bound' and 'slpeel_make_loop_iterate_ntimes'. Avoid
this code duplication.
2. The 2-lines-of-code function 'vect_update_niters_after_peeling', that
was called from one location only, was removed. Its code was moved to its
single call site.
3. 'vect_transform_for_unknown_loop_bound' renamed to
'vect_do_peeling_for_loop_bound', and its 2 call sites unified to a single
call site.



        * tree-vectorizer.c (slpeel_make_loop_iterate_ntimes): Last two
        arguments removed.
        (slpeel_tree_peel_loop_to_edge): Call
        without last two arguments. Update single_exit of loops.
        (vect_update_niters_after_peeling): Removed. Its functionality was
        moved to vect_do_peeling_for_alignment.
        (vect_do_peeling_for_loop_bound): New name for function previously
        called vect_transform_for_unknown_loop_bound.
        (vect_transform_loop_bound): Call slpeel_make_loop_iterate_ntimes
        instead of code that duplicates the same functionality.
        (vect_do_peeling_for_alignment): Functionality of
        vect_update_niters_after_peeling moved here.
        (vect_transform_loop): Unify call to vect_do_peeling_for_loop_bound
        previously named vect_transform_for_unknown_loop_bound - for both
        and unknown loop bound cases.


(See attached file: pr18181.part3)

Attachment: pr18181.part3
Description: Binary data

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