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]

Re: [patch] (4.1 stage 2 projects): vectorize reduction, part 2/n





> This patch implements detection and vectorization of reduction.
>
...
>
> (1) In http://gcc.gnu.org/ml/gcc-patches/2005-02/msg01407.html we drafted
> additional ways to support the reduction epilog code. The plan is to
> implement:
>       if (support direct-reduction)
>         generate option 2
>       else if (support whole-vector-shift)
>         generate option 3
>       else
>         generate option 4 (scalar computation)
> This patch implements option 2. We also want to implement options 3,4.
>

This part was just added to autovect:
http://gcc.gnu.org/ml/gcc-patches/2005-06/msg01317.html
I intend to submit a patch along these lines for mainline too. I would much
appreciate a review of that patch - mostly the suggested new vector_shift
optab/tree-code, before I prepare it for mainline.

By the way, with that patch we won't need the target keywork vect_reduction
for the testcases:

> * lib/target-supports.exp (check_effective_target_vect_reduction): New.
> * gcc.dg/vect/vect-reduc-1.c: Now vectorizable for vect_reduction
targets.
> * gcc.dg/vect/vect-reduc-2.c: Likewise.

cause it allows vectorization of reduction without specialized target
support.

thanks,

dorit


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