mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2026-04-26 12:20:42 +00:00
Implement RAGreedy::splitAroundRegion and remove loop splitting.
Region splitting includes loop splitting as a subset, and it is more generic. The splitting heuristics for variables that are live in more than one block are now: 1. Try to create a region that covers multiple basic blocks. 2. Try to create a new live range for each block with multiple uses. 3. Spill. Steps 2 and 3 are similar to what the standard spiller is doing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123853 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -650,7 +650,9 @@ void LiveRange::dump() const {
|
||||
}
|
||||
|
||||
void LiveInterval::print(raw_ostream &OS, const TargetRegisterInfo *TRI) const {
|
||||
OS << PrintReg(reg, TRI) << ',' << weight;
|
||||
OS << PrintReg(reg, TRI);
|
||||
if (weight != 0)
|
||||
OS << ',' << weight;
|
||||
|
||||
if (empty())
|
||||
OS << " EMPTY";
|
||||
|
||||
Reference in New Issue
Block a user