Index: lib/Analysis/ScopInfo.cpp =================================================================== --- lib/Analysis/ScopInfo.cpp +++ lib/Analysis/ScopInfo.cpp @@ -1298,12 +1298,10 @@ /// @brief Wrapper function to calculate minimal/maximal accesses to each array. static bool calculateMinMaxAccess(__isl_take isl_union_map *Accesses, __isl_take isl_union_set *Domains, - __isl_take isl_set *AssumedContext, Scop::MinMaxVectorTy &MinMaxAccesses) { Accesses = isl_union_map_intersect_domain(Accesses, Domains); isl_union_set *Locations = isl_union_map_range(Accesses); - Locations = isl_union_set_intersect_params(Locations, AssumedContext); Locations = isl_union_set_coalesce(Locations); Locations = isl_union_set_detect_equalities(Locations); bool Valid = (0 == isl_union_set_foreach_set(Locations, buildMinMaxAccess, @@ -1437,7 +1435,7 @@ Accesses = isl_union_map_add_map(Accesses, MA->getAccessRelation()); bool Valid = calculateMinMaxAccess( - Accesses, getDomains(), getAssumedContext(), MinMaxAccessesNonReadOnly); + Accesses, getDomains(), MinMaxAccessesNonReadOnly); // Bail out if the number of values we need to compare is too large. // This is important as the number of comparisions grows quadratically with @@ -1454,7 +1452,7 @@ for (MemoryAccess *MA : ReadOnlyPair.second) Accesses = isl_union_map_add_map(Accesses, MA->getAccessRelation()); - Valid = calculateMinMaxAccess(Accesses, getDomains(), getAssumedContext(), + Valid = calculateMinMaxAccess(Accesses, getDomains(), MinMaxAccessesReadOnly); if (!Valid)