Go to file
Chen Li d715310162 [IndVarSimplify] Rewrite loop exit values with their initial values from loop preheader
Summary:
This patch adds support to check if a loop has loop invariant conditions which lead to loop exits. If so, we know that if the exit path is taken, it is at the first loop iteration. If there is an induction variable used in that exit path whose value has not been updated, it will keep its initial value passing from loop preheader. We can therefore rewrite the exit value with
its initial value. This will help remove phis created by LCSSA and enable other optimizations like loop unswitch.


Reviewers: sanjoy

Subscribers: llvm-commits

Differential Revision: http://reviews.llvm.org/D13974

llvm-svn: 251839
2015-11-02 22:00:15 +00:00
clang watchOS & tvOS: add a few more tests. 2015-11-02 21:14:48 +00:00
clang-tools-extra Make the modernize-loop-convert's const-detection smarter. 2015-11-02 17:02:52 +00:00
compiler-rt Revert "Apply modernize-use-default to compiler-rt." 2015-10-30 18:52:31 +00:00
debuginfo-tests New round of fixes for "Always compile debuginfo-tests for the host triple" 2014-10-18 23:47:59 +00:00
libclc integer: remove explicit casts from _MIN definitions 2015-10-06 19:12:12 +00:00
libcxx Make reverse() call iter_swap like the standard says, instead of calling swap directly. No real change. 2015-11-02 21:34:25 +00:00
libcxxabi Fix LIBCXXABI_HAS_NO_THREADS configuration. 2015-10-14 19:21:38 +00:00
libunwind Add FreeBSD _Unwind_Ptr typedef 2015-10-16 19:40:09 +00:00
lld Make a method static. NFC. 2015-11-02 14:33:11 +00:00
lldb Change ValueObject::IsLogicalTrue so that it starts by asking the applicable Language plugin before using the C-style rule 2015-11-02 21:52:05 +00:00
llgo [llgo] irgen: always use TargetMachine's data layout 2015-09-25 06:28:14 +00:00
llvm [IndVarSimplify] Rewrite loop exit values with their initial values from loop preheader 2015-11-02 22:00:15 +00:00
openmp [OPENMP] Add dependency to clang/clang-headers etc. for in-tree build of libomp. 2015-11-02 13:43:32 +00:00
polly ScopInfo: Bail out in case of mismatching array dimension sizes 2015-11-02 11:29:32 +00:00