llvm/lib/CodeGen/SelectionDAG
Tom Stellard b7bad852f4 Split SETCC if VSELECT requires splitting too.
This patch is a rewrite of the original patch commited in r194542. Instead of
relying on the type legalizer to do the splitting for us, we now peform the
splitting ourselves in the DAG combiner. This is necessary for the case where
the vector mask is a legal type after promotion and still wouldn't require
splitting.

Patch by: Juergen Ributzka

NOTE: This is a candidate for the 3.4 branch.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@195397 91177308-0d34-0410-b5e6-96231b3b80d8
2013-11-22 00:39:23 +00:00
..
CMakeLists.txt llvm/lib: [CMake] Add explicit dependency to intrinsics_gen. 2012-06-24 13:32:01 +00:00
DAGCombiner.cpp Split SETCC if VSELECT requires splitting too. 2013-11-22 00:39:23 +00:00
FastISel.cpp Avoid illegal integer promotion in fastisel 2013-11-15 19:09:27 +00:00
FunctionLoweringInfo.cpp Debug Info: clean up usage of Verify. 2013-06-28 05:43:10 +00:00
InstrEmitter.cpp Fix patchpoint comments. 2013-11-19 05:05:43 +00:00
InstrEmitter.h Revert "Give internal classes hidden visibility." 2013-09-11 18:05:11 +00:00
LegalizeDAG.cpp Add support for legalizing SETNE/SETEQ by inverting the condition code and the result of the comparison. 2013-11-21 13:24:49 +00:00
LegalizeFloatTypes.cpp Keep TBAA info when rewriting SelectionDAG loads and stores 2013-10-28 11:17:59 +00:00
LegalizeIntegerTypes.cpp Keep TBAA info when rewriting SelectionDAG loads and stores 2013-10-28 11:17:59 +00:00
LegalizeTypes.cpp [DAG] Refactor vector splitting code in SelectionDAG. No functional change intended. 2013-11-19 21:20:17 +00:00
LegalizeTypes.h [DAG] Refactor vector splitting code in SelectionDAG. No functional change intended. 2013-11-19 21:20:17 +00:00
LegalizeTypesGeneric.cpp Split SETCC if VSELECT requires splitting too. 2013-11-22 00:39:23 +00:00
LegalizeVectorOps.cpp Keep TBAA info when rewriting SelectionDAG loads and stores 2013-10-28 11:17:59 +00:00
LegalizeVectorTypes.cpp [DAG] Refactor vector splitting code in SelectionDAG. No functional change intended. 2013-11-19 21:20:17 +00:00
LLVMBuild.txt LLVMBuild: Remove trailing newline, which irked me. 2011-12-12 19:48:00 +00:00
Makefile
ResourcePriorityQueue.cpp Rename variables for consistency. 2013-09-11 00:41:02 +00:00
ScheduleDAGFast.cpp Use SmallVectorImpl& instead of SmallVector to avoid repeating small vector size. 2013-07-14 04:42:23 +00:00
ScheduleDAGRRList.cpp Fix spelling intruction -> instruction. 2013-09-28 11:46:15 +00:00
ScheduleDAGSDNodes.cpp [PATCH] Fix PR17168 (DAG scheduler inserts DBG_VALUE before PHI with fast-isel) 2013-10-18 14:20:11 +00:00
ScheduleDAGSDNodes.h Revert "Give internal classes hidden visibility." 2013-09-11 18:05:11 +00:00
ScheduleDAGVLIW.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
SDNodeDbgValue.h Revert "Give internal classes hidden visibility." 2013-09-11 18:05:11 +00:00
SelectionDAG.cpp [DAG] Refactor vector splitting code in SelectionDAG. No functional change intended. 2013-11-19 21:20:17 +00:00
SelectionDAGBuilder.cpp Fix codegen for null different sized pointer. 2013-11-16 20:24:41 +00:00
SelectionDAGBuilder.h Add addrspacecast instruction. 2013-11-15 01:34:59 +00:00
SelectionDAGDumper.cpp Add addrspacecast instruction. 2013-11-15 01:34:59 +00:00
SelectionDAGISel.cpp Revert r195317 (and r195333), "Teach ISel not to optimize 'optnone' functions." 2013-11-21 10:55:15 +00:00
SelectionDAGPrinter.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
TargetLowering.cpp Lower stackmap intrinsics directly to their target opcode in the DAG builder. 2013-10-31 17:18:24 +00:00
TargetSelectionDAGInfo.cpp Move TargetData to DataLayout. 2012-10-08 16:38:25 +00:00