From eaa35bb794fc45df83fef6eada35783739a4030f Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Thu, 23 Oct 2003 18:25:57 +0000 Subject: [PATCH] Turn on the IPCP pass by default. It has passed all of the tests git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9435 91177308-0d34-0410-b5e6-96231b3b80d8 --- tools/gccas/gccas.cpp | 4 ++++ tools/gccld/GenerateCode.cpp | 3 +++ 2 files changed, 7 insertions(+) diff --git a/tools/gccas/gccas.cpp b/tools/gccas/gccas.cpp index 6799ed6d6b8..d97c716da1e 100644 --- a/tools/gccas/gccas.cpp +++ b/tools/gccas/gccas.cpp @@ -56,8 +56,12 @@ void AddConfiguredTransformationPasses(PassManager &PM) { PM.add(createVerifierPass()); // Verify that input is correct addPass(PM, createLowerSetJmpPass()); // Lower llvm.setjmp/.longjmp addPass(PM, createFunctionResolvingPass()); // Resolve (...) functions + addPass(PM, createCFGSimplificationPass()); // Clean up disgusting code addPass(PM, createRaiseAllocationsPass()); // call %malloc -> malloc inst addPass(PM, createGlobalDCEPass()); // Remove unused globals + addPass(PM, createIPConstantPropagationPass());// IP Constant Propagation + addPass(PM, createDeadArgEliminationPass()); // Dead argument elimination + addPass(PM, createPruneEHPass()); // Remove dead EH info if (!DisableInline) diff --git a/tools/gccld/GenerateCode.cpp b/tools/gccld/GenerateCode.cpp index d1a009b4118..ef072877314 100644 --- a/tools/gccld/GenerateCode.cpp +++ b/tools/gccld/GenerateCode.cpp @@ -68,6 +68,9 @@ GenerateBytecode (Module *M, bool Strip, bool Internalize, std::ostream *Out) { Passes.add(createInternalizePass()); } + // Propagate constants at call sites into the functions they call. + Passes.add(createIPConstantPropagationPass()); + // Remove unused arguments from functions... Passes.add(createDeadArgEliminationPass()); -- 2.34.1