This is an archive of the discontinued LLVM Phabricator instance.

Allow non-affine control flow -- SCoP Modeling
ClosedPublic

Authored by jdoerfert on Feb 23 2015, 5:38 PM.

Details

Summary
This allows us to model non-affine regions in the SCoP representation.
SCoP statements can now describe either basic blocks or non-affine
regions. In the latter case all accesses in the region are accumulated
for the statement and write accesses, except in the entry, have to be
marked as may-write.

Depends on D7829

Diff Detail

Event Timeline

jdoerfert updated this revision to Diff 20561.Feb 23 2015, 5:38 PM
jdoerfert retitled this revision from to Allow non-affine control flow -- SCoP Modeling.
jdoerfert updated this object.
jdoerfert added subscribers: Restricted Project, Unknown Object (MLST).
simbuerg edited edge metadata.Feb 24 2015, 1:50 AM

Otherwise LGTM.

lib/Analysis/ScopInfo.cpp
801

looks like an independent change

This revision was automatically updated to reflect the committed changes.
sebpop edited edge metadata.Feb 24 2015, 6:41 AM

LGTM

polly/trunk/include/polly/ScopInfo.h
471 ↗(On Diff #20591)

s/modelt/modeled/

polly/trunk/lib/Analysis/ScopInfo.cpp
1040 ↗(On Diff #20591)

please revert the changes to this comment

1046 ↗(On Diff #20591)

same

1064 ↗(On Diff #20591)

same

1104 ↗(On Diff #20591)

same

1113 ↗(On Diff #20591)

same

1332 ↗(On Diff #20591)

same

1345 ↗(On Diff #20591)

same

1437 ↗(On Diff #20591)

same

1538 ↗(On Diff #20591)

same