From: rguenth Date: Thu, 27 May 2010 13:23:45 +0000 (+0000) Subject: 2010-05-27 Richard Guenther X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=99f61dd05a51a11d57d0ea0a4c4461b9f8854afd;p=thirdparty%2Fgcc.git 2010-05-27 Richard Guenther PR tree-optimization/44284 * tree-vect-stmts.c (vectorizable_assignment): Handle sign-changing conversions as simple copy. * gcc.dg/vect/vect-118.c: New testcase. * gcc.dg/vect/bb-slp-20.c: Adjust. * gcc.dg/vect/no-section-anchors-vect-36.c: Likewise. * gcc.dg/vect/slp-9.c: Likewise. * gcc.dg/vect/slp-reduc-4.c: Likewise. * gcc.dg/vect/vect-10.c: Likewise. * gcc.dg/vect/vect-109.c: Likewise. * gcc.dg/vect/vect-12.c: Likewise. * gcc.dg/vect/vect-36.c: Likewise. * gcc.dg/vect/vect-7.c: Likewise. * gcc.dg/vect/vect-iv-8.c: Likewise. * gcc.dg/vect/vect-multitypes-10.c: Likewise. * gcc.dg/vect/vect-multitypes-13.c: Likewise. * gcc.dg/vect/vect-multitypes-14.c: Likewise. * gcc.dg/vect/vect-multitypes-15.c: Likewise. * gcc.dg/vect/vect-multitypes-7.c: Likewise. * gcc.dg/vect/vect-multitypes-8.c: Likewise. * gcc.dg/vect/vect-multitypes-9.c: Likewise. * gcc.dg/vect/vect-reduc-dot-s16b.c: Likewise. * gcc.dg/vect/vect-reduc-dot-s8a.c: Likewise. * gcc.dg/vect/vect-reduc-dot-s8b.c: Likewise. * gcc.dg/vect/vect-reduc-dot-u16b.c: Likewise. * gcc.dg/vect/vect-strided-a-u32-mult.c: Likewise. * gcc.dg/vect/vect-strided-u32-mult.c: Likewise. * gcc.dg/vect/vect-widen-mult-s16.c: Likewise. * gcc.dg/vect/vect-widen-mult-s8.c: Likewise. * gcc.dg/vect/vect-widen-mult-sum.c: Likewise. * gcc.dg/vect/vect-widen-mult-u16.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@159920 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6d8c2e8df302..947d1b11c8da 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2010-05-27 Richard Guenther + + PR tree-optimization/44284 + * tree-vect-stmts.c (vectorizable_assignment): Handle + sign-changing conversions as simple copy. + 2010-05-27 Maxim Kuvyrkov * gthr-posix.h (pthread_cancel): Don't declare if compiling against diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index cdcbc2fe8a67..e9d2a9ac39ae 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,35 @@ +2010-05-27 Richard Guenther + + PR tree-optimization/44284 + * gcc.dg/vect/vect-118.c: New testcase. + * gcc.dg/vect/bb-slp-20.c: Adjust. + * gcc.dg/vect/no-section-anchors-vect-36.c: Likewise. + * gcc.dg/vect/slp-9.c: Likewise. + * gcc.dg/vect/slp-reduc-4.c: Likewise. + * gcc.dg/vect/vect-10.c: Likewise. + * gcc.dg/vect/vect-109.c: Likewise. + * gcc.dg/vect/vect-12.c: Likewise. + * gcc.dg/vect/vect-36.c: Likewise. + * gcc.dg/vect/vect-7.c: Likewise. + * gcc.dg/vect/vect-iv-8.c: Likewise. + * gcc.dg/vect/vect-multitypes-10.c: Likewise. + * gcc.dg/vect/vect-multitypes-13.c: Likewise. + * gcc.dg/vect/vect-multitypes-14.c: Likewise. + * gcc.dg/vect/vect-multitypes-15.c: Likewise. + * gcc.dg/vect/vect-multitypes-7.c: Likewise. + * gcc.dg/vect/vect-multitypes-8.c: Likewise. + * gcc.dg/vect/vect-multitypes-9.c: Likewise. + * gcc.dg/vect/vect-reduc-dot-s16b.c: Likewise. + * gcc.dg/vect/vect-reduc-dot-s8a.c: Likewise. + * gcc.dg/vect/vect-reduc-dot-s8b.c: Likewise. + * gcc.dg/vect/vect-reduc-dot-u16b.c: Likewise. + * gcc.dg/vect/vect-strided-a-u32-mult.c: Likewise. + * gcc.dg/vect/vect-strided-u32-mult.c: Likewise. + * gcc.dg/vect/vect-widen-mult-s16.c: Likewise. + * gcc.dg/vect/vect-widen-mult-s8.c: Likewise. + * gcc.dg/vect/vect-widen-mult-sum.c: Likewise. + * gcc.dg/vect/vect-widen-mult-u16.c: Likewise. + 2010-05-27 Maxim Kuvyrkov * gcc.dg/glibc-uclibc-1.c, gcc.dg/glibc-uclibc-2.c: Remove, no longer diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-20.c b/gcc/testsuite/gcc.dg/vect/bb-slp-20.c index a40a629d1e7d..910eae5baff6 100644 --- a/gcc/testsuite/gcc.dg/vect/bb-slp-20.c +++ b/gcc/testsuite/gcc.dg/vect/bb-slp-20.c @@ -21,8 +21,7 @@ main1 (unsigned int x, unsigned int y) else y = x; - /* Two SLP instances in the basic block, only one is supported for now, - the second one contains type conversion. */ + /* Two SLP instances in the basic block. */ a0 = in[0] + 23; a1 = in[1] + 142; a2 = in[2] + 2; @@ -63,6 +62,6 @@ int main (void) } /* { dg-final { scan-tree-dump-times "basic block vectorized using SLP" 1 "slp" { target vect_int_mult } } } */ -/* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 1 "slp" { target vect_int_mult } } } */ +/* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 2 "slp" { target vect_int_mult } } } */ /* { dg-final { cleanup-tree-dump "slp" } } */ diff --git a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-36.c b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-36.c index 351463bb152c..947677346886 100644 --- a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-36.c +++ b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-36.c @@ -18,6 +18,7 @@ int main1 () for (i = 0; i < N; i++) { s.cb[i] = 3*i; + __asm__ volatile (""); } for (i = 0; i < N; i++) diff --git a/gcc/testsuite/gcc.dg/vect/slp-9.c b/gcc/testsuite/gcc.dg/vect/slp-9.c index eefb81680a40..7e1ede4b3f85 100644 --- a/gcc/testsuite/gcc.dg/vect/slp-9.c +++ b/gcc/testsuite/gcc.dg/vect/slp-9.c @@ -29,6 +29,7 @@ int main (void) for (i=0; i