diff options
Diffstat (limited to 'llvm/include/llvm/Analysis/AliasAnalysis.h')
-rw-r--r-- | llvm/include/llvm/Analysis/AliasAnalysis.h | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/llvm/include/llvm/Analysis/AliasAnalysis.h b/llvm/include/llvm/Analysis/AliasAnalysis.h index 2770a1a9b277..d4febe6c1db9 100644 --- a/llvm/include/llvm/Analysis/AliasAnalysis.h +++ b/llvm/include/llvm/Analysis/AliasAnalysis.h @@ -60,7 +60,6 @@ class CatchReturnInst; class DominatorTree; class FenceInst; class Function; -class InvokeInst; class LoopInfo; class PreservedAnalyses; class TargetLibraryInfo; @@ -679,7 +678,7 @@ public: /// Checks if functions with the specified behavior are known to only write /// memory (or not access memory at all). - static bool doesNotReadMemory(FunctionModRefBehavior MRB) { + static bool onlyWritesMemory(FunctionModRefBehavior MRB) { return !isRefSet(createModRefInfo(MRB)); } @@ -1268,6 +1267,14 @@ bool isIdentifiedObject(const Value *V); /// IdentifiedObjects. bool isIdentifiedFunctionLocal(const Value *V); +/// Return true if Object memory is not visible after an unwind, in the sense +/// that program semantics cannot depend on Object containing any particular +/// value on unwind. If the RequiresNoCaptureBeforeUnwind out parameter is set +/// to true, then the memory is only not visible if the object has not been +/// captured prior to the unwind. Otherwise it is not visible even if captured. +bool isNotVisibleOnUnwind(const Value *Object, + bool &RequiresNoCaptureBeforeUnwind); + /// A manager for alias analyses. /// /// This class can have analyses registered with it and when run, it will run |