diff options
Diffstat (limited to 'polly/lib/Analysis')
-rw-r--r-- | polly/lib/Analysis/Dependences.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/polly/lib/Analysis/Dependences.cpp b/polly/lib/Analysis/Dependences.cpp index b63d3b280d8..74d23df4075 100644 --- a/polly/lib/Analysis/Dependences.cpp +++ b/polly/lib/Analysis/Dependences.cpp @@ -408,6 +408,25 @@ void Dependences::releaseMemory() { sink = must_source = may_source = NULL; } +isl_union_map *Dependences::getDependences(int type) { + isl_dim *dim = isl_union_map_get_dim(must_dep); + isl_union_map *dependences = isl_union_map_empty(dim); + + if (type & TYPE_RAW) + dependences = isl_union_map_union(dependences, + isl_union_map_copy(must_dep)); + + if (type & TYPE_WAR) + dependences = isl_union_map_union(dependences, + isl_union_map_copy(war_dep)); + + if (type & TYPE_WAW) + dependences = isl_union_map_union(dependences, + isl_union_map_copy(waw_dep)); + + return dependences; +} + void Dependences::getAnalysisUsage(AnalysisUsage &AU) const { ScopPass::getAnalysisUsage(AU); } |