[Legalizer] Don't throw away false low half when expanding GT/LT SETCC
authorMichael Kuperstein <mkuper@google.com>
Thu, 1 Sep 2016 23:02:32 +0000 (23:02 +0000)
committerMichael Kuperstein <mkuper@google.com>
Thu, 1 Sep 2016 23:02:32 +0000 (23:02 +0000)
commit7bc54cebeab437eaeb5fb39c876f9d24e38f6f52
treee5304e1a4b9f8eebd96aa0bc287f9072175d2a89
parent8a425f03dd83841b9993953c07accfde7e423915
[Legalizer] Don't throw away false low half when expanding GT/LT SETCC

When expanding a SETCC for which the low half is known to evaluate to false,
we can only throw it away for LT/GT comparisons, not LE/GE.

This fixes PR29170.

Differential Revision: https://reviews.llvm.org/D24151

llvm-svn: 280424
llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
llvm/test/CodeGen/X86/pr29170.ll [new file with mode: 0644]