[llvm-commits] [llvm] r56256 - in /llvm/trunk: include/llvm/PassManagerUtils.h utils/PassManagerUtils.cpp

Devang Patel dpatel at apple.com
Tue Sep 16 15:26:45 PDT 2008


Author: dpatel
Date: Tue Sep 16 17:26:44 2008
New Revision: 56256

URL: http://llvm.org/viewvc/llvm-project?rev=56256&view=rev
Log:
Remove.

Removed:
    llvm/trunk/include/llvm/PassManagerUtils.h
    llvm/trunk/utils/PassManagerUtils.cpp

Removed: llvm/trunk/include/llvm/PassManagerUtils.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/PassManagerUtils.h?rev=56255&view=auto

==============================================================================
--- llvm/trunk/include/llvm/PassManagerUtils.h (original)
+++ llvm/trunk/include/llvm/PassManagerUtils.h (removed)
@@ -1,36 +0,0 @@
-//===-- llvm/Support/PassManagerUtils.h -------------------------*- C++ -*-===//
-//
-//                     The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-//
-// This file provides interface to pass manager utilities.
-//
-//===----------------------------------------------------------------------===//
-
-namespace llvm {
-
-class FunctionPassManager;
-class PassManager;
-
-/// AddOptimizationPasses - This routine adds optimization passes 
-/// based on selected optimization level, OptLevel. This routine is
-/// used by llvm-gcc and other tools.
-///
-/// OptLevel - Optimization Level
-/// EnableIPO - Enables IPO passes. llvm-gcc enables this when
-///             flag_unit_at_a_time is set.
-/// InlinerSelection - 1 : Add function inliner.
-///                  - 2 : Add AlwaysInliner.
-/// OptLibCalls - Simplify lib calls, if set.
-/// PruneEH - Add PruneEHPass, if set.
-/// UnrollLoop - Unroll loops, if set.
-void AddOptimizationPasses(FunctionPassManager &FPM, PassManager &MPM,
-                           unsigned OptLevel, bool EnableIPO,
-                           unsigned InlinerSelection, bool OptLibCalls,
-                           bool PruneEH, bool UnrollLoop);
-
-}

Removed: llvm/trunk/utils/PassManagerUtils.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/PassManagerUtils.cpp?rev=56255&view=auto

