This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH][RFC] Do some vectorizer-friendly canonicalization before vectorization
- From: Richard Guenther <rguenther at suse dot de>
- To: Dorit Nuzman <DORIT at il dot ibm dot com>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Fri, 24 Nov 2006 11:00:38 +0100 (CET)
- Subject: Re: [PATCH][RFC] Do some vectorizer-friendly canonicalization before vectorization
- References: <OFA15B7446.58F9793E-ONC225722F.006A4B9C-C225722F.007689F3@il.ibm.com>
On Thu, 23 Nov 2006, Dorit Nuzman wrote:
> Richard Guenther <email@example.com> wrote on 23/11/2006 16:50:34:
> > On Thu, 23 Nov 2006, Richard Guenther wrote:
> > > On Thu, 23 Nov 2006, Dorit Nuzman wrote:
> > >
> > > > Richard Guenther <firstname.lastname@example.org> wrote on 23/11/2006 12:39:40:
> > > >
> > > > > The following passes for me on x86_64-unknown-linux-gnu. Can you
> > > > > it works on ppc?
> > > > >
> > > Ok, so consider the pow (x, 0.5) pattern matching removed until the
> > > function vectorizing is approved (where we then can check for support).
> > Or try this one - it adds this capability.
> We're almost there... we now get:
> FAIL: gcc.dg/vect/no-math-errno-vect-pow-2.c scan-tree-dump pattern
> because, like I wrote in a previous note, the "pattern recognized" printout
> comes after the target-support check. So on targets like ppc that don't
> support the pattern - we'd fail the test. So, we can either (1) add a
> printout before the target-support check ("pattern detected", like in the
> other vect_recog_X_pattern functions - see the pseudo patch I proposed a
> few emails ago), or (2) add a target keyword and enable this check only for
> the targets that support it, or (3) both.
Ah right - I forgot about that.
> (by the way - do you know why we have that cast from float to double? I'm
> thinking - if this test actually requires support for doubles, we might as
> well go back and enable this test for vect_double targets only? Anyhow,
> while this would work around the ppc failure above, it won't solve the
> above failure for x86, for which we also don't reach the "pattern
I think the cast may be because powf is C99 or the ppc target you are
testing doesn't have it at all? Does it work for you if you enable