summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGenCXX/new.cpp
diff options
context:
space:
mode:
authorAnders Carlsson <andersca@mac.com>2010-05-03 15:09:17 +0000
committerAnders Carlsson <andersca@mac.com>2010-05-03 15:09:17 +0000
commitd040e6b25a98b33caba830159c567ba413a9ed2b (patch)
tree3eea0833fa5e3d729ae86231959d9e17a901e045 /clang/test/CodeGenCXX/new.cpp
parent3513ea5c1a3550a13c134b8adc72fdc4f4dce978 (diff)
downloadbcm5719-llvm-d040e6b25a98b33caba830159c567ba413a9ed2b.tar.gz
bcm5719-llvm-d040e6b25a98b33caba830159c567ba413a9ed2b.zip
Don't build an aggregate constructor loop when the constructor is trivial.
llvm-svn: 102912
Diffstat (limited to 'clang/test/CodeGenCXX/new.cpp')
-rw-r--r--clang/test/CodeGenCXX/new.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/clang/test/CodeGenCXX/new.cpp b/clang/test/CodeGenCXX/new.cpp
index cc6288575bb..885158f8a05 100644
--- a/clang/test/CodeGenCXX/new.cpp
+++ b/clang/test/CodeGenCXX/new.cpp
@@ -96,3 +96,13 @@ void t11() {
// CHECK: call void @llvm.memset.p0i8.i64(
B* b = new B();
}
+
+struct Empty { };
+
+// We don't need to initialize an empty class.
+void t12() {
+ // CHECK: define void @_Z3t12v
+ // CHECK-NOT: br label
+ // CHECK: ret void
+ (void)new Empty[10];
+}
OpenPOWER on IntegriCloud