[all-commits] [llvm/llvm-project] cc98c1: [CycleInfo] Represent cycles by an opaque handle. ...

Fangrui Song via All-commits all-commits at lists.llvm.org
Fri Jul 17 00:34:49 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: cc98c1eb84c690c65fba77b72c269a869978c898
      https://github.com/llvm/llvm-project/commit/cc98c1eb84c690c65fba77b72c269a869978c898
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/include/llvm/ADT/GenericConvergenceVerifier.h
    M llvm/include/llvm/ADT/GenericCycleImpl.h
    M llvm/include/llvm/ADT/GenericCycleInfo.h
    M llvm/include/llvm/ADT/GenericUniformityImpl.h
    M llvm/include/llvm/ADT/GenericUniformityInfo.h
    M llvm/include/llvm/CodeGen/MachineCycleAnalysis.h
    M llvm/include/llvm/IR/CycleInfo.h
    M llvm/include/llvm/IR/GenericConvergenceVerifierImpl.h
    M llvm/lib/Analysis/CFG.cpp
    M llvm/lib/Analysis/UniformityAnalysis.cpp
    M llvm/lib/CodeGen/MachineCycleAnalysis.cpp
    M llvm/lib/CodeGen/MachineSink.cpp
    M llvm/lib/CodeGen/MachineUniformityAnalysis.cpp
    M llvm/lib/IR/CycleInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUGlobalISelDivergenceLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
    M llvm/lib/Transforms/Utils/FixIrreducible.cpp

  Log Message:
  -----------
  [CycleInfo] Represent cycles by an opaque handle. NFC (#210117)

Consumers refer to a cycle by a GenericCycle pointer into
GenericCycleInfo's storage. Introduce GenericCycleRef, a value handle
wrapping the cycle's preorder index, and route every GenericCycleInfo
query and mutation through it. GenericCycle becomes an internal
implementation detail, so its storage representation can change without
touching callers.

Aided by Claude Opus 4.8, reviewed by Fable 5

Suggested by
https://github.com/llvm/llvm-project/pull/208614#pullrequestreview-4683378136



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