[PATCH] Fix optimisations of SELECT_CC which assumed result is boolean
Oliver Stannard
oliver.stannard at arm.com
Thu Nov 13 07:01:25 PST 2014
Hi jroelofs, arsenm,
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.
http://reviews.llvm.org/D6249
Files:
lib/CodeGen/SelectionDAG/DAGCombiner.cpp
test/CodeGen/ARM/select_xform.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D6249.16157.patch
Type: text/x-patch
Size: 3786 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20141113/540f011a/attachment.bin>
More information about the llvm-commits
mailing list