summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnders Carlsson <andersca@mac.com>2010-01-27 03:22:55 +0000
committerAnders Carlsson <andersca@mac.com>2010-01-27 03:22:55 +0000
commit26809837b935ecf65a7200f56859931c60242e51 (patch)
tree49f19605d3461cad2c0804b7f5ddc24f3a88fa49
parent2a58948dc9e11053473aa950774d13e83e7b93cf (diff)
downloadbcm5719-llvm-26809837b935ecf65a7200f56859931c60242e51.tar.gz
bcm5719-llvm-26809837b935ecf65a7200f56859931c60242e51.zip
Update xcode project.
llvm-svn: 94654
-rw-r--r--clang/test/CodeGenCXX/x86_32-arguments.cpp24
1 files changed, 24 insertions, 0 deletions
diff --git a/clang/test/CodeGenCXX/x86_32-arguments.cpp b/clang/test/CodeGenCXX/x86_32-arguments.cpp
new file mode 100644
index 00000000000..d13c0e4888f
--- /dev/null
+++ b/clang/test/CodeGenCXX/x86_32-arguments.cpp
@@ -0,0 +1,24 @@
+// RUN: %clang_cc1 -triple i386-unknown-unknown -emit-llvm -o - %s | FileCheck %s
+
+// Non-trivial dtors, should both be passed indirectly.
+struct S {
+ ~S();
+ int s;
+};
+
+// CHECK: define void @_Z1fv(%struct.S* noalias sret %
+S f() { return S(); }
+// CHECK: define void @_Z1f1S(%struct.S*)
+void f(S) { }
+
+// Non-trivial dtors, should both be passed indirectly.
+class C {
+ ~C();
+ double c;
+};
+
+// CHECK: define void @_Z1gv(%class.C* noalias sret %
+C g() { return C(); }
+
+// CHECK: define void @_Z1f1C(%class.C*)
+void f(C) { }
OpenPOWER on IntegriCloud