[llvm] r226994 - [PM] Pull the two helpers for this pass into static functions. There are

Chandler Carruth chandlerc at gmail.com
Sat Jan 24 02:39:24 PST 2015


Author: chandlerc
Date: Sat Jan 24 04:39:24 2015
New Revision: 226994

URL: http://llvm.org/viewvc/llvm-project?rev=226994&view=rev
Log:
[PM] Pull the two helpers for this pass into static functions. There are
no members for them to use.

Also, make them accept references as there is no possibility of a null
pointer.

Modified:
    llvm/trunk/lib/Transforms/Scalar/LowerExpectIntrinsic.cpp

Modified: llvm/trunk/lib/Transforms/Scalar/LowerExpectIntrinsic.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Scalar/LowerExpectIntrinsic.cpp?rev=226994&r1=226993&r2=226994&view=diff
==============================================================================
--- llvm/trunk/lib/Transforms/Scalar/LowerExpectIntrinsic.cpp (original)
+++ llvm/trunk/lib/Transforms/Scalar/LowerExpectIntrinsic.cpp Sat Jan 24 04:39:24 2015
@@ -47,11 +47,6 @@ namespace {
 /// terminators. It then removes the expect intrinsics from the IR so the rest
 /// of the optimizer can ignore them.
 class LowerExpectIntrinsic : public FunctionPass {
-
-  bool HandleSwitchExpect(SwitchInst *SI);
-
-  bool HandleIfExpect(BranchInst *BI);
-
 public:
   static char ID;
   LowerExpectIntrinsic() : FunctionPass(ID) {
@@ -62,8 +57,8 @@ public:
 };
 }
 
-bool LowerExpectIntrinsic::HandleSwitchExpect(SwitchInst *SI) {
-  CallInst *CI = dyn_cast<CallInst>(SI->getCondition());
+static bool handleSwitchExpect(SwitchInst &SI) {
+  CallInst *CI = dyn_cast<CallInst>(SI.getCondition());
   if (!CI)
     return false;
 
@@ -76,25 +71,25 @@ bool LowerExpectIntrinsic::HandleSwitchE
   if (!ExpectedValue)
     return false;
 
-  SwitchInst::CaseIt Case = SI->findCaseValue(ExpectedValue);
-  unsigned n = SI->getNumCases(); // +1 for default case.
+  SwitchInst::CaseIt Case = SI.findCaseValue(ExpectedValue);
+  unsigned n = SI.getNumCases(); // +1 for default case.
   std::vector<uint32_t> Weights(n + 1);
 
   Weights[0] =
-      Case == SI->case_default() ? LikelyBranchWeight : UnlikelyBranchWeight;
+      Case == SI.case_default() ? LikelyBranchWeight : UnlikelyBranchWeight;
   for (unsigned i = 0; i != n; ++i)
     Weights[i + 1] =
         i == Case.getCaseIndex() ? LikelyBranchWeight : UnlikelyBranchWeight;
 
-  SI->setMetadata(LLVMContext::MD_prof,
-                  MDBuilder(CI->getContext()).createBranchWeights(Weights));
+  SI.setMetadata(LLVMContext::MD_prof,
+                 MDBuilder(CI->getContext()).createBranchWeights(Weights));
 
-  SI->setCondition(ArgValue);
+  SI.setCondition(ArgValue);
   return true;
 }
 
-bool LowerExpectIntrinsic::HandleIfExpect(BranchInst *BI) {
-  if (BI->isUnconditional())
+static bool handleBranchExpect(BranchInst &BI) {
+  if (BI.isUnconditional())
     return false;
 
   // Handle non-optimized IR code like:
@@ -108,9 +103,9 @@ bool LowerExpectIntrinsic::HandleIfExpec
 
   CallInst *CI;
 
-  ICmpInst *CmpI = dyn_cast<ICmpInst>(BI->getCondition());
+  ICmpInst *CmpI = dyn_cast<ICmpInst>(BI.getCondition());
   if (!CmpI) {
-    CI = dyn_cast<CallInst>(BI->getCondition());
+    CI = dyn_cast<CallInst>(BI.getCondition());
   } else {
     if (CmpI->getPredicate() != CmpInst::ICMP_NE)
       return false;
@@ -139,12 +134,12 @@ bool LowerExpectIntrinsic::HandleIfExpec
   else
     Node = MDB.createBranchWeights(UnlikelyBranchWeight, LikelyBranchWeight);
 
-  BI->setMetadata(LLVMContext::MD_prof, Node);
+  BI.setMetadata(LLVMContext::MD_prof, Node);
 
   if (CmpI)
     CmpI->setOperand(0, ArgValue);
   else
-    BI->setCondition(ArgValue);
+    BI.setCondition(ArgValue);
   return true;
 }
 
@@ -154,10 +149,10 @@ bool LowerExpectIntrinsic::runOnFunction
 
     // Create "block_weights" metadata.
     if (BranchInst *BI = dyn_cast<BranchInst>(BB->getTerminator())) {
-      if (HandleIfExpect(BI))
+      if (handleBranchExpect(*BI))
         IfHandled++;
     } else if (SwitchInst *SI = dyn_cast<SwitchInst>(BB->getTerminator())) {
-      if (HandleSwitchExpect(SI))
+      if (handleSwitchExpect(*SI))
         IfHandled++;
     }
 





More information about the llvm-commits mailing list