From: "H.J. Lu" <hjl.tools@gmail.com>
To: Michael Matz <matz@suse.de>
Cc: gcc-patches@gcc.gnu.org, Ira Rosen <IRAR@il.ibm.com>
Subject: Re: Fix PR43432, vectorize backwards stepping loads
Date: Sat, 18 Sep 2010 16:59:00 -0000 [thread overview]
Message-ID: <AANLkTi=jMLfywDVZYYUOG=qFRQ9xwH1rpL5HtgQ46Xfv@mail.gmail.com> (raw)
In-Reply-To: <AANLkTinYWMVDkWEX=TxzhOW-eO+KJ8bFvzxkiTY1GoyR@mail.gmail.com>
On Fri, Sep 17, 2010 at 9:00 AM, H.J. Lu <hjl.tools@gmail.com> wrote:
> On Thu, Sep 9, 2010 at 7:30 AM, Michael Matz <matz@suse.de> wrote:
>> Hi,
>>
>> On Wed, 8 Sep 2010, Ira Rosen wrote:
>>
>>> > Regstrapped on x86_64-linux. I've had to add x86_64-*-* to
>>> > target-supports.exp/vect_perm recognition which in turn makes
>>> > vect/slp-perm-8.c and vect/slp-perm-9.c fail then. That's most probably
>>> > because while x86_64 supports permutation for 4 and 8-sized elements it
>>> > doesn't do so for char (slp-perm-8.c) or short (slp-perm-9.c). I'm going
>>> > to investigate this but seek feedback on the patch itself already now.
>>> >
>>>
>>> Looks good to me.
>>
>> Okay, so here's the complete patch. Functionality is unchanged, but I
>> extended the testsuite to have vect_perm_byte and vect_perm_short
>> predicates (using them in slp-perm-8.c and slp-perm-9.c), so that I can
>> enable vect_perm on x86_64. With this one I get no regressions on
>> x86_64-linux (all default languages). Okay for trunk?
>>
>>
>> Ciao,
>> Michael.
>> --
>> PR tree-optimization/43432
>> * tree-vect-data-refs.c (vect_analyze_data_ref_access):
>> Accept backwards consecutive accesses.
>> (vect_create_data_ref_ptr): If step is negative generate
>> decreasing IVs.
>> * tree-vect-stmts.c (vectorizable_store): Reject negative steps.
>> (perm_mask_for_reverse, reverse_vec_elements): New functions.
>> (vectorizable_load): Handle loads with negative steps when easily
>> possible.
>>
>> testsuite/
>> PR tree-optimization/43432
>> * lib/target-supports.exp (check_effective_target_vect_perm_byte,
>> check_effective_target_vect_perm_short): New predicates.
>> (check_effective_target_vect_perm): Include x86_64.
>> * gcc.dg/vect/pr43432.c: New test.
>> * gcc.dg/vect/vect-114.c: Adjust.
>> * gcc.dg/vect/vect-15.c: Ditto.
>> * gcc.dg/vect/slp-perm-8.c: Use new predicate.
>> * gcc.dg/vect/slp-perm-9.c: Ditto.
>>
>
> This may have caused:
>
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45706
>
This also caused:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45720
--
H.J.
next prev parent reply other threads:[~2010-09-18 15:57 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-09-07 13:11 Michael Matz
2010-09-08 7:51 ` Ira Rosen
2010-09-09 15:01 ` Michael Matz
2010-09-09 15:08 ` Paolo Carlini
2010-09-09 15:22 ` Michael Matz
2010-09-09 16:39 ` Paolo Carlini
2010-09-12 11:23 ` Ira Rosen
2010-09-17 16:55 ` H.J. Lu
2010-09-18 16:59 ` H.J. Lu [this message]
2010-09-24 15:31 ` H.J. Lu
2010-09-24 17:58 ` Ira Rosen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='AANLkTi=jMLfywDVZYYUOG=qFRQ9xwH1rpL5HtgQ46Xfv@mail.gmail.com' \
--to=hjl.tools@gmail.com \
--cc=IRAR@il.ibm.com \
--cc=gcc-patches@gcc.gnu.org \
--cc=matz@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).