[llvm] [offload] Verify replay config of teams/threads is allowed (PR #192784)

Kevin Sala Penades via llvm-commits llvm-commits at lists.llvm.org
Sat Apr 18 14:07:20 PDT 2026


================
@@ -206,14 +206,24 @@ Error NativeRecordReplayTy::recordDescImpl(
   json::Object JsonKernelInfo;
   JsonKernelInfo["Name"] = Kernel.getName();
   JsonKernelInfo["NumArgs"] = KernelArgs.NumArgs;
-  JsonKernelInfo["NumTeamsClause"] = Instance.NumTeams;
-  JsonKernelInfo["ThreadLimitClause"] = Instance.NumThreads;
+  JsonKernelInfo["NumTeams"] = Instance.NumTeams;
+  JsonKernelInfo["NumThreads"] = Instance.NumThreads;
   JsonKernelInfo["SharedMemorySize"] = Instance.SharedMemorySize;
   JsonKernelInfo["LoopTripCount"] = KernelArgs.Tripcount;
   JsonKernelInfo["DeviceId"] = Device.getDeviceId();
   JsonKernelInfo["VAllocAddr"] = (intptr_t)StartAddr;
   JsonKernelInfo["VAllocSize"] = TotalSize;
 
+  json::Array JsonTeamsLimits;
+  JsonTeamsLimits.push_back(KernelArgs.NumTeams[0]);
+  JsonTeamsLimits.push_back(KernelArgs.NumTeams[0]);
+  JsonKernelInfo["TeamsLimits"] = json::Value(std::move(JsonTeamsLimits));
+
+  json::Array JsonThreadsLimits;
+  JsonThreadsLimits.push_back(KernelArgs.ThreadLimit[0] > 0);
+  JsonThreadsLimits.push_back(KernelArgs.ThreadLimit[0]);
----------------
kevinsala wrote:

I missed adding a comment here. It's the min and max values. For now they are unused. But OpenMP spec allows defining an upper and lower bound values for `num_teams`.

I've added the same in the number of threads for consistency.

https://github.com/llvm/llvm-project/pull/192784


More information about the llvm-commits mailing list