1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 04:02:41 +01:00
llvm-mirror/include/llvm/CodeGen
Jakob Stoklund Olesen 54b6cd6d38 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.

llvm-svn: 120636
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 Get rid of static constructors for pass registration. Instead, every pass exposes an initializeMyPassFunction(), which 2010-10-19 17:21:58 +00:00
CallingConvLower.h In the calling convention logic, ValVT is always a legal type, 2010-11-04 10:49:57 +00:00
FastISel.h Prune includes. 2010-11-06 11:45:59 +00:00
FunctionLoweringInfo.h
GCMetadata.h
GCMetadataPrinter.h
GCs.h
GCStrategy.h
IntrinsicLowering.h
ISDOpcodes.h Renaming ISD::BIT_CONVERT to ISD::BITCAST to better reflect the LLVM IR concept. 2010-11-23 03:31:01 +00:00
JITCodeEmitter.h Merge System into Support. 2010-11-29 18:16:10 +00:00
LatencyPriorityQueue.h
LinkAllAsmWriterComponents.h
LinkAllCodegenComponents.h This is a prototype of an experimental register allocation 2010-10-22 23:09:15 +00:00
LiveInterval.h Print out the connected components in the verifier after complaining about their 2010-10-29 00:40:57 +00:00
LiveIntervalAnalysis.h RABasic is nearly functionally complete. There are a few remaining 2010-11-10 19:18:47 +00:00
LiveStackAnalysis.h Get rid of static constructors for pass registration. Instead, every pass exposes an initializeMyPassFunction(), which 2010-10-19 17:21:58 +00:00
LiveVariables.h Get rid of static constructors for pass registration. Instead, every pass exposes an initializeMyPassFunction(), which 2010-10-19 17:21:58 +00:00
MachineBasicBlock.h Add SkipPHIsAndLabels from PHIElimination to MachineBasicBlock. It is needed 2010-10-30 01:26:14 +00:00
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 move the pic base symbol stuff up to MachineFunction 2010-11-14 22:48:15 +00:00
MachineFunctionAnalysis.h
MachineFunctionPass.h
MachineInstr.h add some helper methods for asmprinter flags, from PR8417 2010-11-21 08:30:55 +00:00
MachineInstrBuilder.h Initial va_arg support for x86-64. Patch by David Meyer! 2010-10-12 18:00:49 +00:00
MachineJumpTableInfo.h
MachineLocation.h
MachineLoopInfo.h Get rid of static constructors for pass registration. Instead, every pass exposes an initializeMyPassFunction(), which 2010-10-19 17:21:58 +00:00
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 Rename ExpandPseudos to ExpandISelPseudos to help clarify its role. 2010-11-18 18:45:06 +00:00
PostRAHazardRecognizer.h Merge System into Support. 2010-11-29 18:16:10 +00:00
ProcessImplicitDefs.h Get rid of static constructors for pass registration. Instead, every pass exposes an initializeMyPassFunction(), which 2010-10-19 17:21:58 +00:00
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 SDep is POD-like. Shave off a few bytes from SUnit by moving a member around. 2010-11-25 17:50:19 +00:00
ScheduleHazardRecognizer.h
SchedulerRegistry.h
SelectionDAG.h On X86, MEMBARRIER, MFENCE, SFENCE, LFENCE are not target memory intrinsics, 2010-11-20 11:25:00 +00:00
SelectionDAGISel.h Simplify. 2010-10-25 21:31:46 +00:00
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