aboutsummaryrefslogtreecommitdiff
path: root/test/CodeGen/ppc64-struct-onevect.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/CodeGen/ppc64-struct-onevect.c')
-rw-r--r--test/CodeGen/ppc64-struct-onevect.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/test/CodeGen/ppc64-struct-onevect.c b/test/CodeGen/ppc64-struct-onevect.c
new file mode 100644
index 000000000000..a5a1232ffa89
--- /dev/null
+++ b/test/CodeGen/ppc64-struct-onevect.c
@@ -0,0 +1,13 @@
+// REQUIRES: ppc64-registered-target
+// RUN: %clang_cc1 -O2 -triple powerpc64-unknown-linux-gnu -emit-llvm -o - %s | FileCheck %s
+
+typedef float v4sf __attribute__ ((vector_size (16)));
+
+struct s { v4sf v; };
+
+v4sf foo (struct s a) {
+ return a.v;
+}
+
+// CHECK-LABEL: define <4 x float> @foo(<4 x float> inreg %a.coerce)
+// CHECK: ret <4 x float> %a.coerce