aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.8/gcc/testsuite/gcc.target/i386/sse2-extract-1.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.8/gcc/testsuite/gcc.target/i386/sse2-extract-1.c')
-rw-r--r--gcc-4.8/gcc/testsuite/gcc.target/i386/sse2-extract-1.c102
1 files changed, 0 insertions, 102 deletions
diff --git a/gcc-4.8/gcc/testsuite/gcc.target/i386/sse2-extract-1.c b/gcc-4.8/gcc/testsuite/gcc.target/i386/sse2-extract-1.c
deleted file mode 100644
index f701cee8c..000000000
--- a/gcc-4.8/gcc/testsuite/gcc.target/i386/sse2-extract-1.c
+++ /dev/null
@@ -1,102 +0,0 @@
-/* { dg-do run } */
-/* { dg-options "-O2 -msse2" } */
-/* { dg-require-effective-target sse2_runtime } */
-
-extern void abort (void);
-typedef unsigned long long uint64_t;
-
-#define vector(elcount, type) \
-__attribute__((vector_size((elcount)*sizeof(type)))) type
-
-#define FN(elcount, type, idx) \
-__attribute__((noinline, noclone)) \
-type f##type##elcount##_##idx (vector (elcount, type) x) { return x[idx] + 1; }
-#define T2(elcount, type) \
- H (elcount, type) \
- F (elcount, type, 0) \
- F (elcount, type, 1)
-#define T4(elcount, type) \
- T2 (elcount, type) \
- F (elcount, type, 2) \
- F (elcount, type, 3)
-#define T8(elcount, type) \
- T4 (elcount, type) \
- F (elcount, type, 4) \
- F (elcount, type, 5) \
- F (elcount, type, 6) \
- F (elcount, type, 7)
-#define T16(elcount, type) \
- T8 (elcount, type) \
- F (elcount, type, 8) \
- F (elcount, type, 9) \
- F (elcount, type, 10) \
- F (elcount, type, 11) \
- F (elcount, type, 12) \
- F (elcount, type, 13) \
- F (elcount, type, 14) \
- F (elcount, type, 15)
-#define T32(elcount, type) \
- T16 (elcount, type) \
- F (elcount, type, 16) \
- F (elcount, type, 17) \
- F (elcount, type, 18) \
- F (elcount, type, 19) \
- F (elcount, type, 20) \
- F (elcount, type, 21) \
- F (elcount, type, 22) \
- F (elcount, type, 23) \
- F (elcount, type, 24) \
- F (elcount, type, 25) \
- F (elcount, type, 26) \
- F (elcount, type, 27) \
- F (elcount, type, 28) \
- F (elcount, type, 29) \
- F (elcount, type, 30) \
- F (elcount, type, 31)
-#define TESTS_SSE2 \
-T2 (2, double) E \
-T2 (2, uint64_t) E \
-T4 (4, float) E \
-T4 (4, int) E \
-T8 (8, short) E \
-T16 (16, char) E
-#define TESTS_AVX \
-T4 (4, double) E \
-T4 (4, uint64_t) E \
-T8 (8, float) E \
-T8 (8, int) E \
-T16 (16, short) E \
-T32 (32, char) E
-#ifdef __AVX__
-#define TESTS TESTS_SSE2 TESTS_AVX
-#else
-#define TESTS TESTS_SSE2
-#endif
-
-#define F FN
-#define H(elcount, type)
-#define E
-TESTS
-
-int
-main ()
-{
-#undef F
-#undef H
-#undef E
-#define H(elcount, type) \
- vector (elcount, type) v##type##elcount = {
-#define E };
-#define F(elcount, type, idx) idx + 1,
- TESTS
-#undef F
-#undef H
-#undef E
-#define H(elcount, type)
-#define E
-#define F(elcount, type, idx) \
- if (f##type##elcount##_##idx (v##type##elcount) != idx + 2) \
- abort ();
- TESTS
- return 0;
-}