llvm-project/polly/lib/Analysis
Michael Kruse 8b8058072f [ScopInfo] Integrate ScalarDefUseChain into polly::Scop. NFC.
Before this patch, ScalarDefUseChain was a tool used by DeLICM to find
all reads and writes of scalar accesses. It iterated once over all
accesses and stores the accesses into maps.

By integrating it into the Scop class, we can keep the maps up-to-date
without the need for recomputing them. It will be needed for more than
DeLICM in the future, such as SCoP simplification, code movement between
virtual statements, and array expansion (GSoC project).

Compared to ScalarUseDefChain, we save two maps by finding the ScopStmt
a Def/PHIRead must reside in, and use its already existing lookup
function to find the MemoryAccess.

Differential Revision: https://reviews.llvm.org/D35631

llvm-svn: 308495
2017-07-19 17:11:25 +00:00
..
DependenceInfo.cpp Fix a lot of typos. NFC. 2017-06-08 12:06:15 +00:00
PolyhedralInfo.cpp [Polly] Avoid use of `getStmtFor(BB)` in PolyhedralInfo. NFC 2017-07-17 20:58:13 +00:00
PruneUnprofitable.cpp [PruneUnprofitable] Add -polly-prune-unprofitable pass. 2017-03-17 13:09:52 +00:00
ScopBuilder.cpp [Polly] [OptDiag] Updating Polly Diagnostics Remarks 2017-07-17 23:58:33 +00:00
ScopDetection.cpp [Polly] [OptDiag] Updating Polly Diagnostics Remarks 2017-07-17 23:58:33 +00:00
ScopDetectionDiagnostic.cpp [Polly] [OptDiag] Updating Polly Diagnostics Remarks 2017-07-17 23:58:33 +00:00
ScopGraphPrinter.cpp [Polly][NewPM] Port ScopDetection to the new PassManager 2017-05-12 14:37:29 +00:00
ScopInfo.cpp [ScopInfo] Integrate ScalarDefUseChain into polly::Scop. NFC. 2017-07-19 17:11:25 +00:00
ScopPass.cpp Add opt-bisect support to polly. 2017-06-01 21:29:05 +00:00