llvm-6502/include/llvm/CodeGen
Jakob Stoklund Olesen 0613516b16 Implement the first half of LiveDebugVariables.
Scan the MachineFunction for DBG_VALUE instructions, and replace them with a
data structure similar to LiveIntervals. The live range of a DBG_VALUE is
determined by propagating it down the dominator tree until a new DBG_VALUE is
found. When a DBG_VALUE lives in a register, its live range is confined to the
live range of the register's value.

LiveDebugVariables runs before coalescing, so DBG_VALUEs are not artificially
extended when registers are joined.

The missing half will recreate DBG_VALUE instructions from the intervals when
register allocation is complete.

The pass is disabled by default. It can be enabled with the temporary command
line option -live-debug-variables.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120636 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-02 00:37:37 +00:00
..
PBQP
Analysis.h Enable sibling call optimization of libcalls which are expanded during 2010-11-30 23:55:39 +00:00
AsmPrinter.h Merge System into Support. 2010-11-29 18:16:10 +00:00
BinaryObject.h Merge System into Support. 2010-11-29 18:16:10 +00:00
CalcSpillWeights.h
CallingConvLower.h
FastISel.h
FunctionLoweringInfo.h
GCMetadata.h
GCMetadataPrinter.h
GCs.h
GCStrategy.h
IntrinsicLowering.h
ISDOpcodes.h
JITCodeEmitter.h Merge System into Support. 2010-11-29 18:16:10 +00:00
LatencyPriorityQueue.h
LinkAllAsmWriterComponents.h
LinkAllCodegenComponents.h
LiveInterval.h
LiveIntervalAnalysis.h
LiveStackAnalysis.h
LiveVariables.h
MachineBasicBlock.h
MachineCodeEmitter.h Merge System into Support. 2010-11-29 18:16:10 +00:00
MachineCodeInfo.h Merge System into Support. 2010-11-29 18:16:10 +00:00
MachineConstantPool.h
MachineDominators.h
MachineFrameInfo.h Merge System into Support. 2010-11-29 18:16:10 +00:00
MachineFunction.h
MachineFunctionAnalysis.h
MachineFunctionPass.h
MachineInstr.h
MachineInstrBuilder.h
MachineJumpTableInfo.h
MachineLocation.h
MachineLoopInfo.h
MachineMemOperand.h Merge System into Support. 2010-11-29 18:16:10 +00:00
MachineModuleInfo.h Merge System into Support. 2010-11-29 18:16:10 +00:00
MachineModuleInfoImpls.h
MachineOperand.h Merge System into Support. 2010-11-29 18:16:10 +00:00
MachinePassRegistry.h
MachineRegisterInfo.h
MachineRelocation.h Merge System into Support. 2010-11-29 18:16:10 +00:00
MachineSSAUpdater.h
MachORelocation.h Merge System into Support. 2010-11-29 18:16:10 +00:00
ObjectCodeEmitter.h
Passes.h
PostRAHazardRecognizer.h Merge System into Support. 2010-11-29 18:16:10 +00:00
ProcessImplicitDefs.h
PseudoSourceValue.h
RegAllocPBQP.h
RegAllocRegistry.h
RegisterCoalescer.h Merge System into Support. 2010-11-29 18:16:10 +00:00
RegisterScavenging.h
RuntimeLibcalls.h
ScheduleDAG.h
ScheduleHazardRecognizer.h
SchedulerRegistry.h
SelectionDAG.h
SelectionDAGISel.h
SelectionDAGNodes.h Merge System into Support. 2010-11-29 18:16:10 +00:00
SlotIndexes.h Implement the first half of LiveDebugVariables. 2010-12-02 00:37:37 +00:00
TargetLoweringObjectFileImpl.h
ValueTypes.h Merge System into Support. 2010-11-29 18:16:10 +00:00
ValueTypes.td