diff options
author | Jakub Jelinek <jakub@redhat.com> | 2011-09-16 21:14:36 +0200 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2011-09-16 21:14:36 +0200 |
commit | 6e2cb3913952ef1b7fd31f4f5b8754f55f689d9a (patch) | |
tree | 63520943d260db2da79353c5616960e263cdd8ba /gcc/testsuite/gcc.target/i386/avx-extract-1.c | |
parent | 6deb519753e07d167eda75bced5a7987a57f0a03 (diff) | |
download | gcc-6e2cb3913952ef1b7fd31f4f5b8754f55f689d9a.tar.gz |
sse.md (vec_extract_hi_<mode>, [...]): Use vextracti128 instead of vextractf128 for -mavx2 and integer vectors.
* config/i386/sse.md (vec_extract_hi_<mode>,
vec_extract_hi_v16hi, vec_extract_hi_v32qi): Use
vextracti128 instead of vextractf128 for -mavx2 and
integer vectors. For V4DFmode fix up mode attribute.
(VEC_EXTRACT_MODE): For TARGET_AVX add 32-byte vectors.
(vec_set_lo_<mode>, vec_set_hi_<mode>): For VI8F_256 modes use V4DF
instead of V8SF mode attribute.
(avx2_extracti128): Change into define_expand.
* config/i386/i386.c (ix86_expand_vector_extract): Handle
32-byte vector modes if TARGET_AVX.
* gcc.target/i386/sse2-extract-1.c: New test.
* gcc.target/i386/avx-extract-1.c: New test.
From-SVN: r178915
Diffstat (limited to 'gcc/testsuite/gcc.target/i386/avx-extract-1.c')
-rw-r--r-- | gcc/testsuite/gcc.target/i386/avx-extract-1.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.target/i386/avx-extract-1.c b/gcc/testsuite/gcc.target/i386/avx-extract-1.c new file mode 100644 index 00000000000..2684125f52a --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/avx-extract-1.c @@ -0,0 +1,5 @@ +/* { dg-do run } */ +/* { dg-options "-O2 -mavx" } */ +/* { dg-require-effective-target avx_runtime } */ + +#include "sse2-extract-1.c" |