aboutsummaryrefslogtreecommitdiff
path: root/test/CodeGenCXX/conditional-temporaries.cpp
diff options
context:
space:
mode:
authorAnders Carlsson <andersca@mac.com>2010-02-04 17:23:15 +0000
committerAnders Carlsson <andersca@mac.com>2010-02-04 17:23:15 +0000
commit4e3014be0606d6be5554d76f317d5908be3bccfc (patch)
treed4c49c615f003e54e78ac75c11c400900e712218 /test/CodeGenCXX/conditional-temporaries.cpp
parent86a7625062abbd40fffa186f2f5d305cc89615b8 (diff)
Improve conditional temporaries test.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95310 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGenCXX/conditional-temporaries.cpp')
-rw-r--r--test/CodeGenCXX/conditional-temporaries.cpp27
1 files changed, 20 insertions, 7 deletions
diff --git a/test/CodeGenCXX/conditional-temporaries.cpp b/test/CodeGenCXX/conditional-temporaries.cpp
index e9e684ea5a..66fd803c2e 100644
--- a/test/CodeGenCXX/conditional-temporaries.cpp
+++ b/test/CodeGenCXX/conditional-temporaries.cpp
@@ -2,11 +2,12 @@
namespace {
-static int counter;
+static int ctorcalls;
+static int dtorcalls;
struct A {
- A() : i(0) { counter++; }
- ~A() { counter--; }
+ A() : i(0) { ctorcalls++; }
+ ~A() { dtorcalls++; }
int i;
};
@@ -29,8 +30,20 @@ Checker c;
}
-// CHECK: define i32 @_Z10getCounterv()
-int getCounter() {
- // CHECK: ret i32 0
- return counter;
+// CHECK: define i32 @_Z12getCtorCallsv()
+int getCtorCalls() {
+ // CHECK: ret i32 3
+ return ctorcalls;
+}
+
+// CHECK: define i32 @_Z12getDtorCallsv()
+int getDtorCalls() {
+ // CHECK: ret i32 3
+ return dtorcalls;
+}
+
+// CHECK: define zeroext i1 @_Z7successv()
+bool success() {
+ // CHECK: ret i1 true
+ return ctorcalls == dtorcalls;
}