|
LLVM
3.7.0
|
#include "llvm/ADT/SmallPtrSet.h"#include "llvm/IR/BasicBlock.h"#include "llvm/IR/CallSite.h"#include "llvm/IR/GlobalVariable.h"#include "llvm/IR/IntrinsicInst.h"#include "llvm/Transforms/Utils/GlobalStatus.h"Go to the source code of this file.
Functions | |
| static AtomicOrdering | strongerOrdering (AtomicOrdering X, AtomicOrdering Y) |
| Return the stronger of the two ordering. More... | |
| static bool | analyzeGlobalAux (const Value *V, GlobalStatus &GS, SmallPtrSetImpl< const PHINode * > &PhiUsers) |
|
static |
Definition at line 50 of file GlobalStatus.cpp.
References llvm::GlobalStatus::AccessingFunction, F(), llvm::GlobalStatus::HasMultipleAccessingFunctions, llvm::GlobalStatus::HasNonInstructionUser, I, if(), llvm::GlobalStatus::InitializerStored, llvm::SmallPtrSetImpl< PtrType >::insert(), llvm::GlobalStatus::IsCompared, llvm::GlobalStatus::IsLoaded, llvm::isSafeToDestroyConstant(), llvm::GlobalStatus::Ordering, SI, llvm::GlobalStatus::Stored, llvm::GlobalStatus::StoredOnce, llvm::GlobalStatus::StoredOnceValue, strongerOrdering(), and llvm::Value::uses().
Referenced by llvm::GlobalStatus::analyzeGlobal().
|
static |
Return the stronger of the two ordering.
If the two orderings are acquire and release, then return AcquireRelease.
Definition at line 22 of file GlobalStatus.cpp.
References llvm::Acquire, llvm::AcquireRelease, and llvm::Release.
Referenced by analyzeGlobalAux().
1.8.6