diff options
author | Owen Anderson <resistor@mac.com> | 2012-11-15 00:14:15 +0000 |
---|---|---|
committer | Owen Anderson <resistor@mac.com> | 2012-11-15 00:14:15 +0000 |
commit | 40b6fdb81e12b40dd41c9f9f07befb60ec7291c3 (patch) | |
tree | 467a798d5e6f1847a8bb536c5678b1b50f1ed973 /tools/lto | |
parent | 3427f0aa7ca6979c8646a9b18c1bdab41dcb6eb0 (diff) | |
download | external_llvm-40b6fdb81e12b40dd41c9f9f07befb60ec7291c3.zip external_llvm-40b6fdb81e12b40dd41c9f9f07befb60ec7291c3.tar.gz external_llvm-40b6fdb81e12b40dd41c9f9f07befb60ec7291c3.tar.bz2 |
Add doInitialization and doFinalization methods to ModulePass's, to allow them to be re-initialized and reused on multiple Module's.
Patch by Pedro Artigas.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168008 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/lto')
-rw-r--r-- | tools/lto/LTOCodeGenerator.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/tools/lto/LTOCodeGenerator.cpp b/tools/lto/LTOCodeGenerator.cpp index b1c4f43..d9fa218 100644 --- a/tools/lto/LTOCodeGenerator.cpp +++ b/tools/lto/LTOCodeGenerator.cpp @@ -342,7 +342,9 @@ void LTOCodeGenerator::applyScopeRestrictions() { passes.add(createInternalizePass(mustPreserveList)); // apply scope restrictions + passes.doInitialization(); passes.run(*mergedModule); + passes.doFinalization(); _scopeRestrictionsDone = true; } @@ -397,7 +399,9 @@ bool LTOCodeGenerator::generateObjectFile(raw_ostream &out, } // Run our queue of passes all at once now, efficiently. + passes.doInitialization(); passes.run(*mergedModule); + passes.doFinalization(); // Run the code generator, and write assembly file codeGenPasses->doInitialization(); |