diff options
author | Chris Lattner <sabre@nondot.org> | 2003-05-21 19:41:31 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2003-05-21 19:41:31 +0000 |
commit | 2b3ab562f6bf8a6917a27cca152060fa3e82a8d0 (patch) | |
tree | c790d73a31a45f1f507f4fd1ec5a891461632cfc /llvm/tools/bugpoint/ExtractFunction.cpp | |
parent | c42dc745db2aebc0c24b0258e552f924c9cda063 (diff) | |
download | bcm5719-llvm-2b3ab562f6bf8a6917a27cca152060fa3e82a8d0.tar.gz bcm5719-llvm-2b3ab562f6bf8a6917a27cca152060fa3e82a8d0.zip |
Increase odds that this won't bork things
llvm-svn: 6267
Diffstat (limited to 'llvm/tools/bugpoint/ExtractFunction.cpp')
-rw-r--r-- | llvm/tools/bugpoint/ExtractFunction.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/tools/bugpoint/ExtractFunction.cpp b/llvm/tools/bugpoint/ExtractFunction.cpp index 452ddbc24d8..ac893629fb5 100644 --- a/llvm/tools/bugpoint/ExtractFunction.cpp +++ b/llvm/tools/bugpoint/ExtractFunction.cpp @@ -78,6 +78,11 @@ Module *BugDriver::deleteInstructionFromProgram(Instruction *I, /// Module *BugDriver::performFinalCleanups() const { Module *M = CloneModule(Program); + + // Make all functions external, so GlobalDCE doesn't delete them... + for (Module::iterator I = M->begin(), E = M->end(); I != E; ++I) + I->setLinkage(GlobalValue::ExternalLinkage); + PassManager CleanupPasses; CleanupPasses.add(createFunctionResolvingPass()); CleanupPasses.add(createGlobalDCEPass()); |