llvm-6502/include/llvm/CodeGen
Jakob Stoklund Olesen 0253df9a89 After splitting, the remaining LiveInterval may be fragmented into multiple
connected components. These components should be allocated different virtual
registers because there is no reason for them to be allocated together.

Add the ConnectedVNInfoEqClasses class to calculate the connected components,
and move values to new LiveIntervals.

Use it from SplitKit::rewrite by creating new virtual registers for the
components.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116006 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-07 23:34:34 +00:00
..
PBQP Added an additional PBQP problem builder which adds coalescing costs (both between pairs of virtuals, and between virtuals and physicals). 2010-09-21 13:19:36 +00:00
Analysis.h ComputeLinearIndex doesn't need its TLI argument. 2010-10-06 16:18:29 +00:00
AsmPrinter.h Fix linux/msvc build, move include. 2010-09-13 20:04:49 +00:00
BinaryObject.h Make a few more LLVM headers parsable as standalone headers. 2009-11-05 23:01:30 +00:00
CalcSpillWeights.h Implement register class inflation. 2010-08-10 18:37:40 +00:00
CallingConvLower.h Fix eabi calling convention when a 64 bit value shadows r3. 2010-08-06 15:35:32 +00:00
FastISel.h implement rdar://6653118 - fastisel should fold loads where possible. 2010-09-05 02:18:34 +00:00
FunctionLoweringInfo.h Reapply r112623. Included additional check for unused byval argument. 2010-08-31 22:22:42 +00:00
GCMetadata.h Attach a DebugLoc to a GC point in order to get precise information in the JIT of a GC point. 2010-09-24 17:27:50 +00:00
GCMetadataPrinter.h Trailing whitespace. 2010-07-01 01:00:22 +00:00
GCs.h
GCStrategy.h
IntrinsicLowering.h
ISDOpcodes.h This is the first step towards refactoring the x86 vector shuffle code. The 2010-08-20 22:55:05 +00:00
JITCodeEmitter.h Add a "PadTo" field to the emitULEB128Bytes method. This will pad out to the 2010-04-18 00:51:49 +00:00
LatencyPriorityQueue.h Eliminate the use of PriorityQueue and just use a std::vector, 2010-05-26 18:52:00 +00:00
LinkAllAsmWriterComponents.h Make a few more LLVM headers parsable as standalone headers. 2009-11-05 23:01:30 +00:00
LinkAllCodegenComponents.h Moved the PBQP allocator class out of the header and back in to the cpp file to hide the gory details. 2010-09-23 04:28:54 +00:00
LiveInterval.h After splitting, the remaining LiveInterval may be fragmented into multiple 2010-10-07 23:34:34 +00:00
LiveIntervalAnalysis.h Terminator gaps were unused. Might as well delete them. 2010-09-24 23:58:56 +00:00
LiveStackAnalysis.h Reapply r110396, with fixes to appease the Linux buildbot gods. 2010-08-06 18:33:48 +00:00
LiveVariables.h Reapply r110396, with fixes to appease the Linux buildbot gods. 2010-08-06 18:33:48 +00:00
MachineBasicBlock.h Add insertAfter. This should have accompanied previous check-in. 2010-09-21 21:10:42 +00:00
MachineCodeEmitter.h change EH related stuff (other than EH_LABEL) to use MCSymbol 2010-03-14 01:41:15 +00:00
MachineCodeInfo.h Make a few more LLVM headers parsable as standalone headers. 2009-11-05 23:01:30 +00:00
MachineConstantPool.h Add const qualifiers to CodeGen's use of LLVM IR constructs. 2010-04-15 01:51:59 +00:00
MachineDominators.h typoes 2010-09-10 22:25:58 +00:00
MachineFrameInfo.h Add 'const' to getter function. 2010-09-03 18:17:16 +00:00
MachineFunction.h force clients of MachineFunction::getMachineMemOperand to provide a 2010-09-21 04:46:39 +00:00
MachineFunctionAnalysis.h Give MachineModuleInfo an actual Module*. 2010-04-06 00:51:52 +00:00
MachineFunctionPass.h Reapply r110396, with fixes to appease the Linux buildbot gods. 2010-08-06 18:33:48 +00:00
MachineInstr.h Rename DBG_LABEL PROLOG_LABEL, because it's only used during prolog emission and 2010-07-16 22:20:36 +00:00
MachineInstrBuilder.h Add const qualifiers to CodeGen's use of LLVM IR constructs. 2010-04-15 01:51:59 +00:00
MachineJumpTableInfo.h Add explicit keywords. 2010-06-18 19:04:37 +00:00
MachineLocation.h MachineMove ctor doesn't need to to mutate input, add 'const' 2010-03-15 05:55:35 +00:00
MachineLoopInfo.h Reapply r110396, with fixes to appease the Linux buildbot gods. 2010-08-06 18:33:48 +00:00
MachineMemOperand.h convert a couple more places to use the new getStore() 2010-09-21 18:51:21 +00:00
MachineModuleInfo.h Revert r108369, sorting llvm.dbg.declare information by source position, 2010-07-16 17:54:27 +00:00
MachineModuleInfoImpls.h Add a bit along with the MCSymbols stored in the MachineModuleInfo maps that 2010-03-10 22:34:10 +00:00
MachineOperand.h trailing whitespace 2010-09-15 16:08:15 +00:00
MachinePassRegistry.h Sundry dependent-name fixes flagged by clang++. 2009-12-17 23:49:16 +00:00
MachineRegisterInfo.h Add MachineRegisterInfo::constrainRegClass and use it in MachineCSE. 2010-10-06 23:54:39 +00:00
MachineRelocation.h Disable external stubs for X86-32 and X86-64 2010-02-04 19:56:59 +00:00
MachineSSAUpdater.h Combine the implementations of the core part of the SSAUpdater and 2010-05-04 23:18:19 +00:00
MachORelocation.h Make a few more LLVM headers parsable as standalone headers. 2009-11-05 23:01:30 +00:00
ObjectCodeEmitter.h change EH related stuff (other than EH_LABEL) to use MCSymbol 2010-03-14 01:41:15 +00:00
Passes.h Moved the PBQP allocator class out of the header and back in to the cpp file to hide the gory details. 2010-09-23 04:28:54 +00:00
PostRAHazardRecognizer.h Teach if-converter to be more careful with predicating instructions that would 2010-09-10 01:29:16 +00:00
ProcessImplicitDefs.h Reapply r110396, with fixes to appease the Linux buildbot gods. 2010-08-06 18:33:48 +00:00
PseudoSourceValue.h Make PseudoSourceValue's classof recognize 2009-11-16 20:40:06 +00:00
RegAllocPBQP.h Moved the PBQP allocator class out of the header and back in to the cpp file to hide the gory details. 2010-09-23 04:28:54 +00:00
RegAllocRegistry.h
RegisterCoalescer.h Be more forgiving when calculating alias interference for physreg coalescing. 2010-07-06 20:31:51 +00:00
RegisterScavenging.h After r107880, findSurvivorReg() no longer needs to be public. 2010-07-08 17:27:23 +00:00
RuntimeLibcalls.h back-end libcall handling for ATOMIC_SWAP (__sync_lock_test_and_set) 2010-06-18 23:03:10 +00:00
ScheduleDAG.h Change push_all to a non-virtual function and implement it in the 2010-05-26 01:10:55 +00:00
ScheduleHazardRecognizer.h
SchedulerRegistry.h Add an ILP scheduler. This is a register pressure aware scheduler that's 2010-07-24 00:39:05 +00:00
SelectionDAG.h finish pushing MachinePointerInfo through selectiondags. At this point, 2010-09-21 18:58:22 +00:00
SelectionDAGISel.h Rework passing parent pointers into complexpatterns, I forgot 2010-09-21 22:00:25 +00:00
SelectionDAGNodes.h add some helpful accessors. 2010-09-21 05:39:30 +00:00
SlotIndexes.h Remove SlotIndex::PHI_BIT. It is no longer used by anything. 2010-09-25 00:45:18 +00:00
TargetLoweringObjectFileImpl.h nuke dead ivar which was supposed to be committed with r112496 2010-08-30 18:16:27 +00:00
ValueTypes.h Remove untrue comments. 2010-09-07 21:07:59 +00:00
ValueTypes.td fix comments; patch by Edmund Grimley-Evans\! 2010-09-17 17:52:00 +00:00