[all-commits] [llvm/llvm-project] ffde06: [NFC][SPIRV] Move `SPIRVStripConvergenceIntrinsics...

Finn Plummer via All-commits all-commits at lists.llvm.org
Thu Apr 16 09:24:55 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: ffde06f4c11927c60936802fb439a5195ac0742e
      https://github.com/llvm/llvm-project/commit/ffde06f4c11927c60936802fb439a5195ac0742e
  Author: Finn Plummer <mail at inbelic.dev>
  Date:   2026-04-16 (Thu, 16 Apr 2026)

  Changed paths:
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/Transforms/Utils.h
    A llvm/include/llvm/Transforms/Utils/StripConvergenceIntrinsics.h
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
    M llvm/lib/Target/SPIRV/CMakeLists.txt
    M llvm/lib/Target/SPIRV/SPIRV.h
    R llvm/lib/Target/SPIRV/SPIRVStripConvergentIntrinsics.cpp
    M llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp
    M llvm/lib/Transforms/Utils/CMakeLists.txt
    A llvm/lib/Transforms/Utils/StripConvergenceIntrinsics.cpp
    M llvm/test/CodeGen/DirectX/llc-pipeline.ll
    A llvm/test/CodeGen/DirectX/strip-convergence-intrinsics.ll
    M llvm/test/CodeGen/SPIRV/llc-pipeline.ll
    A llvm/test/Transforms/StripConvergenceIntrinsics/basic.ll

  Log Message:
  -----------
  [NFC][SPIRV] Move `SPIRVStripConvergenceIntrinsics` to Utils (#188537)

The `SPIRVStripConvergenceIntrinsic` pass was written as a spirv pass as
it is the currently the only target that emits convergence tokens during
codegen. There is nothing target specific to the pass, and, we plan to
emit convergence tokens when targeting DirectX (and all targets in
general), so move the pass to a common place.

The previous pass used temporary `Undef`s, as part of moving the pass we
can simply reverse the traverse order to remove the use of `Undef` as it
is deprecated.

Enables the pass for targeting DirectX and is a pre-req for:
https://github.com/llvm/llvm-project/pull/188792.

Assisted by: Github Copilot



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