llvm-project/llvm/lib/CodeGen/SelectionDAG
Jakob Stoklund Olesen 7f91fee62b Be more clever about regclasses in ScheduleDAGSDNodes::EmitCopyFromReg.
If two uses of a CopyFromReg want different regclasses, first try a common
sub-class, then fall back on the copy emitted in AddRegisterOperand. There is
no need for an assert here. The cross-class joiner usually cleans up nicely.

llvm-svn: 79193
2009-08-16 17:40:59 +00:00
..
CMakeLists.txt Lexically order files in CMakeLists.txt files. 2009-07-15 21:08:16 +00:00
CallingConvLower.cpp Rename MVT to EVT, in preparation for splitting SimpleValueType out into its own struct type. 2009-08-10 22:56:29 +00:00
DAGCombiner.cpp Add contexts to some of the MVT APIs. No functionality change yet, just the infrastructure work needed to get the contexts to where they need to be first. 2009-08-12 00:36:31 +00:00
FastISel.cpp Push LLVMContexts through the IntegerType APIs. 2009-08-13 21:58:54 +00:00
LegalizeDAG.cpp Unbreak build. Evan, please make sure my changes are correct. 2009-08-15 20:46:16 +00:00
LegalizeFloatTypes.cpp Add contexts to some of the MVT APIs. No functionality change yet, just the infrastructure work needed to get the contexts to where they need to be first. 2009-08-12 00:36:31 +00:00
LegalizeIntegerTypes.cpp Add contexts to some of the MVT APIs. No functionality change yet, just the infrastructure work needed to get the contexts to where they need to be first. 2009-08-12 00:36:31 +00:00
LegalizeTypes.cpp Allow targets to specify their choice of calling conventions per 2009-08-14 20:10:52 +00:00
LegalizeTypes.h Add contexts to some of the MVT APIs. No functionality change yet, just the infrastructure work needed to get the contexts to where they need to be first. 2009-08-12 00:36:31 +00:00
LegalizeTypesGeneric.cpp Add contexts to some of the MVT APIs. No functionality change yet, just the infrastructure work needed to get the contexts to where they need to be first. 2009-08-12 00:36:31 +00:00
LegalizeVectorOps.cpp Split EVT into MVT and EVT, the former representing _just_ a primitive type, while 2009-08-11 20:47:22 +00:00
LegalizeVectorTypes.cpp Add contexts to some of the MVT APIs. No functionality change yet, just the infrastructure work needed to get the contexts to where they need to be first. 2009-08-12 00:36:31 +00:00
Makefile remove dead makefile flags. 2009-06-24 05:29:56 +00:00
ScheduleDAGFast.cpp Split EVT into MVT and EVT, the former representing _just_ a primitive type, while 2009-08-11 20:47:22 +00:00
ScheduleDAGList.cpp llvm_unreachable->llvm_unreachable(0), LLVM_UNREACHABLE->llvm_unreachable. 2009-07-14 16:55:14 +00:00
ScheduleDAGRRList.cpp Split EVT into MVT and EVT, the former representing _just_ a primitive type, while 2009-08-11 20:47:22 +00:00
ScheduleDAGSDNodes.cpp Add callback to allow target to adjust latency of schedule dependency edge. 2009-08-13 16:05:04 +00:00
ScheduleDAGSDNodes.h Rename COPY_TO_SUBCLASS to COPY_TO_REGCLASS, and generalize 2009-04-13 21:06:25 +00:00
ScheduleDAGSDNodesEmit.cpp Be more clever about regclasses in ScheduleDAGSDNodes::EmitCopyFromReg. 2009-08-16 17:40:59 +00:00
SelectionDAG.cpp Needs to check whether unaligned load / store of i64 is legal here. 2009-08-15 23:41:42 +00:00
SelectionDAGBuild.cpp Simplify this code to not depend as much on CurMBB. 2009-08-15 02:06:22 +00:00
SelectionDAGBuild.h Rename MVT to EVT, in preparation for splitting SimpleValueType out into its own struct type. 2009-08-10 22:56:29 +00:00
SelectionDAGISel.cpp Push LLVMContexts through the IntegerType APIs. 2009-08-13 21:58:54 +00:00
SelectionDAGPrinter.cpp Split EVT into MVT and EVT, the former representing _just_ a primitive type, while 2009-08-11 20:47:22 +00:00
TargetLowering.cpp Unbreak build. Evan, please make sure my changes are correct. 2009-08-15 20:46:16 +00:00