Remove the -disable-cross-class-join option.

Cross-class joins have been normal and fully supported for a while now.
With TableGen generating the getMatchingSuperRegClass() hook, they are
unlikely to cause problems again.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155552 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Jakob Stoklund Olesen 2012-04-25 16:17:50 +00:00
parent a2404e3458
commit 40a2b653e1

View File

@ -62,11 +62,6 @@ EnableJoining("join-liveintervals",
cl::desc("Coalesce copies (default=true)"), cl::desc("Coalesce copies (default=true)"),
cl::init(true)); cl::init(true));
static cl::opt<bool>
DisableCrossClassJoin("disable-cross-class-join",
cl::desc("Avoid coalescing cross register class copies"),
cl::init(false), cl::Hidden);
static cl::opt<bool> static cl::opt<bool>
EnablePhysicalJoin("join-physregs", EnablePhysicalJoin("join-physregs",
cl::desc("Join physical register copies"), cl::desc("Join physical register copies"),
@ -1094,14 +1089,10 @@ bool RegisterCoalescer::JoinCopy(MachineInstr *CopyMI, bool &Again) {
return false; return false;
} }
} else { } else {
// Avoid constraining virtual register regclass too much. DEBUG({
if (CP.isCrossClass()) { if (CP.isCrossClass())
DEBUG(dbgs() << "\tCross-class to " << CP.getNewRC()->getName() << ".\n"); dbgs() << "\tCross-class to " << CP.getNewRC()->getName() << ".\n";
if (DisableCrossClassJoin) { });
DEBUG(dbgs() << "\tCross-class joins disabled.\n");
return false;
}
}
// When possible, let DstReg be the larger interval. // When possible, let DstReg be the larger interval.
if (!CP.getSubIdx() && LIS->getInterval(CP.getSrcReg()).ranges.size() > if (!CP.getSubIdx() && LIS->getInterval(CP.getSrcReg()).ranges.size() >