llvm-6502/lib/CodeGen/SelectionDAG
Andrew Trick e0ef509aeb Increased the register pressure limit on x86_64 from 8 to 12
regs. This is the only change in this checkin that may affects the
default scheduler. With better register tracking and heuristics, it
doesn't make sense to artificially lower the register limit so much.

Added -sched-high-latency-cycles and X86InstrInfo::isHighLatencyDef to
give the scheduler a way to account for div and sqrt on targets that
don't have an itinerary. It is currently defaults to 10 (the actual
number doesn't matter much), but only takes effect on non-default
schedulers: list-hybrid and list-ilp.

Added several heuristics that can be individually disabled for the
non-default sched=list-ilp mode. This helps us determine how much
better we can do on a given benchmark than the default
scheduler. Certain compute intensive loops run much faster in this
mode with the right set of heuristics, and it doesn't seem to have
much negative impact elsewhere. Not all of the heuristics are needed,
but we still need to experiment to decide which should be disabled by
default for sched=list-ilp.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127067 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-05 08:00:22 +00:00
..
CMakeLists.txt Removed a bunch of unnecessary target_link_libraries. 2010-09-28 22:39:14 +00:00
DAGCombiner.cpp Can't introduce floating-point immediate constants after legalization. 2011-03-02 19:36:30 +00:00
FastISel.cpp If dbg_declare() or dbg_value() is not lowered by isel then emit DEBUG message instead of creating DBG_VALUE for undefined value in reg0. 2010-12-06 22:39:26 +00:00
FunctionLoweringInfo.cpp There are times when the landing pad won't have a call to 'eh.selector' in 2011-03-03 23:14:05 +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 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
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 r123908; the code in question is completely untested and wrong. 2011-03-03 22:33:23 +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 Renaming ISD::BIT_CONVERT to ISD::BITCAST to better reflect the LLVM IR concept. 2010-11-23 03:31:01 +00:00
LegalizeVectorTypes.cpp Add a few missed unary cases when legalizing vector results. Put some cases 2011-03-01 15:15:43 +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 flags -> glue for selectiondag 2010-12-23 17:24: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 Increased the register pressure limit on x86_64 from 8 to 12 2011-03-05 08:00:22 +00:00
ScheduleDAGSDNodes.cpp Increased the register pressure limit on x86_64 from 8 to 12 2011-03-05 08:00:22 +00:00
ScheduleDAGSDNodes.h Introducing a new method of tracking register pressure. We can't 2011-02-04 03:18:17 +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 Avoid exponential blow-up when printing DAGs. 2011-03-02 23:38:06 +00:00
SelectionDAGBuilder.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
SelectionDAGBuilder.h Revert r124611 - "Keep track of incoming argument's location while emitting LiveIns." 2011-02-21 23:21:26 +00:00
SelectionDAGISel.cpp trailing whitespace. 2011-03-01 01:39:05 +00:00
SelectionDAGPrinter.cpp Pass the graph to the DOTGraphTraits.getEdgeAttributes(). 2011-02-27 04:11:03 +00:00
TargetLowering.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
TargetSelectionDAGInfo.cpp Implement a bunch more TargetSelectionDAGInfo infrastructure. 2010-05-11 17:31:57 +00:00