https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97494
Bug ID: 97494 Summary: [11 regression] several vector test case failures starting with r11-3966 Product: gcc Version: 11.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: seurer at gcc dot gnu.org Target Milestone: --- g:429ad0bb0d3dc77e44f95620341da4938d49168e, r11-3966: 109 failures On all powerpc64 both BE and LE: FAIL: gcc.dg/vect/slp-11b.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 0 FAIL: gcc.dg/vect/slp-11b.c scan-tree-dump-times vect "vectorizing stmts using SLP" 0 FAIL: gcc.dg/vect/slp-21.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 2 FAIL: gcc.dg/vect/slp-21.c scan-tree-dump-times vect "vectorizing stmts using SLP" 2 Some extras on power7 BE: FAIL: gcc.dg/vect/pr97428.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 2 FAIL: gcc.dg/vect/pr97428.c scan-tree-dump-times vect "vectorizing stmts using SLP" 2 FAIL: gcc.dg/vect/vect-complex-5.c -flto -ffat-lto-objects scan-tree-dump-times vect "vectorizing stmts using SLP" 2 FAIL: gcc.dg/vect/vect-complex-5.c scan-tree-dump-times vect "vectorizing stmts using SLP" 2 commit 429ad0bb0d3dc77e44f95620341da4938d49168e (HEAD) Author: Richard Biener <rguent...@suse.de> Date: Thu Oct 15 11:55:53 2020 +0200 tree-optimization/97428 - split SLP groups for loop vectorization This enables SLP store group splitting also for loop vectorization. For the existing testcase gcc.dg/vect/vect-complex-5.c this then generates much better code, likewise for the PR97428 testcase. Both of those have a splitting opportunity splitting the group into two equal (vector-sized) halves, still the patch enables quite arbitrary splitting since generally the interleaving scheme results in quite awkward code for even small groups. If any problems surface with this it's easy to restrict the splitting to known-good cases. 2020-10-15 Richard Biener <rguent...@suse.de> PR tree-optimization/97428 * tree-vect-slp.c (vect_analyze_slp_instance): Split store groups also for loop vectorization. * gcc.dg/vect/vect-complex-5.c: Expect to SLP. * gcc.dg/vect/pr97428.c: Likewise.