Polly 20.0.0git
|
#include <DependenceInfo.h>
Public Member Functions | |
DependenceInfo () | |
Construct a new DependenceInfo pass. | |
const Dependences & | getDependences (Dependences::AnalysisLevel Level) |
Return the dependence information for the current SCoP. | |
const Dependences & | recomputeDependences (Dependences::AnalysisLevel Level) |
Recompute dependences from schedule and memory accesses. | |
void | abandonDependences () |
Invalidate the dependence information and recompute it when needed again. | |
bool | runOnScop (Scop &S) override |
Compute the dependence information for the SCoP S . | |
void | printScop (raw_ostream &OS, Scop &) const override |
Print the dependences for the given SCoP to OS . | |
void | releaseMemory () override |
Release the internal memory. | |
void | getAnalysisUsage (AnalysisUsage &AU) const override |
Register all analyses and transformation required. | |
Static Public Attributes | |
static char | ID = 0 |
Private Attributes | |
Scop * | S |
std::unique_ptr< Dependences > | D [Dependences::NumAnalysisLevels] |
Dependences struct for the current SCoP. | |
Additional Inherited Members | |
Protected Member Functions inherited from polly::ScopPass | |
ScopPass (char &ID) | |
virtual bool | runOnScop (Scop &S)=0 |
runOnScop - This method must be overloaded to perform the desired Polyhedral transformation or analysis. | |
virtual void | printScop (raw_ostream &OS, Scop &S) const |
Print method for SCoPs. | |
void | getAnalysisUsage (AnalysisUsage &AU) const override |
getAnalysisUsage - Subclasses that override getAnalysisUsage must call this. | |
Definition at line 235 of file DependenceInfo.h.
|
inline |
Construct a new DependenceInfo pass.
Definition at line 240 of file DependenceInfo.h.
void DependenceInfo::abandonDependences | ( | ) |
Invalidate the dependence information and recompute it when needed again.
May be required when the underlaying Scop was changed in a way that would add new dependencies (e.g. between new statement instances insierted into the SCoP) or intentionally breaks existing ones. It is not required when updating the schedule that conforms the existing dependencies.
Definition at line 899 of file DependenceInfo.cpp.
|
override |
Register all analyses and transformation required.
Definition at line 923 of file DependenceInfo.cpp.
const Dependences & DependenceInfo::getDependences | ( | Dependences::AnalysisLevel | Level | ) |
Return the dependence information for the current SCoP.
Level | The granularity of dependence analysis result. |
Definition at line 885 of file DependenceInfo.cpp.
|
overridevirtual |
Print the dependences for the given SCoP to OS
.
Reimplemented from polly::ScopPass.
Definition at line 911 of file DependenceInfo.cpp.
References polly::Dependences::calculateDependences(), OptAnalysisLevel(), and polly::Dependences::print().
Referenced by INITIALIZE_PASS_END().
const Dependences & DependenceInfo::recomputeDependences | ( | Dependences::AnalysisLevel | Level | ) |
Recompute dependences from schedule and memory accesses.
Definition at line 893 of file DependenceInfo.cpp.
References polly::Dependences::calculateDependences().
|
inlineoverride |
|
overridevirtual |
Compute the dependence information for the SCoP S
.
Implements polly::ScopPass.
Definition at line 904 of file DependenceInfo.cpp.
|
private |
Dependences struct for the current SCoP.
Definition at line 279 of file DependenceInfo.h.
Referenced by releaseMemory().
|
static |
Definition at line 237 of file DependenceInfo.h.
|
private |
Definition at line 276 of file DependenceInfo.h.