This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH, PR52252] Alternative way of vectorization for load groups of size 2 and 3.
- From: Evgeny Stupachenko <evstupac at gmail dot com>
- To: Richard Biener <rguenther at suse dot de>, Uros Bizjak <ubizjak at gmail dot com>, GCC Patches <gcc-patches at gcc dot gnu dot org>, Jakub Jelinek <jakub at redhat dot com>
- Date: Thu, 5 Jun 2014 13:48:38 +0400
- Subject: Re: [PATCH, PR52252] Alternative way of vectorization for load groups of size 2 and 3.
- Authentication-results: sourceware.org; auth=none
- References: <CAOvf_xz4y6u9-YZCdTM8j3Awm7pdARvyb-58=obT+U9Tkt0HNg at mail dot gmail dot com>
make check passed: no new fails.
On Wed, May 28, 2014 at 5:09 PM, Evgeny Stupachenko <evstupac@gmail.com> wrote:
> Hi,
>
> The patch introduces alternative way of permutations for load groups
> of size 2 and 3 which should be faster on architectures with low
> parallelism.
> The patch gives 2 times gain on Silvermont to the test from PR52252
> (in addition to already committed 3 times gain).
>
> Patch passes bootstrap on x86. Make check is in progress.
>
> ChangeLog:
>
> 2014-05-28 Evgeny Stupachenko <evstupac@gmail.com>
>
> * config/i386/i386.c (ix86_have_vector_parallel_execution): New.
> (TARGET_VECTORIZE_HAVE_VECTOR_PARALLEL_EXECUTION): New.
> * config/i386/i386.h (TARGET_VECTOR_PARALLEL_EXECUTION): New.
> * config/i386/x86-tune.def (X86_TUNE_VECTOR_PARALLEL_EXECUTION): New.
> * target.def (have_vector_parallel_execution): New.
> * doc/tm.texi.in (have_vector_parallel_execution)): New.
> * doc/tm.texi: Regenerate.
> * targhooks.c (default_have_vector_parallel_execution): New.
> * tree-vect-data-refs.c (vect_shift_permute_load_chain): New.
> Introduces alternative way of loads group permutaions.
> (vect_transform_grouped_load): Try alternative way of permutaions.
>
> Evgeny