[llvm-commits] [llvm] r132504 - in /llvm/trunk/test: FrontendC++/unnamed-addr.cpp FrontendC/unnamed-addr.c
Eli Friedman
eli.friedman at gmail.com
Fri Jun 3 10:00:20 PDT 2011
On Thu, Jun 2, 2011 at 3:26 PM, Bill Wendling <isanbard at gmail.com> wrote:
> Author: void
> Date: Thu Jun 2 17:26:15 2011
> New Revision: 132504
>
> URL: http://llvm.org/viewvc/llvm-project?rev=132504&view=rev
> Log:
> This should have been a C++ testcase.
>
> Added:
> llvm/trunk/test/FrontendC++/unnamed-addr.cpp
> - copied, changed from r132495, llvm/trunk/test/FrontendC/unnamed-addr.c
> Removed:
> llvm/trunk/test/FrontendC/unnamed-addr.c
>
This test is apparently failing on Linux; see, for example,
http://google1.osuosl.org:8011/builders/llvm-gcc-i386-linux-selfhost/builds/2721/steps/test.llvm.stage2/logs/unnamed-addr.cpp
.
-Eli
> Copied: llvm/trunk/test/FrontendC++/unnamed-addr.cpp (from r132495, llvm/trunk/test/FrontendC/unnamed-addr.c)
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/FrontendC%2B%2B/unnamed-addr.cpp?p2=llvm/trunk/test/FrontendC%2B%2B/unnamed-addr.cpp&p1=llvm/trunk/test/FrontendC/unnamed-addr.c&r1=132495&r2=132504&rev=132504&view=diff
> ==============================================================================
> --- llvm/trunk/test/FrontendC/unnamed-addr.c (original)
> +++ llvm/trunk/test/FrontendC++/unnamed-addr.cpp Thu Jun 2 17:26:15 2011
> @@ -1,5 +1,6 @@
> -// RUN: %llvmgcc -S %s -o - | FileCheck %s
> +// RUN: %llvmgxx -S %s -o - | FileCheck %s
> // <rdar://problem/9402870>
> +extern "C" {
> typedef struct __TestResult TestResult;
> typedef struct __TestResult* TestResultRef;
>
> @@ -57,6 +58,7 @@
> };
>
> extern const TestImplement TestCallerImplement;
> +}
>
> void PassToFunction(const TestImplement*);
>
> @@ -81,7 +83,7 @@
> return self->numberOfFixtuers;
> }
>
> -// CHECK: @C.0.1526 = internal unnamed_addr constant
> +// CHECK: @_ZZ14TestCaller_runP12__TestCallerP12__TestResultE3C.0 = internal unnamed_addr constant
> // CHECK-NOT: @TestCaseImplement = external unnamed_addr constant %struct.TestImplement
> // CHECK: @TestCaseImplement = external constant %struct.TestImplement
> const TestImplement TestCallerImplement = {
>
> Removed: llvm/trunk/test/FrontendC/unnamed-addr.c
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/FrontendC/unnamed-addr.c?rev=132503&view=auto
> ==============================================================================
> --- llvm/trunk/test/FrontendC/unnamed-addr.c (original)
> +++ llvm/trunk/test/FrontendC/unnamed-addr.c (removed)
> @@ -1,91 +0,0 @@
> -// RUN: %llvmgcc -S %s -o - | FileCheck %s
> -// <rdar://problem/9402870>
> -typedef struct __TestResult TestResult;
> -typedef struct __TestResult* TestResultRef;
> -
> -typedef struct __TestImplement TestImplement;
> -typedef struct __TestImplement* TestImplementRef;
> -
> -typedef char*(*TestNameFunction)(void*);
> -typedef void(*TestRunFunction)(void*,TestResult*);
> -typedef int(*TestCountTestCasesFunction)(void*);
> -
> -struct __TestImplement {
> - TestNameFunction name;
> - TestRunFunction run;
> - TestCountTestCasesFunction countTestCases;
> -};
> -
> -typedef struct __Test Test;
> -typedef struct __Test* TestRef;
> -
> -struct __Test {
> - TestImplement* isa;
> -};
> -
> -typedef struct __TestCase TestCase;
> -typedef struct __TestCase* TestCaseRef;
> -
> -struct __TestCase {
> - TestImplement* isa;
> - const char *name;
> - void(*setUp)(void);
> - void(*tearDown)(void);
> - void(*runTest)(void);
> -};
> -
> -extern const TestImplement TestCaseImplement;
> -
> -typedef struct __TestFixture TestFixture;
> -typedef struct __TestFixture* TestFixtureRef;
> -
> -struct __TestFixture {
> - const char *name;
> - void(*test)(void);
> -};
> -
> -typedef struct __TestCaller TestCaller;
> -typedef struct __TestCaller* TestCallerRef;
> -
> -struct __TestCaller {
> - TestImplement* isa;
> - const char *name;
> - void(*setUp)(void);
> - void(*tearDown)(void);
> - int numberOfFixtuers;
> - TestFixture *fixtuers;
> -};
> -
> -extern const TestImplement TestCallerImplement;
> -
> -void PassToFunction(const TestImplement*);
> -
> -const char* TestCaller_name(TestCaller* self) {
> - return self->name;
> -}
> -
> -void TestCaller_run(TestCaller* self,TestResult* result) {
> - TestCase cs = { (TestImplement*)&TestCaseImplement, 0, 0, 0, 0, };
> - int i;
> - cs.setUp = self->setUp;
> - cs.tearDown = self->tearDown;
> - for (i=0; i<self->numberOfFixtuers; i++) {
> - cs.name = self->fixtuers[i].name;
> - cs.runTest = self->fixtuers[i].test;
> - ((Test*)(void *)&cs)->isa->run((void *)&cs,result);
> - }
> -}
> -
> -int TestCaller_countTestCases(TestCaller* self) {
> - PassToFunction(&TestCallerImplement);
> - return self->numberOfFixtuers;
> -}
> -
> -// CHECK: @C.0.1526 = internal unnamed_addr constant
> -// CHECK-NOT: @TestCaseImplement = external unnamed_addr constant %struct.TestImplement
> -// CHECK: @TestCaseImplement = external constant %struct.TestImplement
> -const TestImplement TestCallerImplement = {
> - (TestNameFunction)TestCaller_name,
> - (TestRunFunction)TestCaller_run,
> - (TestCountTestCasesFunction)TestCaller_countTestCases,
> -};
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
More information about the llvm-commits
mailing list