Release Notes: add a description of -enable-iv-rewrite.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143878 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Andrew Trick 2011-11-06 17:59:24 +00:00
parent 5ced70d8f8
commit 5aab6381e4

View File

@ -834,6 +834,29 @@ Builder.CreateResume(UnwindData);
</div>
<!--=========================================================================-->
<h3>
<a name="loopoptimization">Loop Optimization Improvements</a>
</h3>
<div>
<p>The induction variable simplification pass in 3.0 only modifies
induction variables when profitable. Sign and zero extension
elimination, linear function test replacement, loop unrolling, and
other simplifications that require induction variable analysis have
been generalized so they no longer require loops to be rewritten in a
typically suboptimal form prior to optimization. This new design
preserves more IR level information, avoids undoing earlier loop
optimizations (particularly hand-optimized loops), and no longer
strongly depends on the code generator rewriting loops a second time
in a now optimal form--an intractable problem.</p>
<p>The original behavior can be restored with -mllvm -enable-iv-rewrite;
however, support for this mode will be short lived. As such, bug
reports should be filed for any significant performance regressions
when moving from -mllvm -enable-iv-rewrite to the 3.0 default mode.</p>
</div>
<!--=========================================================================-->
<h3>
<a name="optimizer">Optimizer Improvements</a>