aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.8/gcc/testsuite/gcc.target/i386/xop-vshift-1.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.8/gcc/testsuite/gcc.target/i386/xop-vshift-1.c')
-rw-r--r--gcc-4.8/gcc/testsuite/gcc.target/i386/xop-vshift-1.c145
1 files changed, 0 insertions, 145 deletions
diff --git a/gcc-4.8/gcc/testsuite/gcc.target/i386/xop-vshift-1.c b/gcc-4.8/gcc/testsuite/gcc.target/i386/xop-vshift-1.c
deleted file mode 100644
index ee3d29903..000000000
--- a/gcc-4.8/gcc/testsuite/gcc.target/i386/xop-vshift-1.c
+++ /dev/null
@@ -1,145 +0,0 @@
-/* { dg-do run } */
-/* { dg-options "-O3 -mxop" } */
-/* { dg-require-effective-target xop } */
-
-#ifndef CHECK_H
-#define CHECK_H "xop-check.h"
-#endif
-
-#ifndef TEST
-#define TEST xop_test
-#endif
-
-#include CHECK_H
-
-#define N 64
-
-#ifndef TYPE1
-#define TYPE1 int
-#define TYPE2 long long
-#endif
-
-/* mingw runtime don't provide random(). */
-#ifdef __MINGW32__
-#define random rand
-#endif
-
-signed TYPE1 a[N], b[N], g[N];
-unsigned TYPE1 c[N], h[N];
-signed TYPE2 d[N], e[N], j[N];
-unsigned TYPE2 f[N], k[N];
-
-__attribute__((noinline)) void
-f1 (void)
-{
- int i;
- for (i = 0; i < N; i++)
- g[i] = a[i] << b[i];
-}
-
-__attribute__((noinline)) void
-f2 (void)
-{
- int i;
- for (i = 0; i < N; i++)
- g[i] = a[i] >> b[i];
-}
-
-__attribute__((noinline)) void
-f3 (void)
-{
- int i;
- for (i = 0; i < N; i++)
- h[i] = c[i] >> b[i];
-}
-
-__attribute__((noinline)) void
-f4 (void)
-{
- int i;
- for (i = 0; i < N; i++)
- j[i] = d[i] << e[i];
-}
-
-__attribute__((noinline)) void
-f5 (void)
-{
- int i;
- for (i = 0; i < N; i++)
- j[i] = d[i] >> e[i];
-}
-
-__attribute__((noinline)) void
-f6 (void)
-{
- int i;
- for (i = 0; i < N; i++)
- k[i] = f[i] >> e[i];
-}
-
-__attribute__((noinline)) void
-f7 (void)
-{
- int i;
- for (i = 0; i < N; i++)
- j[i] = d[i] << b[i];
-}
-
-__attribute__((noinline)) void
-f8 (void)
-{
- int i;
- for (i = 0; i < N; i++)
- j[i] = d[i] >> b[i];
-}
-
-__attribute__((noinline)) void
-f9 (void)
-{
- int i;
- for (i = 0; i < N; i++)
- k[i] = f[i] >> b[i];
-}
-
-static void
-TEST ()
-{
- int i;
- for (i = 0; i < N; i++)
- {
- asm ("");
- c[i] = (random () << 1) | (random () & 1);
- b[i] = (i * 85) & (sizeof (TYPE1) * __CHAR_BIT__ - 1);
- a[i] = c[i];
- d[i] = (random () << 1) | (random () & 1);
- d[i] |= (unsigned long long) c[i] << 32;
- e[i] = (i * 85) & (sizeof (TYPE2) * __CHAR_BIT__ - 1);
- f[i] = d[i];
- }
- f1 ();
- f3 ();
- f4 ();
- f6 ();
- for (i = 0; i < N; i++)
- if (g[i] != (signed TYPE1) (a[i] << b[i])
- || h[i] != (unsigned TYPE1) (c[i] >> b[i])
- || j[i] != (signed TYPE2) (d[i] << e[i])
- || k[i] != (unsigned TYPE2) (f[i] >> e[i]))
- abort ();
- f2 ();
- f5 ();
- f9 ();
- for (i = 0; i < N; i++)
- if (g[i] != (signed TYPE1) (a[i] >> b[i])
- || j[i] != (signed TYPE2) (d[i] >> e[i])
- || k[i] != (unsigned TYPE2) (f[i] >> b[i]))
- abort ();
- f7 ();
- for (i = 0; i < N; i++)
- if (j[i] != (signed TYPE2) (d[i] << b[i]))
- abort ();
- f8 ();
- for (i = 0; i < N; i++)
- if (j[i] != (signed TYPE2) (d[i] >> b[i]))
- abort ();
-}