[all-commits] [llvm/llvm-project] 52452a: [CFG] Support CycleInfo in isPotentiallyReachable(...

Nikita Popov via All-commits all-commits at lists.llvm.org
Fri Mar 20 07:12:57 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 52452aa447d2a7b0eba61c117a21bc118494991d
      https://github.com/llvm/llvm-project/commit/52452aa447d2a7b0eba61c117a21bc118494991d
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-03-20 (Fri, 20 Mar 2026)

  Changed paths:
    M llvm/include/llvm/ADT/GenericCycleImpl.h
    M llvm/include/llvm/ADT/GenericCycleInfo.h
    M llvm/include/llvm/Analysis/CFG.h
    M llvm/lib/Analysis/CFG.cpp
    M llvm/unittests/Analysis/CFGTest.cpp

  Log Message:
  -----------
  [CFG] Support CycleInfo in isPotentiallyReachable() (#187681)

Essentially do the same thing as for LoopInfo. Anything inside a cycle
is mutually reachable, and the cycle can be replaced by its exit blocks
in the walk.

An interesting additional thing we could do for CycleInfo (but not
LoopInfo) is to early exit the walk if the stop block is not in a cycle
and dominates the start block. I've not included this in this patch to
keep the implementation the same as for LoopInfo to start with.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list