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