[PATCH] D110492: [LoopInfo] Return conditional branch of preheader's predecessor if loop's exit has exactly two predecessors which are latch and guard

Daniil Seredkin via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Sep 27 09:04:34 PDT 2021


vdsered added a comment.

Loops lose simplify form in JumpThreadingPass before DSE. I don't know the details and if this is correct or not. There is currently no need  for a loop to be in simplify form in DSE in order to work with it (except that it should be a natural loop). It became only required for my optimization.

I found that LoopSimplify runs right after DSE and this is probably better to consider changing the order in which they run rather than generalizing getLoopGuardBranch because DSE shouldn't invalidate results of LoopSimplify and break loop properties that this pass gives.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D110492/new/

https://reviews.llvm.org/D110492



More information about the llvm-commits mailing list