33#ifndef TTA_MEMORY_ALIAS_ANALYZER_HH
34#define TTA_MEMORY_ALIAS_ANALYZER_HH
virtual AliasingResult analyze(DataDependenceGraph &ddg, const ProgramOperation &pop1, const ProgramOperation &pop2, MoveNodeUse::BBRelation bbInfo)=0
static const MoveNode * findIncrement(const MoveNode &mn, long &increment)
virtual ~MemoryAliasAnalyzer()
AliasingResult compareIndeces(int index1, int index2, const ProgramOperation &pop1, const ProgramOperation &pop2)
static const MoveNode * searchLoopIndexBasedIncrement(DataDependenceGraph &ddg, const MoveNode &mn, long &loopIncrement)
virtual bool isAddressTraceable(DataDependenceGraph &ddg, const ProgramOperation &pop)=0
static const MoveNode * detectConstantScale(const MoveNode &mn, int &shiftAmount)
static const MoveNode * addressOperandMove(const ProgramOperation &po)
static TwoPartAddressOperandDetection findTwoPartAddressOperands(const ProgramOperation &po)
unsigned int mausOfOperation(const Operation &op)
virtual void initProcedure(TTAProgram::Procedure &)
OffsetOperation offsetOperation
TwoPartAddressOperandDetection()