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] Fix up ivdep/do concurrent testcases (PR testsuite/59064)


On Fri, 17 Jan 2014, Jakub Jelinek wrote:

> Hi!
> 
> I believe the intent of these testcases was to verify the loops
> are vectorized and don't need versioning for alias, which is the only thing
> these constructs tell the compiler about.  On some architectures, it is
> possible the loops will need versioning for alignment (or peeling for
> alignment or just using unaligned loads and/or stores in the vectorized
> loop).
> 
> Fixed thusly, bootstrapped/regtested on x86_64-linux and i686-linux, ok for
> trunk?

Ok.

Thanks,
Richard.

> 2014-01-17  Jakub Jelinek  <jakub@redhat.com>
> 
> 	PR testsuite/59064
> 	* gcc.dg/vect/vect-ivdep-1.c: Replace two dg-bogus lines separately
> 	testing for " version" and " alias" with one testing for
> 	" version\[^\n\r]* alias".
> 	* gcc.dg/vect/vect-ivdep-2.c: Likewise.
> 	* gfortran.dg/vect/vect-do-concurrent-1.f90: Likewise.
> 	* g++.dg/vect/pr33426-ivdep.cc: Likewise.
> 	* g++.dg/vect/pr33426-ivdep-2.cc: Likewise.
> 	* g++.dg/vect/pr33426-ivdep-3.cc: Likewise.
> 	* g++.dg/vect/pr33426-ivdep-4.cc: Adjust comments similarly.
> 
> --- gcc/testsuite/gcc.dg/vect/vect-ivdep-1.c.jj	2013-11-12 11:31:19.000000000 +0100
> +++ gcc/testsuite/gcc.dg/vect/vect-ivdep-1.c	2014-01-17 08:38:37.919749235 +0100
> @@ -14,6 +14,5 @@ void foo(int n, int *a, int *b, int *c,
>  }
>  
>  /* { dg-message "loop vectorized" "" { target *-*-* } 0 } */
> -/* { dg-bogus " version" "" { target *-*-* } 0 } */
> -/* { dg-bogus " alias" "" { target *-*-* } 0 } */
> +/* { dg-bogus " version\[^\n\r]* alias" "" { target *-*-* } 0 } */
>  /* { dg-final { cleanup-tree-dump "vect" } } */
> --- gcc/testsuite/gcc.dg/vect/vect-ivdep-2.c.jj	2013-11-12 11:31:19.000000000 +0100
> +++ gcc/testsuite/gcc.dg/vect/vect-ivdep-2.c	2014-01-17 08:38:55.854652038 +0100
> @@ -30,6 +30,5 @@ void bar(int n, int *a, int *b, int *c)
>  
>  
>  /* { dg-message "loop vectorized" "" { target *-*-* } 0 } */
> -/* { dg-bogus " version" "" { target *-*-* } 0 } */
> -/* { dg-bogus " alias" "" { target *-*-* } 0 } */
> +/* { dg-bogus " version\[^\n\r]* alias" "" { target *-*-* } 0 } */
>  /* { dg-final { cleanup-tree-dump "vect" } } */
> --- gcc/testsuite/gfortran.dg/vect/vect-do-concurrent-1.f90.jj	2013-11-12 11:31:16.000000000 +0100
> +++ gcc/testsuite/gfortran.dg/vect/vect-do-concurrent-1.f90	2014-01-17 08:41:58.744714758 +0100
> @@ -12,6 +12,5 @@ subroutine test(n, a, b, c)
>  end subroutine test
>  
>  ! { dg-message "loop vectorized" "" { target *-*-* } 0 }
> -! { dg-bogus " version" "" { target *-*-* } 0 }
> -! { dg-bogus " alias" "" { target *-*-* } 0 }
> +! { dg-bogus " version\[^\n\r]* alias" "" { target *-*-* } 0 }
>  ! { dg-final { cleanup-tree-dump "vect" } }
> --- gcc/testsuite/g++.dg/vect/pr33426-ivdep.cc.jj	2013-11-12 11:31:20.000000000 +0100
> +++ gcc/testsuite/g++.dg/vect/pr33426-ivdep.cc	2014-01-17 08:40:08.534286245 +0100
> @@ -14,6 +14,5 @@ void foo(int n, int *a, int *b, int *c,
>  }
>  
>  /* { dg-message "loop vectorized" "" { target *-*-* } 0 } */
> -/* { dg-bogus " version" "" { target *-*-* } 0 } */
> -/* { dg-bogus " alias" "" { target *-*-* } 0 } */
> +/* { dg-bogus " version\[^\n\r]* alias" "" { target *-*-* } 0 } */
>  /* { dg-final { cleanup-tree-dump "vect" } } */
> --- gcc/testsuite/g++.dg/vect/pr33426-ivdep-2.cc.jj	2013-11-12 11:31:20.000000000 +0100
> +++ gcc/testsuite/g++.dg/vect/pr33426-ivdep-2.cc	2014-01-17 08:40:23.557207616 +0100
> @@ -29,8 +29,7 @@ void bar(int n, int *a, int *b, int *c)
>  }
>  
>  /* { dg-message "loop vectorized" "" { target *-*-* } 0 } */
> -/* { dg-bogus " version" "" { target *-*-* } 0 } */
> -/* { dg-bogus " alias" "" { target *-*-* } 0 } */
> +/* { dg-bogus " version\[^\n\r]* alias" "" { target *-*-* } 0 } */
>  /* { dg-final { cleanup-tree-dump "vect" } } */
>  
>  /* { dg-final { scan-tree-dump-times "ANNOTATE_EXPR " 2 "original" } } */
> --- gcc/testsuite/g++.dg/vect/pr33426-ivdep-3.cc.jj	2013-11-12 11:31:20.000000000 +0100
> +++ gcc/testsuite/g++.dg/vect/pr33426-ivdep-3.cc	2014-01-17 08:40:31.833150629 +0100
> @@ -15,8 +15,7 @@ void foo(int *a) {
>  }
>  
>  /* { dg-message "loop vectorized" "" { target *-*-* } 0 } */
> -/* { dg-bogus " version" "" { target *-*-* } 0 } */
> -/* { dg-bogus " alias" "" { target *-*-* } 0 } */
> +/* { dg-bogus " version\[^\n\r]* alias" "" { target *-*-* } 0 } */
>  /* { dg-final { cleanup-tree-dump "vect" } } */
>  
>  /* { dg-final { scan-tree-dump-times "ANNOTATE_EXPR " 1 "original" } } */
> --- gcc/testsuite/g++.dg/vect/pr33426-ivdep-4.cc.jj	2013-11-12 11:31:20.000000000 +0100
> +++ gcc/testsuite/g++.dg/vect/pr33426-ivdep-4.cc	2014-01-17 08:40:56.073057959 +0100
> @@ -20,8 +20,7 @@ void foo(std::vector<int> *ar, int *b) {
>  }
>  
>  /* { dg-message "loop vectorized" "" { target *-*-* } 0 } */
> -/* FIXME:     dg-bogus " version" "" { target *-*-* } 0  */
> -/* FIXME:     dg-bogus " alias" "" { target *-*-* } 0  */
> +/* FIXME:     dg-bogus " version\[^\n\r]* alias" "" { target *-*-* } 0  */
>  /* { dg-final { cleanup-tree-dump "vect" } } */
>  
>  /* { dg-final { scan-tree-dump-times "ANNOTATE_EXPR " 1 "original" } } */
> 
> 	Jakub
> 
> 

-- 
Richard Biener <rguenther@suse.de>
SUSE / SUSE Labs
SUSE LINUX Products GmbH - Nuernberg - AG Nuernberg - HRB 16746
GF: Jeff Hawn, Jennifer Guild, Felix Imend"orffer


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