Summary: | vectorization does not work for short variable | ||
---|---|---|---|
Product: | gcc | Reporter: | Roy Rosen <roy.1rosen> |
Component: | tree-optimization | Assignee: | Richard Biener <rguenth> |
Status: | RESOLVED FIXED | ||
Severity: | enhancement | CC: | gcc-bugs, roy.1rosen |
Priority: | P3 | Keywords: | missed-optimization |
Version: | 4.4.3 | ||
Target Milestone: | 4.5.1 | ||
Host: | Target: | ||
Build: | Known to work: | ||
Known to fail: | Last reconfirmed: | 2010-05-26 15:40:22 | |
Attachments: | preprocessed file |
Description
Roy Rosen
2010-05-26 15:36:51 UTC
Created attachment 20752 [details]
preprocessed file
Confirmed. Mine. Subject: Bug 44284 Author: rguenth Date: Thu May 27 13:23:45 2010 New Revision: 159920 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159920 Log: 2010-05-27 Richard Guenther <rguenther@suse.de> 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. Added: trunk/gcc/testsuite/gcc.dg/vect/vect-118.c Modified: trunk/gcc/ChangeLog trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gcc.dg/vect/bb-slp-20.c trunk/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-36.c trunk/gcc/testsuite/gcc.dg/vect/slp-9.c trunk/gcc/testsuite/gcc.dg/vect/slp-reduc-4.c trunk/gcc/testsuite/gcc.dg/vect/vect-10.c trunk/gcc/testsuite/gcc.dg/vect/vect-109.c trunk/gcc/testsuite/gcc.dg/vect/vect-12.c trunk/gcc/testsuite/gcc.dg/vect/vect-36.c trunk/gcc/testsuite/gcc.dg/vect/vect-7.c trunk/gcc/testsuite/gcc.dg/vect/vect-iv-8.c trunk/gcc/testsuite/gcc.dg/vect/vect-multitypes-10.c trunk/gcc/testsuite/gcc.dg/vect/vect-multitypes-13.c trunk/gcc/testsuite/gcc.dg/vect/vect-multitypes-14.c trunk/gcc/testsuite/gcc.dg/vect/vect-multitypes-15.c trunk/gcc/testsuite/gcc.dg/vect/vect-multitypes-7.c trunk/gcc/testsuite/gcc.dg/vect/vect-multitypes-8.c trunk/gcc/testsuite/gcc.dg/vect/vect-multitypes-9.c trunk/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-s16a.c trunk/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-s16b.c trunk/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-s8a.c trunk/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-s8b.c trunk/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-s8c.c trunk/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-u16b.c trunk/gcc/testsuite/gcc.dg/vect/vect-strided-a-u32-mult.c trunk/gcc/testsuite/gcc.dg/vect/vect-strided-u32-mult.c trunk/gcc/testsuite/gcc.dg/vect/vect-widen-mult-s16.c trunk/gcc/testsuite/gcc.dg/vect/vect-widen-mult-s8.c trunk/gcc/testsuite/gcc.dg/vect/vect-widen-mult-sum.c trunk/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u16.c trunk/gcc/tree-vect-stmts.c Fixed. Subject: Bug 44284 Author: rguenth Date: Thu Jul 8 11:56:08 2010 New Revision: 161951 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=161951 Log: 2010-07-08 Richard Guenther <rguenther@suse.de> Backport from mainline 2010-05-27 Richard Guenther <rguenther@suse.de> 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. 2010-07-06 Richard Guenther <rguenther@suse.de> PR middle-end/44828 * convert.c (convert_to_integer): Watch out for overflowing MULT_EXPR as well. * gcc.c-torture/execute/pr44828.c: New testcase. Added: branches/gcc-4_5-branch/gcc/testsuite/gcc.c-torture/execute/pr44828.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-118.c Modified: branches/gcc-4_5-branch/gcc/ChangeLog branches/gcc-4_5-branch/gcc/convert.c branches/gcc-4_5-branch/gcc/testsuite/ChangeLog branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/bb-slp-20.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-36.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/slp-9.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-10.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-109.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-12.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-36.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-7.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-iv-8.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-multitypes-10.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-multitypes-13.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-multitypes-14.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-multitypes-15.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-multitypes-7.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-multitypes-8.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-multitypes-9.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-s16a.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-s16b.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-s8a.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-s8b.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-s8c.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-reduc-dot-u16b.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-strided-a-u32-mult.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-strided-u32-mult.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-widen-mult-s16.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-widen-mult-s8.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-widen-mult-sum.c branches/gcc-4_5-branch/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u16.c branches/gcc-4_5-branch/gcc/tree-vect-stmts.c |