diff options
author | Chris Lattner <sabre@nondot.org> | 2004-11-16 18:59:20 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2004-11-16 18:59:20 +0000 |
commit | 429a9cbc2e29d82e6897ad2a57c69ef5c4bec142 (patch) | |
tree | 920fb4c1cf81962138923329579adc081baeb59f /tools/gccld/GenerateCode.cpp | |
parent | 39a83dc37cfc59bee8def2230fa4956267da6042 (diff) |
Even with -disable-opt we should still internalize and strip if requested.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17903 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/gccld/GenerateCode.cpp')
-rw-r--r-- | tools/gccld/GenerateCode.cpp | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/tools/gccld/GenerateCode.cpp b/tools/gccld/GenerateCode.cpp index df34700725..e604921a90 100644 --- a/tools/gccld/GenerateCode.cpp +++ b/tools/gccld/GenerateCode.cpp @@ -153,14 +153,14 @@ int llvm::GenerateBytecode(Module *M, bool Strip, bool Internalize, // arguments). This pass merges the two functions. addPass(Passes, createFunctionResolvingPass()); - if (!DisableOptimizations) { - if (Internalize) { - // Now that composite has been compiled, scan through the module, looking - // for a main function. If main is defined, mark all other functions - // internal. - addPass(Passes, createInternalizePass()); - } + if (Internalize) { + // Now that composite has been compiled, scan through the module, looking + // for a main function. If main is defined, mark all other functions + // internal. + addPass(Passes, createInternalizePass()); + } + if (!DisableOptimizations) { // Now that we internalized some globals, see if we can hack on them! addPass(Passes, createGlobalOptimizerPass()); @@ -168,12 +168,6 @@ int llvm::GenerateBytecode(Module *M, bool Strip, bool Internalize, // keep one copy of each constant... addPass(Passes, createConstantMergePass()); - // If the -s command line option was specified, strip the symbols out of the - // resulting program to make it smaller. -s is a GCC option that we are - // supporting. - if (Strip) - addPass(Passes, createSymbolStrippingPass()); - // Propagate constants at call sites into the functions they call. addPass(Passes, createIPConstantPropagationPass()); @@ -214,6 +208,12 @@ int llvm::GenerateBytecode(Module *M, bool Strip, bool Internalize, addPass(Passes, createGlobalDCEPass()); } + // If the -s command line option was specified, strip the symbols out of the + // resulting program to make it smaller. -s is a GCC option that we are + // supporting. + if (Strip) + addPass(Passes, createSymbolStrippingPass()); + // Make sure everything is still good. Passes.add(createVerifierPass()); |