Having non-undef constants in a final llvm-reduce output is nicer than having undefs. This splits the existing reduce-operands pass into three, one which does the same as the current pass of reducing to undef, and two more to reduce to the constant 1 and the constant 0. Do not reduce to undef if the operand is a ConstantData, and do not reduce 0s to 1s. Reducing GEP operands very frequently causes invalid IR (since types may not match up if we index differently into a struct), so don't touch GEPs. Reviewed By: Meinersbur Differential Revision: https://reviews.llvm.org/D111765 |
||
|---|---|---|
| .. | ||
| deltas | ||
| CMakeLists.txt | ||
| DeltaManager.cpp | ||
| DeltaManager.h | ||
| TestRunner.cpp | ||
| TestRunner.h | ||
| llvm-reduce.cpp | ||