llvm-6502/include/llvm
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
..
ADT add some slice helper methods. 2011-03-02 20:55:51 +00:00
Analysis Remove DIFactory. Patch by Devang. 2011-03-02 20:30:37 +00:00
Assembly
Bitcode Revert PathV2 changes, as sys::fs::unique_file is not finished yet. 2011-03-01 19:50:55 +00:00
CodeGen Teach the register scavenger to take subregs into account when finding a free register. 2011-03-05 00:20:19 +00:00
CompilerDriver
Config cmake: Add xdot.py support as it already exists in autoconf. 2011-02-27 04:11:05 +00:00
ExecutionEngine Support unregistering exception frames of functions when they are removed. 2011-03-04 23:37:39 +00:00
MC Roll out r126425 and r126450 to see if it fixes the failures on the buildbots. 2011-02-25 16:30:32 +00:00
Object
Support Make pred_iterator DefaultConstructible, and add an accessor to 2011-03-02 00:11:28 +00:00
Target Increased the register pressure limit on x86_64 from 8 to 12 2011-03-05 08:00:22 +00:00
Transforms Delete the SimplifyHalfPowrLibCalls pass, which was unused, and 2011-02-28 19:41:14 +00:00
AbstractTypeUser.h
Argument.h
Attributes.h
AutoUpgrade.h
BasicBlock.h
CallGraphSCCPass.h
CallingConv.h Use X86_thiscall calling convention for Win64 as well. 2011-03-03 07:49:07 +00:00
CMakeLists.txt
Constant.h
Constants.h test commit 2011-03-05 02:36:09 +00:00
DerivedTypes.h
Function.h
GlobalAlias.h
GlobalValue.h
GlobalVariable.h
GVMaterializer.h
InitializePasses.h Delete the GEPSplitter experiment. 2011-02-28 19:47:47 +00:00
InlineAsm.h
InstrTypes.h
Instruction.def
Instruction.h
Instructions.h
IntrinsicInst.h
Intrinsics.h
Intrinsics.td
IntrinsicsAlpha.td
IntrinsicsARM.td
IntrinsicsCellSPU.td
IntrinsicsPowerPC.td
IntrinsicsX86.td
IntrinsicsXCore.td Add XCore intrinsic for eeu instruction. 2011-02-24 13:39:18 +00:00
LinkAllPasses.h Delete the GEPSplitter experiment. 2011-02-28 19:47:47 +00:00
LinkAllVMCore.h
Linker.h
LLVMContext.h
Metadata.h Add ArrayRef variant. 2011-03-04 01:20:33 +00:00
Module.h Add a special streamer to libLTO that just records symbols definitions and 2011-03-02 04:14:42 +00:00
OperandTraits.h
Operator.h
Pass.h
PassAnalysisSupport.h
PassManager.h
PassManagers.h
PassRegistry.h
PassSupport.h
SymbolTableListTraits.h
Type.h
TypeSymbolTable.h
Use.h
User.h
Value.h
ValueSymbolTable.h