llvm-project/llvm/lib/CodeGen/SelectionDAG
Jakob Stoklund Olesen 24abd9d9b6 Encode register class constreaints in inline asm instructions.
The inline asm operand constraint is initially encoded in the virtual
register for the operand, but that register class may change during
coalescing, and the original constraint is lost.

Encode the original register class as part of the flag word for each
inline asm operand.  This makes it possible to recover the actual
constraint required by inline asm, just like we can for normal
instructions.

llvm-svn: 141833
2011-10-12 23:37:29 +00:00
..
CMakeLists.txt Rewrite the CMake build to use explicit dependencies between libraries, 2011-07-29 00:14:25 +00:00
DAGCombiner.cpp Fix SimplifySelectCC to add newly created nodes to the DAGCombiner 2011-09-22 23:01:29 +00:00
FastISel.cpp Fix a thinko that Nick noticed. The previous code actually worked as 2011-10-12 15:56:56 +00:00
FunctionLoweringInfo.cpp Directly point debug info to the stack slot of the arugment, instead of trying to keep track of vreg in which it the arugment is copied. The LiveDebugVariable can keep track of variable's ranges. 2011-09-08 22:59:09 +00:00
InstrEmitter.cpp Simplify EXTRACT_SUBREG emission. 2011-10-05 20:26:40 +00:00
InstrEmitter.h Simplify EXTRACT_SUBREG emission. 2011-10-05 20:26:40 +00:00
LegalizeDAG.cpp Add support for legalization of vector SHL/SRA/SRL instructions 2011-10-11 14:36:35 +00:00
LegalizeFloatTypes.cpp Tweak the handling of MERGE_VALUES nodes: remove the need for 2011-09-23 13:59:22 +00:00
LegalizeIntegerTypes.cpp Cleanup PromoteIntOp_EXTRACT_VECTOR_ELT and PromoteIntRes_SETCC. 2011-09-27 11:16:47 +00:00
LegalizeTypes.cpp Tweak the handling of MERGE_VALUES nodes: remove the need for 2011-09-23 13:59:22 +00:00
LegalizeTypes.h Tweak the handling of MERGE_VALUES nodes: remove the need for 2011-09-23 13:59:22 +00:00
LegalizeTypesGeneric.cpp Tweak the handling of MERGE_VALUES nodes: remove the need for 2011-09-23 13:59:22 +00:00
LegalizeVectorOps.cpp white space cleanups 2011-09-18 10:29:29 +00:00
LegalizeVectorTypes.cpp Tweak the handling of MERGE_VALUES nodes: remove the need for 2011-09-23 13:59:22 +00:00
Makefile make -fno-rtti the default unless a directory builds with REQUIRES_RTTI. 2010-01-24 20:43:08 +00:00
SDNodeDbgValue.h Do not lose debug info of an inlined function argument even if the argument is only used through GEPs. 2011-02-18 22:43:42 +00:00
SDNodeOrdering.h Allow 0 as an order number. Don't assign an order to formal arguments. 2009-12-22 21:35:02 +00:00
ScheduleDAGFast.cpp - Rename TargetInstrDesc, TargetOperandInfo to MCInstrDesc and MCOperandInfo and 2011-06-28 19:10:37 +00:00
ScheduleDAGList.cpp Various bits of framework needed for precise machine-level selection 2010-12-24 05:03:26 +00:00
ScheduleDAGRRList.cpp PreRA scheduler should avoid cloning compares. 2011-09-01 00:54:31 +00:00
ScheduleDAGSDNodes.cpp Rename TargetSubtarget to TargetSubtargetInfo for consistency. 2011-07-01 21:01:15 +00:00
ScheduleDAGSDNodes.h The index stored in the RegDefIter is one after the current index. When getting the index, decrement it so that it points to the current element. Fixes an off-by-one bug encountered when trying to make use of MVT::untyped. 2011-06-27 18:34:12 +00:00
SelectionDAG.cpp Formatting. 2011-10-11 22:59:04 +00:00
SelectionDAGBuilder.cpp Encode register class constreaints in inline asm instructions. 2011-10-12 23:37:29 +00:00
SelectionDAGBuilder.h Remove the old atomic instrinsics. autoupgrade functionality is included with this patch. 2011-10-06 23:20:49 +00:00
SelectionDAGISel.cpp Modify the mapping from landing pad to call sites to accept more than one call 2011-10-05 22:24:35 +00:00
SelectionDAGPrinter.cpp Pass the graph to the DOTGraphTraits.getEdgeAttributes(). 2011-02-27 04:11:03 +00:00
TargetLowering.cpp Use an existing function. 2011-10-12 01:24:51 +00:00
TargetSelectionDAGInfo.cpp Implement a bunch more TargetSelectionDAGInfo infrastructure. 2010-05-11 17:31:57 +00:00