This is an archive of the discontinued LLVM Phabricator instance.

[WIP] Minimal SCEV interval analysis
AbandonedPublic

Authored by jdoerfert on May 13 2016, 2:55 AM.

Details

Reviewers
Meinersbur
Summary
This is a partly finished symbolic SCEV interval analysis that would
allow to bound parameters wrt. other parameters and not only
constants.

Thoughts are appreciated.

Diff Detail

Event Timeline

jdoerfert updated this revision to Diff 57149.May 13 2016, 2:55 AM
jdoerfert retitled this revision from to [WIP] Minimal SCEV interval analysis.
jdoerfert added reviewers: grosser, Meinersbur.
jdoerfert updated this object.
jdoerfert added a subscriber: Restricted Project.
Meinersbur edited edge metadata.May 13 2016, 8:33 AM

Looks like this is trying to exploit information on llvm::Value's from instructions outside the SCoP. Nice idea and straightforward implementation.

As far as I can see this gets its range information from surrounding non-scop loops (AddRecExpr) and shared common instructions (SCEVUnknown). One could get more information from the LazyValueInfo pass.

Please add comments, it would make it easier to review the diff.

lib/Support/SCEVValidator.cpp
699

Know -> Known

755

visitCouldNotCompute missing?

grosser requested changes to this revision.Jun 13 2016, 4:18 AM
grosser edited edge metadata.

Hi Johannes,

this is indeed a neat idea. The direction looks good. I suggest to move this out of the WIP state for us to be able to provide a full review.

This revision now requires changes to proceed.Jun 13 2016, 4:18 AM
grosser resigned from this revision.Jan 17 2017, 3:19 AM

This seems abonded. I drop this from my review list. Please add me back if this becomes active again.

jdoerfert abandoned this revision.Apr 2 2017, 3:07 AM