==============================================================================
--- llvm/trunk/utils/PassManagerUtils.cpp (original)
+++ llvm/trunk/utils/PassManagerUtils.cpp (removed)
@@ -1,108 +0,0 @@
-//===-- PassManagerUtils.cpp - --------------------------------------------===//
-//
-//                     The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-//
-// This file implements pass manager utiliy routines.
-//
-//===----------------------------------------------------------------------===//
-
-#include "llvm/PassManagerUtils.h"
-#include "llvm/PassManagers.h"
-#include "llvm/Transforms/Scalar.h"
-#include "llvm/Transforms/IPO.h"
-#include "llvm/Analysis/LoopPass.h"
-
-/// AddOptimizationPasses - This routine adds optimization passes 
-/// based on selected optimization level, OptLevel. This routine is
-/// used by llvm-gcc and other tools.
-///
-/// OptLevel - Optimization Level
-/// EnableIPO - Enables IPO passes. llvm-gcc enables this when
-///             flag_unit_at_a_time is set.
-/// InlinerSelection - 1 : Add function inliner.
-///                  - 2 : Add AlwaysInliner.
-/// OptLibCalls - Simplify lib calls, if set.
-/// PruneEH - Add PruneEHPass, if set.
-/// UnrollLoop - Unroll loops, if set.
-void llvm::AddOptimizationPasses(FunctionPassManager &FPM, PassManager &MPM,
-                                 unsigned OptLevel, bool EnableIPO,
-                                 unsigned InlinerSelection, bool OptLibCalls,
-                                 bool PruneEH, bool UnrollLoop) {
-  if (OptLevel == 0) 
-    return;
-
-  FPM.add(createCFGSimplificationPass());
-  if (OptLevel == 1)
-    FPM.add(createPromoteMemoryToRegisterPass());
-  else
-    FPM.add(createScalarReplAggregatesPass());
-  FPM.add(createInstructionCombiningPass());
-
-  if (EnableIPO)
-    MPM.add(createRaiseAllocationsPass());      // call %malloc -> malloc inst
-  MPM.add(createCFGSimplificationPass());       // Clean up disgusting code
-  MPM.add(createPromoteMemoryToRegisterPass()); // Kill useless allocas
-  if (EnableIPO) {
-    MPM.add(createGlobalOptimizerPass());       // OptLevel out global vars
-    MPM.add(createGlobalDCEPass());             // Remove unused fns and globs
-    MPM.add(createIPConstantPropagationPass()); // IP Constant Propagation
-    MPM.add(createDeadArgEliminationPass());    // Dead argument elimination
-  }
-  MPM.add(createInstructionCombiningPass());    // Clean up after IPCP & DAE
-  MPM.add(createCFGSimplificationPass());       // Clean up after IPCP & DAE
-  if (EnableIPO && PruneEH)
-    MPM.add(createPruneEHPass());               // Remove dead EH info
-  if (InlinerSelection == 1)                    // respect -fno-inline-functions
-    MPM.add(createFunctionInliningPass());      // Inline small functions
-  else if (InlinerSelection == 2)
-    MPM.add(createAlwaysInlinerPass());         // Inline always_inline functions
-  if (OptLevel > 2)
-    MPM.add(createArgumentPromotionPass());   // Scalarize uninlined fn args
-  if (OptLibCalls)
-    MPM.add(createSimplifyLibCallsPass());    // Library Call Optimizations
-  MPM.add(createInstructionCombiningPass());  // Cleanup for scalarrepl.
-  MPM.add(createJumpThreadingPass());         // Thread jumps.
-  MPM.add(createCFGSimplificationPass());     // Merge & remove BBs
-  MPM.add(createScalarReplAggregatesPass());  // Break up aggregate allocas
-  MPM.add(createInstructionCombiningPass());  // Combine silly seq's
-  MPM.add(createCondPropagationPass());       // Propagate conditionals
-  MPM.add(createTailCallEliminationPass());   // Eliminate tail calls
-  MPM.add(createCFGSimplificationPass());     // Merge & remove BBs
-  MPM.add(createReassociatePass());           // Reassociate expressions
-  MPM.add(createLoopRotatePass());            // Rotate Loop
-  MPM.add(createLICMPass());                  // Hoist loop invariants
-  MPM.add(createLoopUnswitchPass());
-  MPM.add(createLoopIndexSplitPass());        // Split loop index
-  MPM.add(createInstructionCombiningPass());  
-  MPM.add(createIndVarSimplifyPass());        // Canonicalize indvars
-  MPM.add(createLoopDeletionPass());          // Delete dead loops
-  if (UnrollLoop)
-    MPM.add(createLoopUnrollPass());          // Unroll small loops
-  MPM.add(createInstructionCombiningPass());  // Clean up after the unroller
-  MPM.add(createGVNPass());                   // Remove redundancies
-  MPM.add(createMemCpyOptPass());             // Remove memcpy / form memset
-  MPM.add(createSCCPPass());                  // Constant prop with SCCP
-  
-  // Run instcombine after redundancy elimination to exploit opportunities
-  // opened up by them.
-  MPM.add(createInstructionCombiningPass());
-  MPM.add(createCondPropagationPass());       // Propagate conditionals
-  MPM.add(createDeadStoreEliminationPass());  // Delete dead stores
-  MPM.add(createAggressiveDCEPass());   // Delete dead instructions
-  MPM.add(createCFGSimplificationPass());     // Merge & remove BBs
-  
-  if (EnableIPO) {
-    MPM.add(createStripDeadPrototypesPass());   // Get rid of dead prototypes
-    MPM.add(createDeadTypeEliminationPass());   // Eliminate dead types
-  }
-  
-  if (OptLevel > 1 && EnableIPO)
-    MPM.add(createConstantMergePass());       // Merge dup global constants 
-  
-  return;
-}





More information about the llvm-commits mailing list