diff options
Diffstat (limited to 'gcc-4.8/gcc/testsuite/gcc.target/i386/sse4_1-pinsrq.c')
-rw-r--r-- | gcc-4.8/gcc/testsuite/gcc.target/i386/sse4_1-pinsrq.c | 67 |
1 files changed, 0 insertions, 67 deletions
diff --git a/gcc-4.8/gcc/testsuite/gcc.target/i386/sse4_1-pinsrq.c b/gcc-4.8/gcc/testsuite/gcc.target/i386/sse4_1-pinsrq.c deleted file mode 100644 index 1ed0987bd..000000000 --- a/gcc-4.8/gcc/testsuite/gcc.target/i386/sse4_1-pinsrq.c +++ /dev/null @@ -1,67 +0,0 @@ -/* { dg-do run { target { ! { ia32 } } } } */ -/* { dg-require-effective-target sse4 } */ -/* { dg-options "-O2 -msse4.1" } */ - -#ifndef CHECK_H -#define CHECK_H "sse4_1-check.h" -#endif - -#ifndef TEST -#define TEST sse4_1_test -#endif - -#include CHECK_H - -#include <smmintrin.h> -#include <string.h> - -#define msk0 0x00 -#define msk1 0x01 - -static void -__attribute__((noinline)) -TEST (void) -{ - union - { - __m128i x; - unsigned long long ll[2]; - } res [4], val, tmp; - int masks[4]; - static unsigned long long ins[2] = - { 0xAABBAABBAABBAABBLL, 0xCCDDCCDDCCDDCCDDLL }; - int i; - - val.ll[0] = 0x0807060504030201LL; - val.ll[1] = 0x100F0E0D0C0B0A09LL; - - /* Check pinsrq imm8, r64, xmm. */ - res[0].x = _mm_insert_epi64 (val.x, ins[0], msk0); - res[1].x = _mm_insert_epi64 (val.x, ins[0], msk1); - - masks[0] = msk0; - masks[1] = msk1; - - for (i = 0; i < 2; i++) - { - tmp.x = val.x; - tmp.ll[masks[i]] = ins[0]; - if (memcmp (&tmp, &res[i], sizeof (tmp))) - abort (); - } - - /* Check pinsrq imm8, m64, xmm. */ - for (i = 0; i < 2; i++) - { - res[i].x = _mm_insert_epi64 (val.x, ins[i], msk0); - masks[i] = msk0; - } - - for (i = 0; i < 2; i++) - { - tmp.x = val.x; - tmp.ll[masks[i]] = ins[i]; - if (memcmp (&tmp, &res[i], sizeof (tmp))) - abort (); - } -} |