From: Andrew Trick Date: Sun, 6 Nov 2011 17:59:24 +0000 (+0000) Subject: Release Notes: add a description of -enable-iv-rewrite. X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=5aab6381e4c46fd8d9979f4c4796108bb18a7295;p=oota-llvm.git 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 --- diff --git a/docs/ReleaseNotes.html b/docs/ReleaseNotes.html index 73cbcf81b69..3c7673e34ec 100644 --- a/docs/ReleaseNotes.html +++ b/docs/ReleaseNotes.html @@ -834,6 +834,29 @@ Builder.CreateResume(UnwindData); + +

+Loop Optimization Improvements +

+ +
+

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.

+ +

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.

+
+

Optimizer Improvements