llvm-6502/lib/CodeGen/SelectionDAG
Eli Friedman 76927d7303 Rewrite fast-isel integer cast handling to handle more cases, and to be simpler and more consistent.
The practical effects here are that x86-64 fast-isel can now handle trunc from i8 to i1, and ARM fast-isel can handle many more constructs involving integers narrower than 32 bits (including loads, stores, and many integer casts).

rdar://9437928 .



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132099 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-25 23:49:02 +00:00
..
CMakeLists.txt Removed a bunch of unnecessary target_link_libraries. 2010-09-28 22:39:14 +00:00
DAGCombiner.cpp Revert 121907 (it causes llc crash) and apply original patch from PR9817. 2011-05-23 22:04:42 +00:00
FastISel.cpp Rewrite fast-isel integer cast handling to handle more cases, and to be simpler and more consistent. 2011-05-25 23:49:02 +00:00
FunctionLoweringInfo.cpp Make codegen able to handle values of empty types. This is one way 2011-05-13 15:18:06 +00:00
InstrEmitter.cpp Simplify a bunch of isVirtualRegister() and isPhysicalRegister() logic. 2011-01-10 02:58:51 +00:00
InstrEmitter.h Don't set kill flags for instructions which the scheduler has cloned. 2010-05-14 22:01:14 +00:00
LegalizeDAG.cpp Revert commit 131534 since it seems to have broken several buildbots. 2011-05-18 14:57:56 +00:00
LegalizeFloatTypes.cpp Allow targets to specify a the type of the RHS of a shift parameterized on the type of the LHS. 2011-02-25 21:41:48 +00:00
LegalizeIntegerTypes.cpp Revert commit 126684 "Use the correct shift amount type". It is only the correct 2011-03-04 14:28:59 +00:00
LegalizeTypes.cpp Move ExpandAtomic into the integer expansion routines - it's only used there. 2011-01-11 00:36:08 +00:00
LegalizeTypes.h Revert commit 131534 since it seems to have broken several buildbots. 2011-05-18 14:57:56 +00:00
LegalizeTypesGeneric.cpp Renaming ISD::BIT_CONVERT to ISD::BITCAST to better reflect the LLVM IR concept. 2010-11-23 03:31:01 +00:00
LegalizeVectorOps.cpp Add support for legalizing UINT_TO_FP of vectors on platforms which do 2011-03-19 13:09:10 +00:00
LegalizeVectorTypes.cpp PR9535: add support for splitting and scalarizing vector ISD::FP_ROUND. 2011-03-23 22:18:48 +00:00
Makefile make -fno-rtti the default unless a directory builds with REQUIRES_RTTI. 2010-01-24 20:43:08 +00:00
ScheduleDAGFast.cpp Re-commit 127368 and 127371. They are exonerated. 2011-03-10 00:16:32 +00:00
ScheduleDAGList.cpp Various bits of framework needed for precise machine-level selection 2010-12-24 05:03:26 +00:00
ScheduleDAGRRList.cpp Be careful about scheduling nodes above previous calls. It increase usages of 2011-04-26 21:31:35 +00:00
ScheduleDAGSDNodes.cpp Be careful about scheduling nodes above previous calls. It increase usages of 2011-04-26 21:31:35 +00:00
ScheduleDAGSDNodes.h Added a check in the preRA scheduler for potential interference on a 2011-04-07 19:54:57 +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
SelectionDAG.cpp Remove dead code. 2011-05-24 18:27:52 +00:00
SelectionDAGBuilder.cpp Preserve debug info during iSel by keeping DanglingDebugInfoMap live until end of function. 2011-05-23 17:44:13 +00:00
SelectionDAGBuilder.h Preserve debug info during iSel by keeping DanglingDebugInfoMap live until end of function. 2011-05-23 17:44:13 +00:00
SelectionDAGISel.cpp Remove unused statistical counter. 2011-05-25 21:55:40 +00:00
SelectionDAGPrinter.cpp Pass the graph to the DOTGraphTraits.getEdgeAttributes(). 2011-02-27 04:11:03 +00:00
TargetLowering.cpp Update some currently-disabled code, preparing for eventual use. 2011-05-19 18:48:20 +00:00
TargetSelectionDAGInfo.cpp Implement a bunch more TargetSelectionDAGInfo infrastructure. 2010-05-11 17:31:57 +00:00