llvm/lib
Bill Schmidt 013cbf2f1a [PowerPC] Support select-cc for VSX
The tests test/CodeGen/Generic/select-cc.ll and
test/CodeGen/PowerPC/select-cc.ll both fail with VSX enabled.  The
problem is that the lowering logic for the SELECT and SELECT_CC
operations doesn't currently support the VSX registers.  This patch
fixes that.

In lib/Target/PowerPC/PPCInstrInfo.td, we have pseudos to handle this
for other register classes.  Similar pseudos are added in
PPCInstrVSX.td (they must be there, because the "vsrc" register class
definition appears there) for the VSRC register class.  The
SELECT_VSRC pseudo is then used in pattern matching for SELECT_CC.

The rest of the patch just adds logic for SELECT_VSRC wherever similar
logic appears for SELECT_VRRC.

There are no new test cases because the existing tests above test
this, along with a variant in test/CodeGen/PowerPC/vsx.ll.

After discussion with Hal, a future patch will add similar _VSFRC
variants to override f64 type handling (currently using F8RC).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@220385 91177308-0d34-0410-b5e6-96231b3b80d8
2014-10-22 13:13:40 +00:00
..
Analysis [InstSimplify] Support constant folding to vector of pointers 2014-10-22 12:18:48 +00:00
AsmParser
Bitcode IR: Reorder metadata bitcode serialization, NFC 2014-10-21 22:27:47 +00:00
CodeGen Fix typo 2014-10-22 00:28:59 +00:00
DebugInfo Constify input argument of RelocVisitor and DWARFContext constructors. NFC. 2014-10-20 20:28:51 +00:00
ExecutionEngine [MCJIT] Defer application of AArch64 MachO GOT relocations until resolve time. 2014-10-21 23:41:15 +00:00
IR Revert "Teach the load analysis to allow finding available values which require" (r220277) 2014-10-21 23:49:52 +00:00
IRReader
LineEditor
Linker
LTO LTO: Document the Boolean argument from r218784 2014-10-02 21:11:04 +00:00
MC Drop support for an old version of ld64 (from darwin 9). 2014-10-21 18:31:09 +00:00
Object [MCJIT] Temporarily revert r220245 - it broke several bots. 2014-10-21 00:24:02 +00:00
Option
ProfileData Reduce double set lookups. NFC. 2014-10-10 15:32:50 +00:00
Support PR21202: Memory leak in Windows RWMutexImpl when using SRWLOCK 2014-10-21 00:34:39 +00:00
TableGen Eliminate some deep std::vector copies. NFC. 2014-10-03 18:33:16 +00:00
Target [PowerPC] Support select-cc for VSX 2014-10-22 13:13:40 +00:00
Transforms Support using sample profiles with partial debug info. 2014-10-22 12:59:00 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile