This patch ports ScopInfo to the new PassManager.
The port is based on the ScopInfoWrapperPass, which allows this pass to become an entry point for the Scop{Pass,Analysis}Manager to come.
Paths
| Differential D32538
[Polly][NewPM] Port ScopInfo to the new PassManager ClosedPublic Authored by philip.pfaffe on Apr 26 2017, 7:13 AM.
Details
Summary This patch ports ScopInfo to the new PassManager. The port is based on the ScopInfoWrapperPass, which allows this pass to become an entry point for the Scop{Pass,Analysis}Manager to come.
Diff Detail Event Timelinephilip.pfaffe added a parent revision: D31459: [Polly][NewPM] Port ScopDetection to the new PassManager. philip.pfaffe added a child revision: D32539: [Polly][NewPM][WIP] Add a ScopPassManager.Apr 26 2017, 7:36 AM Comment Actions Hi Philip, this looks technically correct, assuming we want to go this route. As noted earlier, there is a risk that we may invalidate some of the analysis results when code generating, hence I have some concerns here. However, as already pointed out in earlier discussions on this topic, as this code path is independent of all our existing functionality this might indeed be a great opportunity to explore a different approach of scheduling passes without risking to regress existing functionality. Assuming we can add a test case for this, I would be glad to see this patch upstream! Comment Actions This patch looks good to me. I understand, we can currently not have execution test coverage. I suggest to commit this exceptionally without test cases to at least get compile time test coverage and to also facilitate further testing with the pass manager plugins. This revision is now accepted and ready to land.May 13 2017, 2:43 AM
Revision Contents
Diff 96734 include/polly/PolyhedralInfo.h
include/polly/ScopInfo.h
lib/Analysis/DependenceInfo.cpp
lib/Analysis/PolyhedralInfo.cpp
lib/Analysis/ScopInfo.cpp
|