[llvm] [SPIR-V] Strip convergence intrinsics before ISel (PR #75948)
Natalie Chouinard via llvm-commits
llvm-commits at lists.llvm.org
Thu Jan 4 13:04:53 PST 2024
Nathan =?utf-8?q?Gauër?= <brioche at google.com>,
Nathan =?utf-8?q?Gauër?= <brioche at google.com>,
Nathan =?utf-8?q?Gauër?= <brioche at google.com>,
Nathan =?utf-8?q?Gauër?= <brioche at google.com>,
Nathan =?utf-8?q?Gauër?= <brioche at google.com>,
Nathan =?utf-8?q?Gauër?= <brioche at google.com>
Message-ID:
In-Reply-To: <llvm.org/llvm/llvm-project/pull/75948 at github.com>
================
@@ -12,6 +12,8 @@
// restore correct SPIR-V types of function arguments and return values.
// This pass also substitutes some llvm intrinsic calls with calls to newly
// generated functions (as the Khronos LLVM/SPIR-V Translator does).
+// This pass also trims convergence intrinsics as those were only useful when
+// modifying the CFG during IR passes.
//
// NOTE: this pass is a module-level one due to the necessity to modify
----------------
sudonatalie wrote:
Should we consider putting this new behavior in a `FunctionPass` rather than the existing `ModulePass` since it doesn't have any module-level behavior? From the documentation it looks like that's preferred when possible: https://llvm.org/docs/WritingAnLLVMPass.html
https://github.com/llvm/llvm-project/pull/75948
More information about the llvm-commits
mailing list