llvm-project/llvm/test/Analysis/LoopNestAnalysis
Ta-Wei Tu 98c6110d9b [LoopNest] Use `getUniqueSuccessor()` instead when checking empty blocks
Blocks that contain only a single branch instruction to the next block can be skipped in analyzing the loop-nest structure.
This is currently done by `getSingleSuccessor()`.
However, the branch instruction might have multiple targets which happen to all be the same.
In this case, the block should still be considered as empty and skipped.

An example is `test/Transforms/LoopInterchange/update-condbranch-duplicate-successors.ll` (the LIT test for this patch is modified from it as well).

Reviewed By: Whitney

Differential Revision: https://reviews.llvm.org/D97286
2021-02-24 09:53:12 +08:00
..
duplicate-successors.ll [LoopNest] Use `getUniqueSuccessor()` instead when checking empty blocks 2021-02-24 09:53:12 +08:00
imperfectnest.ll [LoopNest]: Analysis to discover properties of a loop nest. 2020-03-03 18:25:19 +00:00
infinite.ll [LoopNest]: Analysis to discover properties of a loop nest. 2020-03-03 18:25:19 +00:00
nests-with-lcssa.ll [LoopNest] False negative of `arePerfectlyNested` with LCSSA loops 2020-08-25 16:20:52 +00:00
perfectnest.ll [LoopNest] Allow empty basic blocks without loops 2021-01-05 15:09:38 +00:00