diff options
Diffstat (limited to 'lib/CodeGen/SimpleRegisterCoalescing.cpp')
-rw-r--r-- | lib/CodeGen/SimpleRegisterCoalescing.cpp | 18 |
1 files changed, 1 insertions, 17 deletions
diff --git a/lib/CodeGen/SimpleRegisterCoalescing.cpp b/lib/CodeGen/SimpleRegisterCoalescing.cpp index f5d85ab454..49f7d9a45f 100644 --- a/lib/CodeGen/SimpleRegisterCoalescing.cpp +++ b/lib/CodeGen/SimpleRegisterCoalescing.cpp @@ -1970,23 +1970,7 @@ bool SimpleRegisterCoalescing::SimpleJoin(LiveInterval &LHS, LiveInterval &RHS){ LHS.addKills(LHSValNo, VNI->kills); LHS.MergeRangesInAsValue(RHS, LHSValNo); - // If either of these intervals was spilled, the weight is the - // weight of the non-spilled interval. This can only happen - // with iterative coalescers. - if (LHS.weight == HUGE_VALF && !TargetRegisterInfo::isPhysicalRegister(LHS.reg)) { - // Remove this assert if you have an iterative coalescer - assert(0 && "Joining to spilled interval"); - LHS.weight = RHS.weight; - } - else if (RHS.weight != HUGE_VALF) { - LHS.weight += RHS.weight; - } - else { - // Remove this assert if you have an iterative coalescer - assert(0 && "Joining from spilled interval"); - } - - // Otherwise the LHS weight stays the same + LHS.ComputeJoinedWeight(RHS); // Update regalloc hint if both are virtual registers. if (TargetRegisterInfo::isVirtualRegister(LHS.reg) && |