aboutsummaryrefslogtreecommitdiff
path: root/test/CodeGen/ppc64-align-long-double.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/CodeGen/ppc64-align-long-double.c')
-rw-r--r--test/CodeGen/ppc64-align-long-double.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/test/CodeGen/ppc64-align-long-double.c b/test/CodeGen/ppc64-align-long-double.c
new file mode 100644
index 000000000000..c4dcfa072367
--- /dev/null
+++ b/test/CodeGen/ppc64-align-long-double.c
@@ -0,0 +1,18 @@
+// REQUIRES: ppc64-registered-target
+// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu -emit-llvm -o - %s | FileCheck %s
+
+// CHECK: -f128:128:128-
+
+struct S {
+ double a;
+ long double b;
+};
+
+// CHECK: %struct.{{[a-zA-Z0-9]+}} = type { double, ppc_fp128 }
+
+long double test (struct S x)
+{
+ return x.b;
+}
+
+// CHECK: %{{[0-9]}} = load ppc_fp128* %{{[a-zA-Z0-9]+}}, align 16