llvm-6502/include/llvm/CodeGen
Dan Gohman f06c835f76 Optimize SelectionDAG's AssignTopologicalOrder even further.
Completely eliminate the TopOrder std::vector. Instead, sort
the AllNodes list in place. This also eliminates the need to
call AllNodes.size(), a linear-time operation, before
performing the sort.

Also, eliminate the Sources temporary std::vector, since it
essentially duplicates the sorted result as it is being
built.

This also changes the direction of the topological sort
from bottom-up to top-down. The AllNodes list starts out in
roughly top-down order, so this reduces the amount of
reordering needed. Top-down is also more convenient for
Legalize, and ISel needed only minor adjustments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56867 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-30 18:30:35 +00:00
..
AsmPrinter.h Use generic section-handling stuff to emit constant pool entries 2008-09-24 22:17:59 +00:00
BreakCriticalMachineEdge.h
CallingConvLower.h
DAGISelHeader.h Optimize SelectionDAG's AssignTopologicalOrder even further. 2008-09-30 18:30:35 +00:00
DwarfWriter.h If we have a function with an unreachable statement such that the ending debug 2008-09-26 00:28:12 +00:00
ELFRelocation.h
FastISel.h Fix FastISel to not initialize the PIC-base register multiple times 2008-09-29 21:55:50 +00:00
FileWriters.h
GCMetadata.h
GCMetadataPrinter.h
GCs.h
GCStrategy.h
IntrinsicLowering.h
LinkAllAsmWriterComponents.h
LinkAllCodegenComponents.h
LiveInterval.h Next round of earlyclobber handling. Approach the 2008-09-24 01:07:17 +00:00
LiveIntervalAnalysis.h Re-apply 56835 along with header file changes. 2008-09-30 15:44:16 +00:00
LiveStackAnalysis.h
LiveVariables.h
MachineBasicBlock.h
MachineCodeEmitter.h
MachineConstantPool.h
MachineDominators.h
MachineFrameInfo.h Re-apply 56683 with fixes. 2008-09-27 01:56:22 +00:00
MachineFunction.h
MachineFunctionPass.h
MachineInstr.h Add a method to MachineInstr for testing whether it makes 2008-09-24 00:06:15 +00:00
MachineInstrBuilder.h
MachineJumpTableInfo.h
MachineLocation.h
MachineLoopInfo.h
MachineMemOperand.h
MachineModuleInfo.h
MachineOperand.h Next round of earlyclobber handling. Approach the 2008-09-24 01:07:17 +00:00
MachinePassRegistry.h
MachineRegisterInfo.h
MachineRelocation.h
MachORelocation.h
Passes.h
PseudoSourceValue.h
RegAllocRegistry.h
RegisterCoalescer.h
RegisterScavenging.h
RuntimeLibcalls.h
ScheduleDAG.h Next round of earlyclobber handling. Approach the 2008-09-24 01:07:17 +00:00
SchedulerRegistry.h
SelectionDAG.h Optimize SelectionDAG's AssignTopologicalOrder even further. 2008-09-30 18:30:35 +00:00
SelectionDAGISel.h Optimize SelectionDAG's AssignTopologicalOrder even further. 2008-09-30 18:30:35 +00:00
SelectionDAGNodes.h Rename ConstantSDNode's getSignExtended to getSExtValue, for 2008-09-26 21:54:37 +00:00
ValueTypes.h
ValueTypes.td