- Dec 18, 2010
-
-
Jakob Stoklund Olesen authored
llvm-svn: 122132
-
Nick Lewycky authored
lib/CodeGen/RegAllocGreedy.cpp:311: error: unused variable 'PhysReg' [-Wunused-variable] llvm-svn: 122122
-
Jakob Stoklund Olesen authored
createMachineVerifierPass and MachineFunction::verify. The banner is printed before the machine code dump, just like the printer pass. llvm-svn: 122113
-
Jakob Stoklund Olesen authored
RegAllocBase::VerifyEnabled. Run the machine code verifier in a few interesting places during RegAllocGreedy. llvm-svn: 122107
-
Jakob Stoklund Olesen authored
The heuristics split around the largest loop where the current register may be allocated without interference. llvm-svn: 122106
-
- Dec 16, 2010
-
-
Jakob Stoklund Olesen authored
live range splitting around loops guided by register pressure. So far, trySplit() simply prints a lot of debug output. llvm-svn: 121918
-
- Dec 15, 2010
-
-
Jakob Stoklund Olesen authored
llvm-svn: 121807
-
- Dec 14, 2010
-
-
Matt Beaumont-Gay authored
warning in the opt build. llvm-svn: 121791
-
Jakob Stoklund Olesen authored
llvm-svn: 121783
-
Jakob Stoklund Olesen authored
llvm-svn: 121774
-
Jakob Stoklund Olesen authored
llvm-svn: 121741
-
Jakob Stoklund Olesen authored
spill weight. Filter out fixed registers instead. Add support for reassigning an interference that was assigned to an alias. llvm-svn: 121737
-
Jakob Stoklund Olesen authored
llvm-svn: 121736
-
- Dec 11, 2010
-
-
Jakob Stoklund Olesen authored
llvm-svn: 121604
-
Jakob Stoklund Olesen authored
llvm-svn: 121599
-
Nick Lewycky authored
Fix build breakage. llvm-svn: 121596
-
Nick Lewycky authored
lib/CodeGen/RegAllocGreedy.cpp:233: error: unused variable 'TRC' [-Wunused-variable] llvm-svn: 121594
-
- Dec 10, 2010
-
-
Jakob Stoklund Olesen authored
Soon, RegAllocGreedy will start splitting live ranges, and then deferred spilling won't work anyway. llvm-svn: 121591
-
Jakob Stoklund Olesen authored
llvm-svn: 121584
-
Jakob Stoklund Olesen authored
interference check. llvm-svn: 121519
-
- Dec 09, 2010
-
-
Jakob Stoklund Olesen authored
llvm-svn: 121411
-
Andrew Trick authored
heuristic to reshuffle register assignments when we can't find an available reg. llvm-svn: 121388
-
Jakob Stoklund Olesen authored
llvm-svn: 121319
-
- Dec 08, 2010
-
-
Jakob Stoklund Olesen authored
The hint is simply tried first and then forgotten if it couldn't be allocated immediately. llvm-svn: 121306
-
Jakob Stoklund Olesen authored
abstract priority queue interface in subclasses that want to override the priority calculations. Subclasses must provide a getPriority() implementation instead. This approach requires less code as long as priorities are expressable as simple floats, and it avoids the dangers of defining potentially expensive priority comparison functions. It also should speed up priority_queue operations since they no longer have to chase pointers when comparing registers. This is not measurable, though. Preferably, we shouldn't use floats to guide code generation. The use of floats here is derived from the use of floats for spill weights. Spill weights have a dynamic range that doesn't lend itself easily to a fixpoint implementation. When someone invents a stable spill weight representation, it can be reused for allocation priorities. llvm-svn: 121294
-
Jakob Stoklund Olesen authored
llvm-svn: 121283
-
Jakob Stoklund Olesen authored
This new register allocator is initially identical to RegAllocBasic, but it will receive all of the tricks that RegAllocBasic won't get. RegAllocGreedy will eventually replace linear scan. llvm-svn: 121234
-