OSDN Git Service

2012-04-16 Uros Bizjak <ubizjak@gmail.com>
authoruros <uros@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 16 Apr 2012 16:03:51 +0000 (16:03 +0000)
committeruros <uros@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 16 Apr 2012 16:03:51 +0000 (16:03 +0000)
commit33bca1aae0bb7e08032c41ebfe158fe261e896e0
tree5f462923fb4497c2557a15fa9a89a202fa7f2a39
parent3fd1a3cba8bd6a954989833052aca99c8b307e68
2012-04-16  Uros Bizjak  <ubizjak@gmail.com>

Backport from mainline
2012-04-12  Uros Bizjak  <ubizjak@gmail.com>

PR target/52932
* config/i386/avx2intrin.h (_mm256_permutevar8x32_ps): Change second
argument type to __m256i.  Update call to __builtin_ia32_permvarsf256.
* config/i386/sse.md (avx2_permvarv8sf): Change operand 1 to V8SI.
(avx2_permvarv8sf, avx2_permvarv8si): Switch operands 1 and 2.
* config/i386/i386.c (bdesc_args) <__builtin_ia32_permvarsf256>:
Update builtin type to V8SF_FTYPE_V8SF_V8SI.
(ix86_expand_vec_perm): Update calls to gen_avx2_permvarv8si and
gen_avx2_permvarv8sf.

testsuite/ChangeLog:

2012-04-16  Uros Bizjak  <ubizjak@gmail.com>

Backport from mainline
2012-04-12  Uros Bizjak  <ubizjak@gmail.com>

PR target/52932
* gcc.target/i386/avx2-vpermps-1.c (avx2_test): Use __m256i type for
second function argument.
* gcc.target/i386/avx2-vpermps-2.c (init_permps): Update declaration.
(calc_permps): Update declaration.  Calculate result correctly.
(avx2_test): Change src2 type to union256i_d.
* gcc.target/i386/avx2-vpermd-2.c (calc_permd): Calculate result
correctly.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_7-branch@186500 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/i386/avx2intrin.h
gcc/config/i386/i386.c
gcc/config/i386/sse.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/avx2-vpermd-2.c
gcc/testsuite/gcc.target/i386/avx2-vpermps-1.c
gcc/testsuite/gcc.target/i386/avx2-vpermps-2.c