re PR rtl-optimization/26449 (ICE in loop invariant motion)
authorUros Bizjak <ubizjak@gmail.com>
Sat, 8 Sep 2007 11:48:17 +0000 (13:48 +0200)
committerUros Bizjak <uros@gcc.gnu.org>
Sat, 8 Sep 2007 11:48:17 +0000 (13:48 +0200)
        PR rtl-optimization/26449
        * gcc.target/i386/pr26449-1.c: New file.

From-SVN: r128270

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/pr26449-1.c [new file with mode: 0644]

index 79b14b77e9fcec496d13073a11cda115b3687fba..641d9f1f8ec5f5fbdac83491a74e74d3aca6afbb 100644 (file)
@@ -1,7 +1,12 @@
+2007-09-08  Uros Bizjak  <ubizjak@gmail.com>
+
+       PR rtl-optimization/26449
+       * gcc.target/i386/pr26449-1.c: New file.
+
 2007-09-08  Uros Bizjak  <ubizjak@gmail.com>
 
        PR target/33329
-       PR target/26449
+       PR rtl-optimization/26449
        * gcc.target/i386/pr33329.c: New file.
 
 2007-09-08  Eric Botcazou  <ebotcazou@adacore.com>
diff --git a/gcc/testsuite/gcc.target/i386/pr26449-1.c b/gcc/testsuite/gcc.target/i386/pr26449-1.c
new file mode 100644 (file)
index 0000000..b4ef780
--- /dev/null
@@ -0,0 +1,22 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -msse2 -mtune=k8" } */
+
+typedef short __v8hi __attribute__ ((__vector_size__ (16)));
+typedef long long __m128i __attribute__ ((__vector_size__ (16)));
+
+void sse2_test (void)
+{
+  union
+  {
+    __m128i x;
+  } val1, res[8], tmp;
+  short ins[8] = { 8, 5, 9, 4, 2, 6, 1, 20 };
+  int i;
+
+  for (i = 0; i < 8; i++)
+    {
+      tmp.x = val1.x;
+      if (memcmp (&tmp, &res[i], sizeof (tmp)))
+        (__m128i) __builtin_ia32_vec_set_v8hi ((__v8hi) val1.x, ins[i], 0);
+    }
+}