Skip to content

Commit 8b5827f

Browse files
committed
Move the check of existing kernel module inside the case where kernel module name is specified.
1 parent d31b139 commit 8b5827f

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

mlir/lib/Dialect/GPU/Transforms/KernelOutlining.cpp

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -411,19 +411,20 @@ class GpuKernelOutliningPass
411411
auto *context = getOperation().getContext();
412412
OpBuilder builder(context);
413413
std::string kernelModuleName;
414+
gpu::GPUModuleOp kernelModule = nullptr;
414415
if (gpuLaunchOp.getKernelModule()) {
415416
kernelModuleName =
416417
gpuLaunchOp.getKernelModule()->getRootReference().str();
418+
if (auto existingModule =
419+
parentSymbolTable.lookup<gpu::GPUModuleOp>(kernelModuleName)) {
420+
kernelModule = existingModule;
421+
}
417422
} else {
418423
kernelModuleName = kernelFunc.getName();
419424
}
420425

421-
gpu::GPUModuleOp kernelModule;
422426
// Check if the module already exists in the symbol table
423-
if (auto existingModule =
424-
parentSymbolTable.lookup<gpu::GPUModuleOp>(kernelModuleName)) {
425-
kernelModule = existingModule;
426-
} else {
427+
if (!kernelModule) {
427428
// If not found, create a new GPU module
428429
kernelModule = builder.create<gpu::GPUModuleOp>(kernelFunc.getLoc(),
429430
kernelModuleName);

0 commit comments

Comments
 (0)