[LLVMbugs] [Bug 9184] New: PassManager should minimize number of LoopPassManagers

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Wed Feb 9 17:01:45 PST 2011


http://llvm.org/bugs/show_bug.cgi?id=9184

           Summary: PassManager should minimize number of LoopPassManagers
           Product: libraries
           Version: trunk
          Platform: PC
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: Core LLVM classes
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: zwarich at apple.com
                CC: llvmbugs at cs.uiuc.edu


Currently, this analysis usage (taken from LoopStrengthReduce)

  AU.addRequired<LoopInfo>();
  AU.addRequiredID(LoopSimplifyID);
  AU.addRequired<DominatorTree>();
  AU.addRequired<ScalarEvolution>();
  AU.addRequired<IVUsers>();

causes this pass order:

     Natural Loop Information
      Loop Pass Manager
        Canonicalize natural loops
      Scalar Evolution Analysis
      Loop Pass Manager
        Induction Variable Users
        Canonicalize natural loops
        Induction Variable Users
        Loop Strength Reduction

The PassManager should move ScalarEvolution before all of the loop passes,
since they all preserve ScalarEvolution. It is easy enough to fix this by
changing the pass ordering, but in the future this could be done automatically.

-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the llvm-bugs mailing list