Go to file
Adam Nemet c4866d29dd [LAA] Try to prove non-wrapping of pointers if SCEV cannot
Summary:
Scalar evolution does not propagate the non-wrapping flags to values
that are derived from a non-wrapping induction variable because
the non-wrapping property could be flow-sensitive.

This change is a first attempt to establish the non-wrapping property in
some simple cases.  The main idea is to look through the operations
defining the pointer.  As long as we arrive to a non-wrapping AddRec via
a small chain of non-wrapping instruction, the pointer should not wrap
either.

I believe that this essentially is what Andy described in
http://article.gmane.org/gmane.comp.compilers.llvm.cvs/220731 as the way
forward.

Reviewers: aschwaighofer, nadav, sanjoy, atrick

Reviewed By: atrick

Subscribers: llvm-commits

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

llvm-svn: 240798
2015-06-26 17:25:43 +00:00
clang clang-format some of the files in lib/Driver. NFC 2015-06-26 15:47:46 +00:00
clang-tools-extra [clang-tidy] Fix false positives in misc-macro-parentheses checker 2015-06-23 12:45:14 +00:00
compiler-rt [libsanitizer] Delete the unused GetBinaryName() function. 2015-06-26 09:28:24 +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 prepare-builtins: Fix build with LLVM 3.7 2015-06-24 17:03:50 +00:00
libcxx Make support for thread-unsafe C functions optional. 2015-06-24 08:44:38 +00:00
libcxxabi fallback_malloc: silence conversion warning (NFC) 2015-06-03 17:25:35 +00:00
libunwind Fix unw_getcontext() return value on AArch64. 2015-06-25 15:12:46 +00:00
lld Update for llvm changes. 2015-06-26 13:19:38 +00:00
lldb Added expectedFlakey test decorator 2015-06-26 15:13:21 +00:00
llgo [llgo] cmd/llgoi: use line editor 2015-05-23 15:16:09 +00:00
llvm [LAA] Try to prove non-wrapping of pointers if SCEV cannot 2015-06-26 17:25:43 +00:00
openmp Allow machine hierarchy expansion 2015-06-22 15:59:18 +00:00
polly Drop divs before adding array-out-of-bounds assumptions 2015-06-26 12:09:28 +00:00