PATCH: SelectionDAG: More efficient legalization of unsupported SELECT_CC/SETCC condition codes + Fix NAN handling on R600

Owen Anderson resistor at
Thu Sep 26 15:44:44 PDT 2013



On Sep 12, 2013, at 2:54 PM, Tom Stellard <tom at> wrote:

> Hi,
> The first three patches improve the legalization of SELECT_CC and SETCC
> nodes with illegal conditions.  The current code legalizes
> conditions by lowering to AND/OR opcodes, but for targets like R600
> which support a limited number of conditions (oeq, oge, ogt, and une)
> it is usually better to legalize by either swapping the arguments or
> inverting the condition and swapping the true / false values.
> The last patch fixes the handling of NAN in comparison instructions for
> the R600 target.
> Please Review.
> -Tom
> <0001-SelectionDAG-Clean-up-LegalizeSetCCCondCode-function.patch><0002-SelectionDAG-Try-to-expand-all-condition-codes-using.patch><0003-SelectionDAG-Improve-legalization-of-SELECT_CC-with-.patch><0004-R600-Fix-handling-of-NAN-in-comparison-instructions.patch>

More information about the llvm-commits mailing list