Go to file
Javed Absar 382f98733a [ConstantFold] Fix defect in constant folding computation for GEP
When the array indexes are all determined by GVN to be constants,
a call is made to constant-folding to optimize/simplify the address
computation.

The constant-folding, however, makes a mistake in that it sometimes reads
back stale Idxs instead of NewIdxs, that it re-computed in previous iteration.
This leads to incorrect addresses coming out of constant-folding to GEP.
A test case is included. The error is only triggered when indexes have particular
patterns that the stale/new index updates interplay matters.

Reviewers: Daniel Berlin
Differential Revision: https://reviews.llvm.org/D30642

llvm-svn: 297317
2017-03-08 23:01:50 +00:00
clang Take into account C++17's noexcept function types during merging -- it should 2017-03-08 23:00:26 +00:00
clang-tools-extra [clang-tidy] readability-function-size: remove default param count threshold 2017-03-08 22:19:55 +00:00
compiler-rt Use correct function signature for strerror_r interceptor 2017-03-08 22:51:03 +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 math: Implement sinh function 2017-02-25 02:46:53 +00:00
libcxx Fix PR32183 - Wrap GCC exception implementation in missing namespace std 2017-03-08 20:06:01 +00:00
libcxxabi Fully Reformat fallback_malloc.cpp 2017-03-04 03:23:15 +00:00
libunwind DARWF: silence some warnings about conversions 2017-03-08 16:03:27 +00:00
lld Remove DefinedSynthetic. 2017-03-08 22:36:28 +00:00
lldb Resubmit FileSystem changes. 2017-03-08 17:56:08 +00:00
llgo [llgo] Remove support for LLVM attributes 2016-12-06 19:22:04 +00:00
llvm [ConstantFold] Fix defect in constant folding computation for GEP 2017-03-08 23:01:50 +00:00
openmp Fix GNU strerror_r check for Android. 2017-03-07 22:18:05 +00:00
parallel-libs [Axccel] Remove -Wno-missing-braces in build 2016-12-19 21:34:07 +00:00
polly [ScopDetection] Only allow SCoP-wide available base pointers. 2017-03-08 15:14:46 +00:00