diff options
Diffstat (limited to 'tools/llvm-ld/Optimize.cpp')
-rw-r--r-- | tools/llvm-ld/Optimize.cpp | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/tools/llvm-ld/Optimize.cpp b/tools/llvm-ld/Optimize.cpp index e6387feaba..f53970371c 100644 --- a/tools/llvm-ld/Optimize.cpp +++ b/tools/llvm-ld/Optimize.cpp @@ -175,12 +175,11 @@ void Optimize(Module* M) { std::auto_ptr<TargetMachine> target; for (unsigned i = 0; i < OptimizationList.size(); ++i) { const PassInfo *Opt = OptimizationList[i]; - if (Opt->getNormalCtor()) - Passes.add(Opt->getNormalCtor()()); + addPass(Passes, Opt->getNormalCtor()()); else if (Opt->getTargetCtor()) { assert(target.get() && "Could not allocate target machine!"); - Passes.add(Opt->getTargetCtor()(*target.get())); + addPass(Passes, Opt->getTargetCtor()(*target.get())); } else std::cerr << "llvm-ld: cannot create pass: " << Opt->getPassName() << "\n"; |