1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-26 14:33:02 +02:00
llvm-mirror/lib/CodeGen/SelectionDAG
Nate Begeman c1a09c7dfa PR2957
ISD::VECTOR_SHUFFLE now stores an array of integers representing the shuffle
mask internal to the node, rather than taking a BUILD_VECTOR of ConstantSDNodes
as the shuffle mask.  A value of -1 represents UNDEF.

In addition to eliminating the creation of illegal BUILD_VECTORS just to 
represent shuffle masks, we are better about canonicalizing the shuffle mask,
resulting in substantially better code for some classes of shuffles.

A clean up of x86 shuffle code, and some canonicalizing in DAGCombiner is next.

llvm-svn: 69952
2009-04-24 03:42:54 +00:00
..
CallingConvLower.cpp Minor top-level comment fix. 2009-03-31 16:51:18 +00:00
CMakeLists.txt Experimental post-pass scheduling support. Post-pass scheduling 2008-11-19 23:18:57 +00:00
DAGCombiner.cpp PR2957 2009-04-24 03:42:54 +00:00
FastISel.cpp Do not treat beginning of inlined scope as beginning of normal function scope if the location info is missing. 2009-04-16 17:55:30 +00:00
LegalizeDAG.cpp PR2957 2009-04-24 03:42:54 +00:00
LegalizeFloatTypes.cpp Instead of requiring TLI.LowerCallTo to return an ISD::BUILD_PAIR, 2009-04-24 02:40:23 +00:00
LegalizeIntegerTypes.cpp Revise my previous change 68996 as suggested by Duncan. 2009-04-20 17:27:09 +00:00
LegalizeTypes.cpp Fix PR3899: add support for extracting floats from vectors 2009-03-29 13:51:06 +00:00
LegalizeTypes.h Soft float support for FREM. 2009-04-08 16:20:57 +00:00
LegalizeTypesGeneric.cpp Don't try to make BUILD_VECTOR operands have the same 2009-04-18 20:16:54 +00:00
LegalizeVectorTypes.cpp PR2957 2009-04-24 03:42:54 +00:00
Makefile Removed trailing whitespace from Makefiles. 2009-01-09 16:44:42 +00:00
ScheduleDAGFast.cpp When scheduling a block in parts, keep track of the overall 2009-02-11 04:27:20 +00:00
ScheduleDAGList.cpp When scheduling a block in parts, keep track of the overall 2009-02-11 04:27:20 +00:00
ScheduleDAGRRList.cpp In the list-burr's pseudo two-addr dependency heuristics, don't 2009-04-16 20:59:02 +00:00
ScheduleDAGSDNodes.cpp Don't set SUnit::hasPhysRegDefs to true unless the defs are 2009-03-23 17:39:36 +00:00
ScheduleDAGSDNodes.h Rename COPY_TO_SUBCLASS to COPY_TO_REGCLASS, and generalize 2009-04-13 21:06:25 +00:00
ScheduleDAGSDNodesEmit.cpp Make X86's copyRegToReg able to handle copies to and from subclasses. 2009-04-20 22:54:34 +00:00
SelectionDAG.cpp PR2957 2009-04-24 03:42:54 +00:00
SelectionDAGBuild.cpp PR2957 2009-04-24 03:42:54 +00:00
SelectionDAGBuild.h Factor out a bit of code that appears in several places into a 2009-04-23 23:13:24 +00:00
SelectionDAGISel.cpp Factor out a bit of code that appears in several places into a 2009-04-23 23:13:24 +00:00
SelectionDAGPrinter.cpp Fix some significant problems with constant pools that resulted in unnecessary paddings between constant pool entries, larger than necessary alignments (e.g. 8 byte alignment for .literal4 sections), and potentially other issues. 2009-03-13 07:51:59 +00:00
TargetLowering.cpp Fix PR3898, which manifests as failures on are an Xcore, 2009-04-18 20:48:07 +00:00