This is an archive of the discontinued LLVM Phabricator instance.

Removal of Intersection with AssumedContext in calculateMinMaxAccess
ClosedPublic

Authored by pbhatu on Aug 20 2015, 9:28 AM.

Details

Summary

We see -3.17% reduction in compile time of 3mm and -17.87% when compiled with -DPOLYBENCH_USE_C99_PROTO flag.
We also do not get any regressions.

Diff Detail

Repository
rL LLVM

Event Timeline

pbhatu updated this revision to Diff 32702.Aug 20 2015, 9:28 AM
pbhatu retitled this revision from to Removal of Intersection with AssumedContext in calculateMinMaxAccess.
pbhatu updated this object.
pbhatu added a reviewer: grosser.
grosser edited edge metadata.Aug 20 2015, 9:39 AM

We see -3.17% reduction in compile time of 3mm and -17.87% when compiled with -DPOLYBENCH_USE_C99_PROTO flag.
We also do not get any regressions.

http://reviews.llvm.org/D12198

Files:

lib/Analysis/ScopInfo.cpp

Index: lib/Analysis/ScopInfo.cpp

  • lib/Analysis/ScopInfo.cpp

+++ lib/Analysis/ScopInfo.cpp
@@ -1302,8 +1302,8 @@

                                Scop::MinMaxVectorTy &MinMaxAccesses) {

Accesses = isl_union_map_intersect_domain(Accesses, Domains);

+ isl_set_free(AssumedContext);

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,

Hi Pratik,

please do not even pass the assumedContext to calculateMinMaxAccess.

Tobias

pbhatu updated this revision to Diff 32704.Aug 20 2015, 9:45 AM
pbhatu edited edge metadata.

Don't pass the assumedContext to calculateMinMaxAccess.

This revision was automatically updated to reflect the committed changes.