summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGen/x86_64-arguments.c
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test/CodeGen/x86_64-arguments.c')
-rw-r--r--clang/test/CodeGen/x86_64-arguments.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/clang/test/CodeGen/x86_64-arguments.c b/clang/test/CodeGen/x86_64-arguments.c
index 69d3a81dcb4..eed4eb696f3 100644
--- a/clang/test/CodeGen/x86_64-arguments.c
+++ b/clang/test/CodeGen/x86_64-arguments.c
@@ -6,7 +6,10 @@
// RUN: grep 'define double @f4()' %t &&
// RUN: grep 'define x86_fp80 @f5()' %t &&
// RUN: grep 'define void @f6(i8 signext %a0, i16 signext %a1, i32 %a2, i64 %a3, i8\* %a4)' %t &&
-// RUN: grep 'define void @f7(i32 %a0)' %t
+// RUN: grep 'define void @f7(i32 %a0)' %t &&
+// RUN: grep 'type { i64, double }.*type .0' %t &&
+// RUN: grep 'define .0 @f8_1()' %t &&
+// RUN: grep 'define void @f8_2(.0)' %t
char f0(void) {
}
@@ -33,3 +36,11 @@ typedef enum { A, B, C } E;
void f7(E a0) {
}
+
+// Test merging/passing of upper eightbyte with X87 class.
+union u8 {
+ long double a;
+ int b;
+};
+union u8 f8_1() {}
+void f8_2(union u8 a0) {}
OpenPOWER on IntegriCloud