diff options
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()); |