[all-commits] [llvm/llvm-project] ac2423: [LowerSwitch] Don't let pass manager handle the de...

Ruiling, Song via All-commits all-commits at lists.llvm.org
Tue Oct 24 18:24:49 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: ac24238002076e36b2d33d18d1bf47a9de59fab4
      https://github.com/llvm/llvm-project/commit/ac24238002076e36b2d33d18d1bf47a9de59fab4
  Author: Ruiling, Song <ruiling.song at amd.com>
  Date:   2023-10-25 (Wed, 25 Oct 2023)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/BasicBlockUtils.h
    M llvm/lib/Target/AMDGPU/AMDGPUUnifyDivergentExitNodes.cpp
    M llvm/lib/Transforms/Scalar/StructurizeCFG.cpp
    M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
    M llvm/lib/Transforms/Utils/FixIrreducible.cpp
    M llvm/lib/Transforms/Utils/UnifyFunctionExitNodes.cpp
    M llvm/lib/Transforms/Utils/UnifyLoopExits.cpp
    M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
    M llvm/test/CodeGen/AMDGPU/multi-divergent-exit-region.ll
    M llvm/test/CodeGen/AMDGPU/multilevel-break.ll
    M llvm/test/CodeGen/AMDGPU/si-unify-exit-return-unreachable.ll
    M llvm/test/Transforms/FixIrreducible/switch.ll
    M llvm/test/Transforms/StructurizeCFG/switch.ll

  Log Message:
  -----------
  [LowerSwitch] Don't let pass manager handle the dependency (#68662)

Some passes has limitation that only support simple terminators:
branch/unreachable/return. Right now, they ask the pass manager to add
LowerSwitch pass to eliminate `switch`. Let's manage such kind of pass
dependency by ourselves. Also add the assertion in the related passes.




More information about the All-commits mailing list