OSDN Git Service

Rename PointsToLocalMemory to PointsToLocalOrConstantMemory to make
authorDuncan Sands <baldrick@free.fr>
Wed, 3 Nov 2010 14:45:05 +0000 (14:45 +0000)
committerDuncan Sands <baldrick@free.fr>
Wed, 3 Nov 2010 14:45:05 +0000 (14:45 +0000)
the code more self-documenting.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118171 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/IPO/FunctionAttrs.cpp

index 9e117da..d464e2e 100644 (file)
@@ -65,7 +65,7 @@ namespace {
       CallGraphSCCPass::getAnalysisUsage(AU);
     }
 
-    bool PointsToLocalMemory(Value *V);
+    bool PointsToLocalOrConstantMemory(Value *V);
   };
 }
 
@@ -79,10 +79,10 @@ INITIALIZE_PASS_END(FunctionAttrs, "functionattrs",
 Pass *llvm::createFunctionAttrsPass() { return new FunctionAttrs(); }
 
 
-/// PointsToLocalMemory - Returns whether the given pointer value points to
-/// memory that is local to the function.  Global constants are considered
-/// local to all functions.
-bool FunctionAttrs::PointsToLocalMemory(Value *V) {
+/// PointsToLocalOrConstantMemory - Returns whether the given pointer value
+/// points to memory that is local to the function, with global constants being
+/// considered local to all functions.
+bool FunctionAttrs::PointsToLocalOrConstantMemory(Value *V) {
   SmallVector<Value*, 16> Worklist;
   unsigned MaxLookup = 8;
 
@@ -179,7 +179,8 @@ bool FunctionAttrs::AddReadAttrs(const CallGraphSCC &SCC) {
             for (CallSite::arg_iterator CI = CS.arg_begin(), CE = CS.arg_end();
                  CI != CE; ++CI) {
               Value *Arg = *CI;
-              if (Arg->getType()->isPointerTy() && !PointsToLocalMemory(Arg))
+              if (Arg->getType()->isPointerTy() &&
+                  !PointsToLocalOrConstantMemory(Arg))
                 // Writes memory.  Just give up.
                 return false;
             }
@@ -188,11 +189,13 @@ bool FunctionAttrs::AddReadAttrs(const CallGraphSCC &SCC) {
           }
       } else if (LoadInst *LI = dyn_cast<LoadInst>(I)) {
         // Ignore non-volatile loads from local memory.
-        if (!LI->isVolatile() && PointsToLocalMemory(LI->getPointerOperand()))
+        if (!LI->isVolatile() &&
+            PointsToLocalOrConstantMemory(LI->getPointerOperand()))
           continue;
       } else if (StoreInst *SI = dyn_cast<StoreInst>(I)) {
         // Ignore non-volatile stores to local memory.
-        if (!SI->isVolatile() && PointsToLocalMemory(SI->getPointerOperand()))
+        if (!SI->isVolatile() &&
+            PointsToLocalOrConstantMemory(SI->getPointerOperand()))
           continue;
       }