mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 11:13:28 +01:00
Remove PointerAccessInfo, which nothing was using.
llvm-svn: 110167
This commit is contained in:
parent
429b4027e9
commit
aac19e4ffe
@ -164,27 +164,12 @@ public:
|
||||
UnknownModRefBehavior
|
||||
};
|
||||
|
||||
/// PointerAccessInfo - This struct is used to return results for pointers,
|
||||
/// globals, and the return value of a function.
|
||||
struct PointerAccessInfo {
|
||||
/// V - The value this record corresponds to. This may be an Argument for
|
||||
/// the function, a GlobalVariable, or null, corresponding to the return
|
||||
/// value for the function.
|
||||
Value *V;
|
||||
|
||||
/// ModRefInfo - Whether the pointer is loaded or stored to/from.
|
||||
///
|
||||
ModRefResult ModRefInfo;
|
||||
};
|
||||
|
||||
/// getModRefBehavior - Return the behavior when calling the given call site.
|
||||
virtual ModRefBehavior getModRefBehavior(ImmutableCallSite CS,
|
||||
std::vector<PointerAccessInfo> *Info = 0);
|
||||
virtual ModRefBehavior getModRefBehavior(ImmutableCallSite CS);
|
||||
|
||||
/// getModRefBehavior - Return the behavior when calling the given function.
|
||||
/// For use when the call site is not known.
|
||||
virtual ModRefBehavior getModRefBehavior(const Function *F,
|
||||
std::vector<PointerAccessInfo> *Info = 0);
|
||||
virtual ModRefBehavior getModRefBehavior(const Function *F);
|
||||
|
||||
/// getIntrinsicModRefBehavior - Return the modref behavior of the intrinsic
|
||||
/// with the given id.
|
||||
|
@ -113,20 +113,18 @@ AliasAnalysis::getModRefInfo(const StoreInst *S, const Value *P, unsigned Size)
|
||||
}
|
||||
|
||||
AliasAnalysis::ModRefBehavior
|
||||
AliasAnalysis::getModRefBehavior(ImmutableCallSite CS,
|
||||
std::vector<PointerAccessInfo> *Info) {
|
||||
AliasAnalysis::getModRefBehavior(ImmutableCallSite CS) {
|
||||
if (CS.doesNotAccessMemory())
|
||||
// Can't do better than this.
|
||||
return DoesNotAccessMemory;
|
||||
ModRefBehavior MRB = getModRefBehavior(CS.getCalledFunction(), Info);
|
||||
ModRefBehavior MRB = getModRefBehavior(CS.getCalledFunction());
|
||||
if (MRB != DoesNotAccessMemory && CS.onlyReadsMemory())
|
||||
return OnlyReadsMemory;
|
||||
return MRB;
|
||||
}
|
||||
|
||||
AliasAnalysis::ModRefBehavior
|
||||
AliasAnalysis::getModRefBehavior(const Function *F,
|
||||
std::vector<PointerAccessInfo> *Info) {
|
||||
AliasAnalysis::getModRefBehavior(const Function *F) {
|
||||
if (F) {
|
||||
if (F->doesNotAccessMemory())
|
||||
// Can't do better than this.
|
||||
|
@ -118,31 +118,29 @@ namespace {
|
||||
/// getModRefBehavior - Return the behavior of the specified function if
|
||||
/// called from the specified call site. The call site may be null in which
|
||||
/// case the most generic behavior of this function should be returned.
|
||||
ModRefBehavior getModRefBehavior(const Function *F,
|
||||
std::vector<PointerAccessInfo> *Info) {
|
||||
ModRefBehavior getModRefBehavior(const Function *F) {
|
||||
if (FunctionRecord *FR = getFunctionInfo(F)) {
|
||||
if (FR->FunctionEffect == 0)
|
||||
return DoesNotAccessMemory;
|
||||
else if ((FR->FunctionEffect & Mod) == 0)
|
||||
return OnlyReadsMemory;
|
||||
}
|
||||
return AliasAnalysis::getModRefBehavior(F, Info);
|
||||
return AliasAnalysis::getModRefBehavior(F);
|
||||
}
|
||||
|
||||
/// getModRefBehavior - Return the behavior of the specified function if
|
||||
/// called from the specified call site. The call site may be null in which
|
||||
/// case the most generic behavior of this function should be returned.
|
||||
ModRefBehavior getModRefBehavior(ImmutableCallSite CS,
|
||||
std::vector<PointerAccessInfo> *Info) {
|
||||
ModRefBehavior getModRefBehavior(ImmutableCallSite CS) {
|
||||
const Function* F = CS.getCalledFunction();
|
||||
if (!F) return AliasAnalysis::getModRefBehavior(CS, Info);
|
||||
if (!F) return AliasAnalysis::getModRefBehavior(CS);
|
||||
if (FunctionRecord *FR = getFunctionInfo(F)) {
|
||||
if (FR->FunctionEffect == 0)
|
||||
return DoesNotAccessMemory;
|
||||
else if ((FR->FunctionEffect & Mod) == 0)
|
||||
return OnlyReadsMemory;
|
||||
}
|
||||
return AliasAnalysis::getModRefBehavior(CS, Info);
|
||||
return AliasAnalysis::getModRefBehavior(CS);
|
||||
}
|
||||
|
||||
virtual void deleteValue(Value *V);
|
||||
|
Loading…
Reference in New Issue
Block a user