This is an archive of the discontinued LLVM Phabricator instance.

[ScopInfo] Simplify new access functions under domain context
ClosedPublic

Authored by grosser on Jul 11 2017, 1:55 AM.

Details

Summary

We do not keep domain constraints on access functions when building the
scop. Hence, for consistency reasons, it makes also sense to not include
them when storing a new access function. This change results in simpler
access functions that make output easier to read.

This patch also helps to make DeLICMed memory accesses to be understood by
our matrix multiplication pattern matching pass. Further changes to the
matrix multiplication pattern matching are needed for this to work, so the
corresponding test case will be added in a future commit.

Diff Detail

Repository
rL LLVM

Event Timeline

grosser created this revision.Jul 11 2017, 1:55 AM
bollu added inline comments.Jul 12 2017, 6:45 AM
lib/Analysis/ScopInfo.cpp
1240 ↗(On Diff #105977)

can this be re-written as:

NewAccessRelation = isl_map_gist_domain(NewAccess, getStatement()->getDomain())

Yes, I can change this.

This revision was automatically updated to reflect the committed changes.