This patch does the following things: 1. update SymbolicallyEvaluateGEP so that it bails out if it cannot preserve inrange arribute; 2. update llvm/test/Analysis/ConstantFolding/gep.ll to remove UB in it; 3. remove inaccurate comment above ConstantFoldInstOperandsImpl in llvm/lib/Analysis/ConstantFolding.cpp; 4. add a new regression test that makes sure that no optimizations change an inrange GEP in an unexpected way. Patch by Zhaomo Yang! Differential Revision: https://reviews.llvm.org/D51698 llvm-svn: 341888 |
||
|---|---|---|
| .. | ||
| cast-vector.ll | ||
| funnel-shift.ll | ||
| gep-constanfolding-error.ll | ||
| gep-zeroinit-vector.ll | ||
| gep.ll | ||
| timeout.ll | ||
| vector-undef-elts.ll | ||
| vectorgep-crash.ll | ||