This is an archive of the discontinued LLVM Phabricator instance.

[Polly] Restrict ranges of extension maps
ClosedPublic

Authored by gareevroman on Oct 16 2016, 6:11 AM.

Details

Summary

To prevent copy statements from accessing arrays out of bounds, ranges of their extension maps are restricted, according to the constraints of domains.

Diff Detail

Repository
rL LLVM

Event Timeline

gareevroman retitled this revision from to [Polly] Restrict ranges of extension maps.
gareevroman updated this object.
gareevroman added a subscriber: pollydev.
Meinersbur accepted this revision.Oct 17 2016, 8:40 AM
Meinersbur edited edge metadata.
Meinersbur added inline comments.
lib/Transform/ScheduleOptimizer.cpp
883–889 ↗(On Diff #74792)

Generally, some empty lines to separate sections and comments about what these sections do would be appreciated.

Comment about these new lines could be:

Restrict the domains of the copy statements to only execute when also its originating statement is executed.

905–906 ↗(On Diff #74792)

See above

test/ScheduleOptimizer/mat_mul_pattern_data_layout_2.ll
1 ↗(On Diff #74792)

Please try not to use 2>&1, especially if not necessary. There is no defined interleaving when stdout+stdout is merged, messing up the output.

This revision is now accepted and ready to land.Oct 17 2016, 8:40 AM

Hi Michael,

thanks for the review!

lib/Transform/ScheduleOptimizer.cpp
883–889 ↗(On Diff #74792)

OK.

test/ScheduleOptimizer/mat_mul_pattern_data_layout_2.ll
1 ↗(On Diff #74792)

OK.

This revision was automatically updated to reflect the committed changes.
grosser edited edge metadata.Dec 15 2016, 4:52 AM

Hi Roman, thanks for the update. This looks already a lot better. Let's see if Michael has further comments.