mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-07 11:33:44 +00:00
Tweak to work with new AA implementation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5632 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
1c56b730a6
commit
13b6f22f04
@ -12,23 +12,26 @@
|
|||||||
#include "llvm/Analysis/AliasAnalysis.h"
|
#include "llvm/Analysis/AliasAnalysis.h"
|
||||||
#include "llvm/Pass.h"
|
#include "llvm/Pass.h"
|
||||||
|
|
||||||
|
class GetElementPtrInst;
|
||||||
|
|
||||||
struct BasicAliasAnalysis : public ImmutablePass, public AliasAnalysis {
|
struct BasicAliasAnalysis : public ImmutablePass, public AliasAnalysis {
|
||||||
|
|
||||||
|
virtual void getAnalysisUsage(AnalysisUsage &AU) const {
|
||||||
|
AliasAnalysis::getAnalysisUsage(AU);
|
||||||
|
}
|
||||||
|
|
||||||
|
virtual void initializePass();
|
||||||
|
|
||||||
// alias - This is the only method here that does anything interesting...
|
// alias - This is the only method here that does anything interesting...
|
||||||
//
|
//
|
||||||
Result alias(const Value *V1, const Value *V2);
|
AliasResult alias(const Value *V1, unsigned V1Size,
|
||||||
|
const Value *V2, unsigned V2Size);
|
||||||
/// canCallModify - We are not interprocedural, so we do nothing exciting.
|
private:
|
||||||
///
|
// CheckGEPInstructions - Check two GEP instructions of compatible types and
|
||||||
Result canCallModify(const CallInst &CI, const Value *Ptr) {
|
// equal number of arguments. This checks to see if the index expressions
|
||||||
return MayAlias;
|
// preclude the pointers from aliasing...
|
||||||
}
|
AliasResult CheckGEPInstructions(GetElementPtrInst *GEP1, unsigned G1Size,
|
||||||
|
GetElementPtrInst *GEP2, unsigned G2Size);
|
||||||
/// canInvokeModify - We are not interprocedural, so we do nothing exciting.
|
|
||||||
///
|
|
||||||
Result canInvokeModify(const InvokeInst &I, const Value *Ptr) {
|
|
||||||
return MayAlias; // We are not interprocedural
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
Reference in New Issue
Block a user