llvm-6502/include/llvm/CodeGen
Evan Cheng 5b69ebac85 It has finally happened. Spiller is now using live interval info.
This fixes a very subtle bug. vr defined by an implicit_def is allowed overlap with any register since it doesn't actually modify anything. However, if it's used as a two-address use, its live range can be extended and it can be spilled. The spiller must take care not to emit a reload for the vn number that's defined by the implicit_def. This is both a correctness and performance issue.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69743 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-21 22:46:52 +00:00
..
AsmPrinter.h Pass in the std::string parameter instead of returning it by value. 2009-04-10 00:12:49 +00:00
BreakCriticalMachineEdge.h
CallingConvLower.h Clean up formatting, remove trailing whitespace, fix comment typos and 2009-04-17 20:35:10 +00:00
DAGISelHeader.h Generalize one of the SelectionDAG::ReplaceAllUsesWith overloads 2009-04-15 20:06:30 +00:00
DebugLoc.h Print out a new label only if the debug location *tuple* is different. The debug 2009-02-19 09:16:38 +00:00
DwarfWriter.h Construct and emit DW_TAG_inlined_subroutine DIEs for inlined subroutine scopes (only in FastISel mode). 2009-04-15 00:10:26 +00:00
ELFRelocation.h
FastISel.h If FastISel is run and it has known DebugLoc then use it. 2009-04-16 01:33:10 +00:00
FileWriters.h
GCMetadata.h
GCMetadataPrinter.h
GCs.h
GCStrategy.h
IntrinsicLowering.h
LatencyPriorityQueue.h
LinkAllAsmWriterComponents.h
LinkAllCodegenComponents.h
LiveInterval.h Add a new LiveInterval::overlaps(). It checks if the live interval overlaps a range specified by [Start, End). 2009-04-18 08:52:15 +00:00
LiveIntervalAnalysis.h It has finally happened. Spiller is now using live interval info. 2009-04-21 22:46:52 +00:00
LiveStackAnalysis.h
LiveVariables.h
MachineBasicBlock.h Reapply 68073, with fixes. EH Landing-pad basic blocks are not 2009-03-31 18:39:13 +00:00
MachineCodeEmitter.h Add support to the JIT for true non-lazy operation. When a call to a function 2009-02-18 08:31:02 +00:00
MachineConstantPool.h Use CHAR_BIT instead of hard-coding 8 in several places where it 2009-04-01 18:45:54 +00:00
MachineDominators.h
MachineFrameInfo.h Fix a bunch of Doxygen syntax issues. Escape special characters, 2009-03-03 02:55:14 +00:00
MachineFunction.h Move duplicated AddLiveIn function from X86 and ARM backends to be a method 2009-04-20 18:36:57 +00:00
MachineFunctionPass.h Add a new "available_externally" linkage type. This is intended 2009-04-13 05:44:34 +00:00
MachineInstr.h Fix pr3954. The register scavenger asserts for inline assembly with 2009-04-09 17:16:43 +00:00
MachineInstrBuilder.h
MachineJumpTableInfo.h Move MachineJumpTableInfo::ReplaceMBBInJumpTables out of line. 2009-04-15 01:18:49 +00:00
MachineLocation.h
MachineLoopInfo.h
MachineMemOperand.h
MachineModuleInfo.h DebugLabelFolder ruthlessly deletes redundant labels. However, sometimes the redundant labels is referenced by debug info somewhere else. This patch provies a way so that dwarf writer can mark labels as used. 2009-04-10 18:58:59 +00:00
MachineOperand.h Give RemoveRegOperandFromRegInfo a comment and move the 2009-04-15 01:17:37 +00:00
MachinePassRegistry.h
MachineRegisterInfo.h Move MachineRegisterInfo::setRegClass out of line. 2009-04-15 01:19:35 +00:00
MachineRelocation.h
MachORelocation.h
Passes.h
PseudoSourceValue.h
RegAllocRegistry.h
RegisterCoalescer.h Fix a bunch of Doxygen syntax issues. Escape special characters, 2009-03-03 02:55:14 +00:00
RegisterScavenging.h
RuntimeLibcalls.h
ScheduleDAG.h Add a new bit to SUnit to record whether a node has implicit physreg 2009-03-23 16:10:52 +00:00
ScheduleHazardRecognizer.h
SchedulerRegistry.h
SelectionDAG.h Generalize one of the SelectionDAG::ReplaceAllUsesWith overloads 2009-04-15 20:06:30 +00:00
SelectionDAGISel.h
SelectionDAGNodes.h Revise my previous change 68996 as suggested by Duncan. 2009-04-20 17:27:09 +00:00
ValueTypes.h Remove the SimpleTy enumerated type field from the MVT 2009-04-19 06:23:05 +00:00
ValueTypes.td