This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/53435] New: (ix86_expand_vec_perm) and (ix86_expand_vec_perm) do not pass arguments to avx2_permvar8s[f,i] correctly
- From: "aivchenk at gmail dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Mon, 21 May 2012 11:45:51 +0000
- Subject: [Bug target/53435] New: (ix86_expand_vec_perm) and (ix86_expand_vec_perm) do not pass arguments to avx2_permvar8s[f,i] correctly
- Auto-submitted: auto-generated
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53435
Bug #: 53435
Summary: (ix86_expand_vec_perm) and (ix86_expand_vec_perm) do
not pass arguments to avx2_permvar8s[f,i] correctly
Classification: Unclassified
Product: gcc
Version: 4.8.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: aivchenk@gmail.com
CC: areg.melikadamyan@gmail.com, hjl.tools@gmail.com,
kirill.yukhin@intel.com, ubizjak@gmail.com
Target: i?86-*-* x86_64-*-*
Seems that after:
commit 8da8a06b586ddd9511b5c5c83e2c28ca8d7613a8
Author: uros <uros@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Thu Apr 12 18:37:42 2012 +0000
PR target/52932
* config/i386/avx2intrin.h (_mm256_permutevar8x32_ps): Change second
argument type to __m256i. Update call to __builtin_ia32_permvarsf256.
...
(avx2_permvarv8sf, avx2_permvarv8si): Switch operands 1 and 2.
...
(ix86_expand_vec_perm): Update calls to gen_avx2_permvarv8si and
gen_avx2_permvarv8sf.
(expand_vec_perm_pshufb): Ditto.
gcc.c-torture/execute/vshuf-v* and gcc.dg/torture/pr45720.c fail.
The problem is that not everything that had to be changed was changed to use
the second argument as __m256i.
Please take a look at the attached patch that should fix those problems