This is the mail archive of the gcc@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]

Re: [autovect][PATCH]: Re: Simple loops not interchanged?





> i'd like to
> apply this to the autovect branch (Feel free to use
> evolution_function_is_invariant_p in the tests in the vectorizer. It
> should let you catch some more loops than the simple constant test, if
> you can transform them properly)

sure. thanks,

dorit




                                                                                                                                     
                      Daniel Berlin                                                                                                  
                      <dberlin@dberlin.        To:       Richard Guenther <rguenth@tat.physik.uni-tuebingen.de>, Sebastian Pop       
                      org>                      <sebastian.pop@cri.ensmp.fr>, Dorit Naishlos/Haifa/IBM@IBMIL                         
                      Sent by:                 cc:       gcc@gcc.gnu.org                                                             
                      gcc-owner@gcc.gnu        Subject:  [autovect][PATCH]: Re: Simple loops not interchanged?                       
                      .org                                                                                                           
                                                                                                                                     
                                                                                                                                     
                      12/12/2004 05:58                                                                                               
                                                                                                                                     





I've attached a patch that lets us interchange this.
It does two things:

1. It lets the chrec code consider variables invariant in the loop that
matches the chrec variable (loop number) as constant for purposes for the
chrec.

2. It informs the data dependence tester that chrecs that are equal
(ie the same chrec) overlap on every iteration.

This is enough to get this loop to interchange.

Sebastian, unless you have a problem with this, then Dorit, i'd like to
apply this to the autovect branch (Feel free to use
evolution_function_is_invariant_p in the tests in the vectorizer. It
should let you catch some more loops than the simple constant test, if
you can transform them properly)

It includes Richard's testcase in order to make sure we don't regress here
later on.

:)




#### dataref.diff has been removed from this note on December 12, 2004 by
Dorit Naishlos


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