[LoopInfo] Faster implementation of setLoopID. NFC.
authorKeno Fischer <keno@alumni.harvard.edu>
Wed, 1 May 2019 14:39:11 +0000 (14:39 +0000)
committerKeno Fischer <keno@alumni.harvard.edu>
Wed, 1 May 2019 14:39:11 +0000 (14:39 +0000)
commitd8f856d26549d15fd229ce372ee436b42fff628d
tree51f78cf245ab05cc9aed1c7e1b81c646b3887ae4
parent6e32dd6cfd0ad4fe05ba1cba823d9ae1b9c1e5b4
[LoopInfo] Faster implementation of setLoopID. NFC.

Summary:
This change was part of D46460. However, in the meantime rL341926 fixed the
correctness issue here. What remained was the performance issue in setLoopID
where it would iterate through all blocks in the loop and their successors,
rather than just the predecessor of the header (the later presumably being
much faster). We already have the `getLoopLatches` to compute precisely these
basic blocks in an efficient manner, so just use it (as the original commit
did for `getLoopID`).

Reviewed By: jdoerfert
Differential Revision: https://reviews.llvm.org/D61215

llvm-svn: 359684
llvm/lib/Analysis/LoopInfo.cpp