[llvm] [LoopUnroll] Allow runtime unroll with remainder for uniform trip count in convergent loops (PR #192819)
Matt Arsenault via llvm-commits
llvm-commits at lists.llvm.org
Fri May 1 03:13:55 PDT 2026
================
@@ -757,6 +758,19 @@ static bool hasRuntimeUnrollDisablePragma(const Loop *L) {
return getUnrollMetadataForLoop(L, "llvm.loop.unroll.runtime.disable");
}
+/// Returns true if the SCEV expression is uniform, i.e., all threads in a
+/// convergent execution agree on its value. Recursively checks operands.
+static bool isSCEVUniform(const SCEV *S, UniformityInfo &UI) {
----------------
arsenm wrote:
> Out of curiosity, what other notions of uniformity exist in LLVM?
Uniform across a SIMD vector
https://github.com/llvm/llvm-project/pull/192819
More information about the llvm-commits
mailing list