This is an archive of the discontinued LLVM Phabricator instance.

Compute ORE, BPI, BFI in Loop passes.
ClosedPublic

Authored by asbirlea on Jan 16 2020, 4:45 PM.

Details

Summary

Passes ORE, BPI, BFI are not being preserved by Loop passes, hence it
is incorrect to retrieve these passes as cached.
This patch makes the loop passes in question compute a new instance.

In some of these cases, however, it may be beneficial to change the Loop pass to
a Function pass instead, similar to the change for LoopUnrollAndJam.

Diff Detail

Event Timeline

asbirlea created this revision.Jan 16 2020, 4:45 PM
Herald added a project: Restricted Project. · View Herald TranscriptJan 16 2020, 4:45 PM
asbirlea updated this revision to Diff 241005.Jan 28 2020, 2:46 PM

Rebase and gentle ping.

Unit tests: pass. 62279 tests passed, 0 failed and 827 were skipped.

clang-tidy: pass.

clang-format: pass.

Build artifacts: diff.json, clang-tidy.txt, clang-format.patch, CMakeCache.txt, console-log.txt, test-results.xml

Pre-merge checks is in beta. Report issue. Please join beta or enable it for your project.

asbirlea updated this revision to Diff 242716.Feb 5 2020, 11:36 AM

Rebase on ToT.

Unit tests: pass. 62516 tests passed, 0 failed and 844 were skipped.

clang-tidy: pass.

clang-format: fail. Please format your changes with clang-format by running git-clang-format HEAD^ or applying this patch.

Build artifacts: clang-tidy.txt, clang-format.patch, CMakeCache.txt, console-log.txt, test-results.xml

Pre-merge checks is in beta. Report issue. Please join beta or enable it for your project.

This revision was not accepted when it landed; it landed in state Needs Review.Feb 12 2020, 9:28 AM
This revision was automatically updated to reflect the committed changes.