llvm-6502/lib/CodeGen/SelectionDAG
Quentin Colombet 24e1b39a24 [SelectionDAG] Teach the vector scalarizer about TRUNCATE.
When a truncate node defines a legal vector type but uses an illegal
vector type, the legalization process was splitting the vector until
<1 x vector> type, but then it was failing to scalarize the node because
it did not know how to handle TRUNCATE.

<rdar://problem/14989896>


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190830 91177308-0d34-0410-b5e6-96231b3b80d8
2013-09-17 00:26:56 +00:00
..
CMakeLists.txt llvm/lib: [CMake] Add explicit dependency to intrinsics_gen. 2012-06-24 13:32:01 +00:00
DAGCombiner.cpp Prevent assert in CombinerGlobalAA with null values 2013-09-15 02:19:49 +00:00
FastISel.cpp Debug info: Fix PR16736 and rdar://problem/14990587. 2013-09-16 23:29:03 +00:00
FunctionLoweringInfo.cpp Debug Info: clean up usage of Verify. 2013-06-28 05:43:10 +00:00
InstrEmitter.cpp Reapply an improved version of r180816/180817. 2013-07-09 20:28:37 +00:00
InstrEmitter.h Revert "Give internal classes hidden visibility." 2013-09-11 18:05:11 +00:00
LegalizeDAG.cpp SelectionDAG: Remove unnecessary uses of TargetLowering::getPointerTy() 2013-08-26 15:06:10 +00:00
LegalizeFloatTypes.cpp Add ExpandFloatOp_FCOPYSIGN to handle ppcf128-related expansions 2013-08-19 06:55:37 +00:00
LegalizeIntegerTypes.cpp SelectionDAG: Remove unnecessary uses of TargetLowering::getPointerTy() 2013-08-26 15:06:10 +00:00
LegalizeTypes.cpp Update makeLibCall to return both the call and the chain associated with the libcall instead of just the call. This allows us to specify libcalls that return void. 2013-08-13 17:54:56 +00:00
LegalizeTypes.h [SelectionDAG] Teach the vector scalarizer about TRUNCATE. 2013-09-17 00:26:56 +00:00
LegalizeTypesGeneric.cpp Remove an over-zealous assertion. A pointer type could be illegal if the target is prepared to custom-legalize pointer operands. This assertion was evaluated before the target would have a chance to do so, making it impossible. 2013-08-27 00:28:23 +00:00
LegalizeVectorOps.cpp Remove pointless assertion after r190376 2013-09-12 01:07:49 +00:00
LegalizeVectorTypes.cpp [SelectionDAG] Teach the vector scalarizer about TRUNCATE. 2013-09-17 00:26:56 +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 Add 'const' qualifier to some arrays. 2013-07-15 08:02:13 +00:00
ScheduleDAGSDNodes.cpp Add a function object to compare the first or second component of a std::pair. 2013-08-24 12:54:27 +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 white spaces and long lines 2013-09-09 22:02:08 +00:00
SelectionDAGBuilder.cpp Revert patches to add case-range support for PR1255. 2013-09-09 19:14:35 +00:00
SelectionDAGBuilder.h Revert "Give internal classes hidden visibility." 2013-09-11 18:05:11 +00:00
SelectionDAGDumper.cpp Add ISD::FROUND for libm round() 2013-08-07 22:49:12 +00:00
SelectionDAGISel.cpp Debug info: Fix PR16736 and rdar://problem/14990587. 2013-09-16 23:29:03 +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 SelectionDAG: create correct BooleanContent constants 2013-09-06 12:38:12 +00:00
TargetSelectionDAGInfo.cpp Move TargetData to DataLayout. 2012-10-08 16:38:25 +00:00