Roll r94484 (avoiding RTTI problems in tests) forward again in a way that isn't

broken by setting CXXFLAGS on the command line.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94619 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Jeffrey Yasskin
2010-01-26 23:30:46 +00:00
parent 0c81e34a54
commit 9815582fad
4 changed files with 5 additions and 22 deletions

View File

@ -25,7 +25,6 @@ using namespace llvm;
int dummy; int dummy;
#if 0
namespace { namespace {
struct FunctionEmittedEvent { struct FunctionEmittedEvent {
@ -238,4 +237,3 @@ testing::Environment* const jit_env =
testing::AddGlobalTestEnvironment(new JITEnvironment); testing::AddGlobalTestEnvironment(new JITEnvironment);
} // anonymous namespace } // anonymous namespace
#endif

View File

@ -58,7 +58,6 @@ std::string DumpFunction(const Function *F) {
return Result; return Result;
} }
#if 0
class RecordingJITMemoryManager : public JITMemoryManager { class RecordingJITMemoryManager : public JITMemoryManager {
const OwningPtr<JITMemoryManager> Base; const OwningPtr<JITMemoryManager> Base;
public: public:
@ -179,7 +178,6 @@ public:
return Base->endExceptionTable(F, TableStart, TableEnd, FrameRegister); return Base->endExceptionTable(F, TableStart, TableEnd, FrameRegister);
} }
}; };
#endif
bool LoadAssemblyInto(Module *M, const char *assembly) { bool LoadAssemblyInto(Module *M, const char *assembly) {
SMDiagnostic Error; SMDiagnostic Error;
@ -197,15 +195,11 @@ class JITTest : public testing::Test {
virtual void SetUp() { virtual void SetUp() {
M = new Module("<main>", Context); M = new Module("<main>", Context);
MP = new ExistingModuleProvider(M); MP = new ExistingModuleProvider(M);
#if 0
RJMM = new RecordingJITMemoryManager; RJMM = new RecordingJITMemoryManager;
RJMM->setPoisonMemory(true); RJMM->setPoisonMemory(true);
#endif
std::string Error; std::string Error;
TheJIT.reset(EngineBuilder(MP).setEngineKind(EngineKind::JIT) TheJIT.reset(EngineBuilder(MP).setEngineKind(EngineKind::JIT)
#if 0
.setJITMemoryManager(RJMM) .setJITMemoryManager(RJMM)
#endif
.setErrorStr(&Error).create()); .setErrorStr(&Error).create());
ASSERT_TRUE(TheJIT.get() != NULL) << Error; ASSERT_TRUE(TheJIT.get() != NULL) << Error;
} }
@ -217,9 +211,7 @@ class JITTest : public testing::Test {
LLVMContext Context; LLVMContext Context;
Module *M; // Owned by MP. Module *M; // Owned by MP.
ModuleProvider *MP; // Owned by ExecutionEngine. ModuleProvider *MP; // Owned by ExecutionEngine.
#if 0
RecordingJITMemoryManager *RJMM; RecordingJITMemoryManager *RJMM;
#endif
OwningPtr<ExecutionEngine> TheJIT; OwningPtr<ExecutionEngine> TheJIT;
}; };
@ -438,7 +430,6 @@ TEST_F(JITTest, ModuleDeletion) {
TheJIT->getPointerToFunction(func); TheJIT->getPointerToFunction(func);
TheJIT->deleteModuleProvider(MP); TheJIT->deleteModuleProvider(MP);
#if 0
SmallPtrSet<const void*, 2> FunctionsDeallocated; SmallPtrSet<const void*, 2> FunctionsDeallocated;
for (unsigned i = 0, e = RJMM->deallocateFunctionBodyCalls.size(); for (unsigned i = 0, e = RJMM->deallocateFunctionBodyCalls.size();
i != e; ++i) { i != e; ++i) {
@ -472,7 +463,6 @@ TEST_F(JITTest, ModuleDeletion) {
} }
EXPECT_EQ(RJMM->startExceptionTableCalls.size(), EXPECT_EQ(RJMM->startExceptionTableCalls.size(),
NumTablesDeallocated); NumTablesDeallocated);
#endif
} }
// ARM and PPC still emit stubs for calls since the target may be too far away // ARM and PPC still emit stubs for calls since the target may be too far away
@ -507,18 +497,14 @@ TEST_F(JITTest, NoStubs) {
// We should now allocate no more stubs, we have the code to foo // We should now allocate no more stubs, we have the code to foo
// and the existing stub for bar. // and the existing stub for bar.
#if 0
int stubsBefore = RJMM->stubsAllocated; int stubsBefore = RJMM->stubsAllocated;
#endif
Function *func = M->getFunction("main"); Function *func = M->getFunction("main");
TheJIT->getPointerToFunction(func); TheJIT->getPointerToFunction(func);
Function *bar = M->getFunction("bar"); Function *bar = M->getFunction("bar");
TheJIT->getPointerToFunction(bar); TheJIT->getPointerToFunction(bar);
#if 0
ASSERT_EQ(stubsBefore, RJMM->stubsAllocated); ASSERT_EQ(stubsBefore, RJMM->stubsAllocated);
#endif
} }
#endif // !ARM && !PPC #endif // !ARM && !PPC

View File

@ -14,7 +14,11 @@
# Set up variables for building a unit test. # Set up variables for building a unit test.
ifdef TESTNAME ifdef TESTNAME
REQUIRES_RTTI = 1 CPP.Flags += -DGTEST_HAS_RTTI=0
# gcc's TR1 <tuple> header depends on RTTI, so force googletest to use
# its own tuple implementation. When we import googletest >=1.4.0, we
# can drop this line.
CPP.Flags += -DGTEST_HAS_TR1_TUPLE=0
include $(LEVEL)/Makefile.common include $(LEVEL)/Makefile.common

View File

@ -32,10 +32,6 @@
#include "llvm/Assembly/PrintModulePass.h" #include "llvm/Assembly/PrintModulePass.h"
#include "gtest/gtest.h" #include "gtest/gtest.h"
int dummy;
#if 0
namespace llvm { namespace llvm {
namespace { namespace {
// ND = no deps // ND = no deps
@ -529,4 +525,3 @@ namespace llvm {
} }
} }
#endif