- Dec 09, 2008
-
-
Dan Gohman authored
The Cost field is removed. It was only being used in a very limited way, to indicate when the scheduler should attempt to protect a live register, and it isn't really needed to do that. If we ever want the scheduler to start inserting copies in non-prohibitive situations, we'll have to rethink some things anyway. A Latency field is added. Instead of giving each node a single fixed latency, each edge can have its own latency. This will eventually be used to model various micro-architecture properties more accurately. The PointerIntPair class and an internal union are now used, which reduce the overall size. llvm-svn: 60806
-
- Dec 08, 2008
-
-
Dan Gohman authored
llvm-svn: 60707
-
- Dec 04, 2008
-
-
Dan Gohman authored
the main thing this covers is spills to distinct spill slots. llvm-svn: 60517
-
- Nov 24, 2008
-
-
Dan Gohman authored
llvm-svn: 59968
-
- Nov 21, 2008
-
-
Dan Gohman authored
llvm-svn: 59837
-
Dan Gohman authored
llvm-svn: 59836
-
Dan Gohman authored
llvm-svn: 59787
-
Dan Gohman authored
llvm-svn: 59777
-
Dan Gohman authored
some of the latency computation logic out of the SDNode ScheduleDAG code into a TargetInstrItineraries helper method to help with this. llvm-svn: 59761
-
- Nov 20, 2008
-
-
Dan Gohman authored
MachineInstr scheduling DAG, meaning they implicitly depend on all preceding defs. This fixes Benchmarks/Shootout-C++/except and Regression/C++/EH/simple_rethrow in -relocation-model=pic -disable-post-RA-scheduler=false mode. llvm-svn: 59747
-
Dan Gohman authored
is currently off by default, and can be enabled with -disable-post-RA-scheduler=false. This doesn't have a significant impact on most code yet because it doesn't yet do anything to address anti-dependencies and it doesn't attempt to disambiguate memory references. Also, several popular targets don't have pipeline descriptions yet. The majority of the changes here are splitting the SelectionDAG-specific code out of ScheduleDAG, so that ScheduleDAG can be moved to libLLVMCodeGen.a. The interface between ScheduleDAG-using code and the rest of the scheduling code is somewhat rough and will evolve. llvm-svn: 59676
-