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: Testsuite patch for gcc.dg/vect/no-vfa-vect-43.c on IA64


On Tue, Apr 21, 2009 at 6:56 PM, Steve Ellcey <sje@cup.hp.com> wrote:
> The alias improvement branch, r145494, is causing a failure of
> gcc.dg/vect/no-vfa-vect-43.c on IA64 HP-UX and Linux. ?Looking at the
> test changes done with the alias improvement checkin, the number of
> expected vectorized loops was increased from 1 to 2 for this test but
> the number of loops that are versioned for alignment requirements was
> left at 1 and should now be 2. ?This patch changes the number of expected
> versionings to 2 and allows the test to pass on IA64 HP-UX and Linux.
>
> It might look like we should only have to version the loop in main2 and
> not the one in main1 because the input arrays in main1 have aligned
> attributes on them. ?But the output array in main1 does not have an
> alignment attribute and GCC doesn't seem to allow alignment attributes
> on function arguments so there should be 2 versionings.
>
> Tested on IA64 HP-UX and Linux, OK for checkin?

Hmm.  But that will now FAIL on for example x86_64 where the alignment
is probably ensured by peeling(?).  I suggest to instead do

/*  { dg-final { scan-tree-dump-times "Alignment of access forced
using versioning" 1 "vect" { target vect_no_align } { xfail ia64-*-* }
 } } */
/*  { dg-final { scan-tree-dump-times "Alignment of access forced
using versioning" 2 "vect" { target ia64-*-* } } } */

Thanks,
Richard.

> Steve Ellcey
> sje@cup.hp.com
>
>
> 2009-04-21 ?Steve Ellcey ?<sje@cup.hp.com>
>
> ? ? ? ?PR testsuite/39623
> ? ? ? ?* gcc.dg/vect/no-vfa-vect-43.c Fix vect_no_align check.
>
>
>
> Index: gcc.dg/vect/no-vfa-vect-43.c
> ===================================================================
> --- gcc.dg/vect/no-vfa-vect-43.c ? ? ? ?(revision 146528)
> +++ gcc.dg/vect/no-vfa-vect-43.c ? ? ? ?(working copy)
> @@ -76,5 +76,5 @@ int main (void)
> ?}
>
> ?/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 2 "vect" } } */
> -/* ?{ dg-final { scan-tree-dump-times "Alignment of access forced using versioning" 1 "vect" { target vect_no_align } } } */
> +/* ?{ dg-final { scan-tree-dump-times "Alignment of access forced using versioning" 2 "vect" { target vect_no_align } } } */
> ?/* { dg-final { cleanup-tree-dump "vect" } } */
>


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