aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tools/gccld/gccld.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/tools/gccld/gccld.cpp b/tools/gccld/gccld.cpp
index f04817f..eadb5f4 100644
--- a/tools/gccld/gccld.cpp
+++ b/tools/gccld/gccld.cpp
@@ -404,6 +404,11 @@ int main(int argc, char **argv) {
//
Passes.add(createGlobalDCEPass());
+ // The FuncResolve pass may leave cruft around if functions were prototyped
+ // differently than they were defined. Remove this cruft.
+ //
+ Passes.add(createInstructionCombiningPass());
+
// Add the pass that writes bytecode to the output file...
std::string RealBytecodeOutput = OutputFilename;
if (!LinkAsLibrary) RealBytecodeOutput += ".bc";