[cfe-commits] r94652 - /cfe/trunk/test/CodeGenCXX/default-destructor-synthesis.cpp
Anders Carlsson
andersca at mac.com
Tue Jan 26 19:03:08 PST 2010
Author: andersca
Date: Tue Jan 26 21:03:08 2010
New Revision: 94652
URL: http://llvm.org/viewvc/llvm-project?rev=94652&view=rev
Log:
Fix test/CodeGenCXX/default-destructor-synthesis.cpp not to rely on asm output.
Modified:
cfe/trunk/test/CodeGenCXX/default-destructor-synthesis.cpp
Modified: cfe/trunk/test/CodeGenCXX/default-destructor-synthesis.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGenCXX/default-destructor-synthesis.cpp?rev=94652&r1=94651&r2=94652&view=diff
==============================================================================
--- cfe/trunk/test/CodeGenCXX/default-destructor-synthesis.cpp (original)
+++ cfe/trunk/test/CodeGenCXX/default-destructor-synthesis.cpp Tue Jan 26 21:03:08 2010
@@ -1,58 +1,36 @@
-// RUN: %clang_cc1 -triple x86_64-apple-darwin -std=c++0x -O0 -S %s -o %t-64.s
-// RUN: FileCheck -check-prefix LP64 --input-file=%t-64.s %s
-// RUN: %clang_cc1 -triple i386-apple-darwin -std=c++0x -O0 -S %s -o %t-32.s
-// RUN: FileCheck -check-prefix LP32 -input-file=%t-32.s %s
-
-extern "C" int printf(...);
-
-int count = 1;
+// RUN: %clang_cc1 %s -triple=x86_64-apple-darwin10 -emit-llvm -O2 -o - | FileCheck %s
+static int count = 0;
struct S {
- S() : iS(count++), fS(1.23) {};
- ~S(){printf("S::~S(%d, %f)\n", iS, fS); };
- int iS;
- float fS;
+ S() { count++; }
+ ~S() { count--; }
};
-struct Q {
- Q() : iQ(count++), dQ(2.34) {};
- ~Q(){printf("Q::~Q(%d, %f)\n", iQ, dQ); };
- int iQ;
- double dQ;
+struct P {
+ P() { count++; }
+ ~P() { count--; }
};
-struct P {
- P() : fP(3.45) , iP(count++) {};
- ~P(){printf("P::~P(%d, %f)\n", iP, fP); };
- float fP;
- int iP;
+struct Q {
+ Q() { count++; }
+ ~Q() { count--; }
};
-struct M : Q, P {
+struct M : Q, P {
S s;
-
Q q;
-
- P p;
-
- P p_arr[3];
-
- Q q_arr[2][3];
-
+ P p;
+ P p_arr[3];
+ Q q_arr[2][3];
};
-
-M gm;
-
-int main() {M m1;}
-
-// CHECK-LP64: .globl __ZN1MD1Ev
-// CHECK-LP64-NEXT: .weak_definition __ZN1MD1Ev
-// CHECK-LP64-NEXT: __ZN1MD1Ev:
-// CHECK-LP64: callq __ZN1MC1Ev
-// CHECK-LP64: callq __ZN1MD1Ev
-
-// CHECK-LP32: .globl __ZN1MD1Ev
-// CHECK-LP32-NEXT: .weak_definition __ZN1MD1Ev
-// CHECK-LP32-NEXT:__ZN1MD1Ev:
-// CHECK-LP32: call L__ZN1MC1Ev
-// CHECK-LP32: call L__ZN1MD1Ev
+
+// CHECK: define i32 @_Z1fv() nounwind
+int f() {
+ {
+ count = 1;
+ M a;
+ }
+
+ // CHECK: ret i32 1
+ return count;
+}
More information about the cfe-commits
mailing list