diff options
author | Jonas Paulsson <paulsson@linux.vnet.ibm.com> | 2017-03-16 07:17:12 +0000 |
---|---|---|
committer | Jonas Paulsson <paulsson@linux.vnet.ibm.com> | 2017-03-16 07:17:12 +0000 |
commit | 84319bfc40fa4538c5a4816519b4a7bdcee64b54 (patch) | |
tree | f76307fa54b137b109afc5f1d13d50360e2ada9b /llvm/lib/CodeGen/MachineRegisterInfo.cpp | |
parent | 115c0222829c87afd787ded20a0f729999795bad (diff) | |
download | bcm5719-llvm-84319bfc40fa4538c5a4816519b4a7bdcee64b54.tar.gz bcm5719-llvm-84319bfc40fa4538c5a4816519b4a7bdcee64b54.zip |
[SelectionDAG] Optimize VSELECT->SETCC of incompatible or illegal types.
Don't scalarize VSELECT->SETCC when operands/results needs to be widened,
or when the type of the SETCC operands are different from those of the VSELECT.
(VSELECT SETCC) and (VSELECT (AND/OR/XOR (SETCC,SETCC))) are handled.
The previous splitting of VSELECT->SETCC in DAGCombiner::visitVSELECT() is
no longer needed and has been removed.
Updated tests:
test/CodeGen/ARM/vuzp.ll
test/CodeGen/NVPTX/f16x2-instructions.ll
test/CodeGen/X86/2011-10-19-widen_vselect.ll
test/CodeGen/X86/2011-10-21-widen-cmp.ll
test/CodeGen/X86/psubus.ll
test/CodeGen/X86/vselect-pcmp.ll
Review: Eli Friedman, Simon Pilgrim
https://reviews.llvm.org/D29489
llvm-svn: 297930
Diffstat (limited to 'llvm/lib/CodeGen/MachineRegisterInfo.cpp')
0 files changed, 0 insertions, 0 deletions