diff options
author | David Majnemer <david.majnemer@gmail.com> | 2014-08-22 07:56:32 +0000 |
---|---|---|
committer | David Majnemer <david.majnemer@gmail.com> | 2014-08-22 07:56:32 +0000 |
commit | 42b83a5e3643c049eb4f89e9ca07de245d2979ea (patch) | |
tree | 342f3edb130a939a4ffcf163bc8e970cec86a362 /llvm/tools/llvm-cov/CodeCoverage.cpp | |
parent | 987f1864caeb3b685e03d78c7316b97c506b649f (diff) | |
download | llvm-42b83a5e3643c049eb4f89e9ca07de245d2979ea.zip llvm-42b83a5e3643c049eb4f89e9ca07de245d2979ea.tar.gz llvm-42b83a5e3643c049eb4f89e9ca07de245d2979ea.tar.bz2 |
InstCombine: Don't unconditionally preserve 'nsw' when shrinking constants
Consider:
%add = add nsw i32 %a, -16777216
%and = and i32 %add, 255
Regardless of whether or not we demand the sign bit of %add, we cannot
replace -16777216 with 2130706432 without also removing 'nsw' from the
instruction.
This fixes PR20377.
llvm-svn: 216261
Diffstat (limited to 'llvm/tools/llvm-cov/CodeCoverage.cpp')
0 files changed, 0 insertions, 0 deletions