aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gcc.dg/torture/pr45678-1.c16
2 files changed, 21 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 55f05f4..e31952d 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2010-09-17 Richard Guenther <rguenther@suse.de>
+
+ PR middle-end/45678
+ * gcc.dg/torture/pr45678-1.c: New testcase.
+
2010-09-17 Michael Matz <matz@suse.de>
PR tree-optimization/43432
diff --git a/gcc/testsuite/gcc.dg/torture/pr45678-1.c b/gcc/testsuite/gcc.dg/torture/pr45678-1.c
new file mode 100644
index 0000000..58e6156
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/torture/pr45678-1.c
@@ -0,0 +1,16 @@
+/* { dg-do run } */
+
+typedef float V __attribute__ ((vector_size (16)));
+V g;
+float d[4] = { 4, 3, 2, 1 };
+
+int
+main ()
+{
+ V e;
+ __builtin_memcpy (&e, &d, sizeof (d));
+ V f = { 5, 15, 25, 35 };
+ e = e * f;
+ g = e;
+ return 0;
+}