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. llvm-svn: 155552
This commit is contained in:
parent
d11cf9677f
commit
983dd43b15
|
@ -62,11 +62,6 @@ EnableJoining("join-liveintervals",
|
|||
cl::desc("Coalesce copies (default=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>
|
||||
EnablePhysicalJoin("join-physregs",
|
||||
cl::desc("Join physical register copies"),
|
||||
|
@ -1094,14 +1089,10 @@ bool RegisterCoalescer::JoinCopy(MachineInstr *CopyMI, bool &Again) {
|
|||
return false;
|
||||
}
|
||||
} else {
|
||||
// Avoid constraining virtual register regclass too much.
|
||||
if (CP.isCrossClass()) {
|
||||
DEBUG(dbgs() << "\tCross-class to " << CP.getNewRC()->getName() << ".\n");
|
||||
if (DisableCrossClassJoin) {
|
||||
DEBUG(dbgs() << "\tCross-class joins disabled.\n");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
DEBUG({
|
||||
if (CP.isCrossClass())
|
||||
dbgs() << "\tCross-class to " << CP.getNewRC()->getName() << ".\n";
|
||||
});
|
||||
|
||||
// When possible, let DstReg be the larger interval.
|
||||
if (!CP.getSubIdx() && LIS->getInterval(CP.getSrcReg()).ranges.size() >
|
||||
|
|
Loading…
Reference in New Issue