[Bug testsuite/68681] [6 Regression] testcase gcc.dg/vect/pr45752.c fails on AArch64

2015-12-04 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68681

--- Comment #3 from Richard Biener  ---
Author: rguenth
Date: Fri Dec  4 09:56:28 2015
New Revision: 231253

URL: https://gcc.gnu.org/viewcvs?rev=231253=gcc=rev
Log:
2015-12-04  Richard Biener  

PR testsuite/68681
* gcc.dg/vect/pr45752.c: Add --param tree-reassoc-width=1.

Modified:
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gcc.dg/vect/pr45752.c

[Bug testsuite/68681] [6 Regression] testcase gcc.dg/vect/pr45752.c fails on AArch64

2015-12-04 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68681

Richard Biener  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #2 from Richard Biener  ---
Fixed.

[Bug testsuite/68681] [6 Regression] testcase gcc.dg/vect/pr45752.c fails on AArch64

2015-12-04 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68681

Richard Biener  changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2015-12-04
  Component|tree-optimization   |testsuite
   Assignee|unassigned at gcc dot gnu.org  |rguenth at gcc dot 
gnu.org
   Target Milestone|--- |6.0
Summary|testcase|[6 Regression] testcase
   |gcc.dg/vect/pr45752.c fails |gcc.dg/vect/pr45752.c fails
   |on AArch64  |on AArch64
 Ever confirmed|0   |1

--- Comment #1 from Richard Biener  ---
Huh.  It somehow arrives at

gcc/testsuite/gcc.dg/vect/pr45752.c:45:3: note: Load permutation 4 4 4 4 4 0 0
0 3 3 1 1 1 2 2 3 3 3 0 0 2 2 2 1 1

instead of the desired

Load permutation 2 2 2 2 2 3 3 3 3 3 0 0 0 0 0 1 1 1 1 1 4 4 4 4 4

hmm, it's probably a bit of luck which association you get for the addition
chain.  tree-reasssoc-width may play a role here - yep, with --param
tree-reassoc-width=2 it fails on x86_64 as well.

This is a missed optimization opportunity - shuffling the SLP tree (where
possible) to make load permutations supported.

In this case we can also amend the testcase to use --param tree-reassoc-width=1