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

Chandler Carruth <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                 CC|                            |[email protected]
         Resolution|---                         |FIXED

--- Comment #8 from Chandler Carruth <[email protected]> ---
This was fixed by my recent work to restructure the loop optimizations in LLVM.

Now, both LoopSimplify and LCSSA are function passes that arrange all of the
loop nests in their "canonical" form. SCEV as an analysis doesn't disrupt this
and the loop pass manager doesn't have to be re-built which needlessly re-ran
these passes.

Also, LICM now preserves LCSSA which further reduces the re-runs.

Currently, we compute LCSSA only 3 times, twice in the CGSCC pipeline, and once
afterward for vectorization. This is minimal until we have a loop-instcombine
pass and thus only a single loop pass pipeline in the CGSCC pipeline.

There are still problems where LICM reforms LCSSA too often after mutating the
function body, but that should be tracked separately. There is nothing else to
do here w.r.t. the pass manager.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
LLVMbugs mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/llvmbugs

Reply via email to