diff options
author | Oliver Stannard <oliver.stannard@arm.com> | 2014-11-17 10:49:31 +0000 |
---|---|---|
committer | Oliver Stannard <oliver.stannard@arm.com> | 2014-11-17 10:49:31 +0000 |
commit | d29db9b949034de5ee71a445b9aa8cbe20b62f07 (patch) | |
tree | d8cf95d14944227985b183ece25cad186d82df06 /llvm/tools/llvm-objdump/llvm-objdump.cpp | |
parent | 428ceaf90a83cf537de81f95f1a7d1013452ccaf (diff) | |
download | llvm-d29db9b949034de5ee71a445b9aa8cbe20b62f07.zip llvm-d29db9b949034de5ee71a445b9aa8cbe20b62f07.tar.gz llvm-d29db9b949034de5ee71a445b9aa8cbe20b62f07.tar.bz2 |
Fix optimisations of SELECT_CC which assumed result is boolean
Some optimisations in DAGCombiner cause miscompilations for targets that use
TargetLowering::UndefinedBooleanContent, because they assume that the results
of a SELECT_CC node are boolean values, and can be safely ANDed, ORed and
XORed. These optimisations are only valid for targets that use
ZeroOrOneBooleanContent or ZeroOrNegativeOneBooleanContent.
This is a follow-up to D6210/r221693.
llvm-svn: 222123
Diffstat (limited to 'llvm/tools/llvm-objdump/llvm-objdump.cpp')
0 files changed, 0 insertions, 0 deletions