diff options
Diffstat (limited to 'lib/CodeGen')
-rw-r--r-- | lib/CodeGen/IfConversion.cpp | 40 | ||||
-rw-r--r-- | lib/CodeGen/LiveIntervalAnalysis.cpp | 5 |
2 files changed, 21 insertions, 24 deletions
diff --git a/lib/CodeGen/IfConversion.cpp b/lib/CodeGen/IfConversion.cpp index 19ed70d223..a98347b486 100644 --- a/lib/CodeGen/IfConversion.cpp +++ b/lib/CodeGen/IfConversion.cpp @@ -26,26 +26,24 @@ #include "llvm/ADT/STLExtras.h" using namespace llvm; -namespace { - // Hidden options for help debugging. - cl::opt<int> IfCvtFnStart("ifcvt-fn-start", cl::init(-1), cl::Hidden); - cl::opt<int> IfCvtFnStop("ifcvt-fn-stop", cl::init(-1), cl::Hidden); - cl::opt<int> IfCvtLimit("ifcvt-limit", cl::init(-1), cl::Hidden); - cl::opt<bool> DisableSimple("disable-ifcvt-simple", - cl::init(false), cl::Hidden); - cl::opt<bool> DisableSimpleF("disable-ifcvt-simple-false", - cl::init(false), cl::Hidden); - cl::opt<bool> DisableTriangle("disable-ifcvt-triangle", - cl::init(false), cl::Hidden); - cl::opt<bool> DisableTriangleR("disable-ifcvt-triangle-rev", - cl::init(false), cl::Hidden); - cl::opt<bool> DisableTriangleF("disable-ifcvt-triangle-false", - cl::init(false), cl::Hidden); - cl::opt<bool> DisableTriangleFR("disable-ifcvt-triangle-false-rev", - cl::init(false), cl::Hidden); - cl::opt<bool> DisableDiamond("disable-ifcvt-diamond", - cl::init(false), cl::Hidden); -} +// Hidden options for help debugging. +static cl::opt<int> IfCvtFnStart("ifcvt-fn-start", cl::init(-1), cl::Hidden); +static cl::opt<int> IfCvtFnStop("ifcvt-fn-stop", cl::init(-1), cl::Hidden); +static cl::opt<int> IfCvtLimit("ifcvt-limit", cl::init(-1), cl::Hidden); +static cl::opt<bool> DisableSimple("disable-ifcvt-simple", + cl::init(false), cl::Hidden); +static cl::opt<bool> DisableSimpleF("disable-ifcvt-simple-false", + cl::init(false), cl::Hidden); +static cl::opt<bool> DisableTriangle("disable-ifcvt-triangle", + cl::init(false), cl::Hidden); +static cl::opt<bool> DisableTriangleR("disable-ifcvt-triangle-rev", + cl::init(false), cl::Hidden); +static cl::opt<bool> DisableTriangleF("disable-ifcvt-triangle-false", + cl::init(false), cl::Hidden); +static cl::opt<bool> DisableTriangleFR("disable-ifcvt-triangle-false-rev", + cl::init(false), cl::Hidden); +static cl::opt<bool> DisableDiamond("disable-ifcvt-diamond", + cl::init(false), cl::Hidden); STATISTIC(NumSimple, "Number of simple if-conversions performed"); STATISTIC(NumSimpleFalse, "Number of simple (F) if-conversions performed"); @@ -555,7 +553,7 @@ void IfConverter::ScanInstructions(BBInfo &BBI) { BBI.CannotBeCopied = true; bool isPredicated = TII->isPredicated(I); - bool isCondBr = BBI.IsBrAnalyzable && TID->isBranch() && !TID->isBarrier(); + bool isCondBr = BBI.IsBrAnalyzable && TID->isConditionalBranch(); if (!isCondBr) { if (!isPredicated) diff --git a/lib/CodeGen/LiveIntervalAnalysis.cpp b/lib/CodeGen/LiveIntervalAnalysis.cpp index 6701e5b93f..3d0e23c51b 100644 --- a/lib/CodeGen/LiveIntervalAnalysis.cpp +++ b/lib/CodeGen/LiveIntervalAnalysis.cpp @@ -616,8 +616,7 @@ bool LiveIntervals::isReMaterializable(const LiveInterval &li, isLoad = false; const TargetInstrDescriptor *TID = MI->getDesc(); - if ((TID->Flags & M_IMPLICIT_DEF_FLAG) || - tii_->isTriviallyReMaterializable(MI)) { + if (TID->isImplicitDef() || tii_->isTriviallyReMaterializable(MI)) { isLoad = TID->isSimpleLoad(); return true; } @@ -682,7 +681,7 @@ bool LiveIntervals::tryFoldMemoryOperand(MachineInstr* &MI, unsigned MRInfo = 0; const TargetInstrDescriptor *TID = MI->getDesc(); // If it is an implicit def instruction, just delete it. - if (TID->Flags & M_IMPLICIT_DEF_FLAG) { + if (TID->isImplicitDef()) { RemoveMachineInstrFromMaps(MI); vrm.RemoveMachineInstrFromMaps(MI); MI->eraseFromParent(); |