aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.8/gcc/testsuite/gcc.target/i386/pr59405.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.8/gcc/testsuite/gcc.target/i386/pr59405.c')
-rw-r--r--gcc-4.8/gcc/testsuite/gcc.target/i386/pr59405.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/gcc-4.8/gcc/testsuite/gcc.target/i386/pr59405.c b/gcc-4.8/gcc/testsuite/gcc.target/i386/pr59405.c
new file mode 100644
index 000000000..1136e2e45
--- /dev/null
+++ b/gcc-4.8/gcc/testsuite/gcc.target/i386/pr59405.c
@@ -0,0 +1,24 @@
+/* { dg-do run } */
+/* { dg-options "-mmmx -mfpmath=387" } */
+
+#include "mmx-check.h"
+
+#include <mmintrin.h>
+
+typedef float float32x2_t __attribute__ ((vector_size (8)));
+
+float
+foo32x2_be (float32x2_t x)
+{
+ _mm_empty ();
+ return x[1];
+}
+
+static void
+mmx_test (void)
+{
+ float32x2_t b = { 0.0f, 1.0f };
+
+ if (foo32x2_be (b) != 1.0f)
+ abort ();
+}