[clang] [llvm] [clang][OpenMP] Add no-loop SPMD kernel promotion (PR #224041)
Dhruva Chakrabarti via llvm-commits
llvm-commits at lists.llvm.org
Mon Sep 28 22:50:35 PDT 2026
================
@@ -66,6 +66,15 @@ static bool canEmitGPUFusedDistSchedule(const CodeGenModule &CGM,
!S.getSingleClause<OMPOrderedClause>();
}
+static bool canEmitGPUNoLoopKernel(CodeGenModule &CGM,
----------------
dhruvachak wrote:
This PR needs to stand on its own. While I agree that it will run correctly, I don't like the inconsistency where execution mode is NO_LOOP but the body is SPMD. Please have a shared helper in this patch and then https://github.com/llvm/llvm-project/pull/224650 can build on top of this one. Similarly, this patch needs test cases for all the negative clauses where NO_LOOP promotion is blocked, e.g. collapse, schedule, dist_schedule, lastprivate, linear, etc. Some of them already exist in the latter patch that you can just move here.
https://github.com/llvm/llvm-project/pull/224041
More information about the llvm-commits
mailing list