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] |
This patch adds support to 1) vectorize conditional expressions (using vec_cond_optab). 2) It also adds support to check dependence distance wrt vectorization factor. This work was presented in two different patches in sept. (along with 4 other patches but these two missed GCC 4.0 train.). This patches are used in autovect-branch and apple-ppc-branch since last 6 months.
I found one of these, I think,
http://gcc.gnu.org/ml/gcc-patches/2004-09/msg02889.html
but not the other, and even the one basically has no commentary on what you're trying to do.
Yes, this message is the last in this thread. The basic idea is simple.
If dependence distance is more than vectorization factor then it
does not prevent vectorization. If dependence distance is zero then
also it does not hurt vectorization.
Another is at
http://gcc.gnu.org/ml/gcc-patches/2004-09/msg01768.html
and it has some info and pointers to other messages. I included dependence vector patch together because now it is very small thanks to other changes in vectorizer.
I definitely want them split back into separate patches.
Here is the patch for distance vector only. I will CC you when I send separate patch for vector conditions.
* tree-data-ref.c (build_classic_dist_vector, compute_subscript_distance): Make externally visible. * tree-data-ref.h (build_classic_dist_vector, compute_subscript_distance): Same. * tree-vect-analyze.c (vect_analyze_data_ref_dependence): Check distance vector against vectorization factor. (vect_analyze_loop): Determine vectorizaion factor before analyzing data dependences. * tree-vectorizer.c (loops_num): Make it externally visible and rename ... * tree-vectorizer.c (vect_loops_num): ... new name. * tree-vectorizer.h (vect_loops_num): New.
* gcc.dg/vect/vect-dv-1.c: New test. * gcc.dg/vect/vect-dv-2.c: New test.
- Devang
Attachment:
av-distance-vect.diff
Description: Binary data
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |