forked from OSchip/llvm-project
Remove -reduce-joining-phys-regs options. Make it on by default.
llvm-svn: 35165
This commit is contained in:
parent
5a040c510b
commit
25d00d545d
|
@ -42,7 +42,6 @@ STATISTIC(numJoins , "Number of interval joins performed");
|
||||||
STATISTIC(numPeep , "Number of identity moves eliminated after coalescing");
|
STATISTIC(numPeep , "Number of identity moves eliminated after coalescing");
|
||||||
STATISTIC(numFolded , "Number of loads/stores folded into instructions");
|
STATISTIC(numFolded , "Number of loads/stores folded into instructions");
|
||||||
STATISTIC(numAborts , "Number of times interval joining aborted");
|
STATISTIC(numAborts , "Number of times interval joining aborted");
|
||||||
static cl::opt<bool> ReduceJoinPhys("reduce-joining-phy-regs", cl::Hidden);
|
|
||||||
|
|
||||||
namespace {
|
namespace {
|
||||||
RegisterPass<LiveIntervals> X("liveintervals", "Live Interval Analysis");
|
RegisterPass<LiveIntervals> X("liveintervals", "Live Interval Analysis");
|
||||||
|
@ -937,8 +936,7 @@ bool LiveIntervals::JoinCopy(MachineInstr *CopyMI,
|
||||||
// virtual register. Once the coalescing is done, it cannot be broken and
|
// virtual register. Once the coalescing is done, it cannot be broken and
|
||||||
// these are not spillable! If the destination interval uses are far away,
|
// these are not spillable! If the destination interval uses are far away,
|
||||||
// think twice about coalescing them!
|
// think twice about coalescing them!
|
||||||
if (ReduceJoinPhys && !mopd->isDead() &&
|
if (!mopd->isDead() && MRegisterInfo::isPhysicalRegister(repSrcReg)) {
|
||||||
MRegisterInfo::isPhysicalRegister(repSrcReg)) {
|
|
||||||
// Small function. No need to worry!
|
// Small function. No need to worry!
|
||||||
unsigned Threshold = allocatableRegs_.count() * 2;
|
unsigned Threshold = allocatableRegs_.count() * 2;
|
||||||
if (r2iMap_.size() <= Threshold)
|
if (r2iMap_.size() <= Threshold)
|
||||||
|
|
Loading…
Reference in New Issue