================ @@ -556,8 +563,45 @@ Error GenericKernelTy::launch(GenericDeviceTy &GenericDevice, void **ArgPtrs, llvm::SmallVector<void *, 16> Args; llvm::SmallVector<void *, 16> Ptrs; + uint32_t NumThreads[3] = {KernelArgs.ThreadLimit[0], + KernelArgs.ThreadLimit[1], + KernelArgs.ThreadLimit[2]}; + uint32_t NumBlocks[3] = {KernelArgs.NumTeams[0], KernelArgs.NumTeams[1], + KernelArgs.NumTeams[2]}; + if (!isBareMode()) { + NumThreads[0] = getNumThreads(GenericDevice, NumThreads); + NumBlocks[0] = getNumBlocks(GenericDevice, NumBlocks, KernelArgs.Tripcount, + NumThreads[0], KernelArgs.ThreadLimit[0] > 0); + } + + uint32_t MaxBlockMemSize = GenericDevice.getMaxBlockSharedMemSize(); + uint32_t DynBlockMemSize = KernelArgs.DynCGroupMem; + uint32_t TotalBlockMemSize = StaticBlockMemSize + DynBlockMemSize; + if (StaticBlockMemSize > MaxBlockMemSize) + return Plugin::error(ErrorCode::INVALID_ARGUMENT, + "Static block memory size exceeds maximum"); + else if (!KernelArgs.Flags.AllowDynCGroupMemFallback && + TotalBlockMemSize > MaxBlockMemSize) + return Plugin::error( + ErrorCode::INVALID_ARGUMENT, + "Static and dynamic block memory size exceeds maximum"); ---------------- arsenm wrote:
Error messages should start with lowercase https://github.com/llvm/llvm-project/pull/152831 _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits