Skip to content

Commit 1c22145

Browse files
author
oojahooo-enerzai
committed
Fix failures in other test cases
It had to be checked for a lack of `"targets"` attribute in a GPU module.
1 parent 9344c20 commit 1c22145

File tree

2 files changed

+10
-6
lines changed

2 files changed

+10
-6
lines changed

mlir/lib/Conversion/GPUToSPIRV/GPUToSPIRV.cpp

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -385,9 +385,11 @@ LogicalResult GPUModuleConversion::matchAndRewrite(
385385
if (auto attr = moduleOp->getAttrOfType<spirv::TargetEnvAttr>(
386386
spirv::getTargetEnvAttrName()))
387387
spvModule->setAttr(spirv::getTargetEnvAttrName(), attr);
388-
for (const Attribute &targetAttr : moduleOp.getTargetsAttr())
389-
if (auto spirvTargetEnvAttr = dyn_cast<spirv::TargetEnvAttr>(targetAttr))
390-
spvModule->setAttr(spirv::getTargetEnvAttrName(), spirvTargetEnvAttr);
388+
if (const ArrayAttr &targets = moduleOp.getTargetsAttr()) {
389+
for (const Attribute &targetAttr : targets)
390+
if (auto spirvTargetEnvAttr = dyn_cast<spirv::TargetEnvAttr>(targetAttr))
391+
spvModule->setAttr(spirv::getTargetEnvAttrName(), spirvTargetEnvAttr);
392+
}
391393

392394
rewriter.eraseOp(moduleOp);
393395
return success();

mlir/lib/Conversion/GPUToSPIRV/GPUToSPIRVPass.cpp

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -61,9 +61,11 @@ struct GPUToSPIRVPass final : impl::ConvertGPUToSPIRVBase<GPUToSPIRVPass> {
6161

6262
spirv::TargetEnvAttr
6363
GPUToSPIRVPass::lookupTargetEnvInTargets(gpu::GPUModuleOp moduleOp) {
64-
for (const Attribute &targetAttr : moduleOp.getTargetsAttr())
65-
if (auto spirvTargetEnvAttr = dyn_cast<spirv::TargetEnvAttr>(targetAttr))
66-
return spirvTargetEnvAttr;
64+
if (const ArrayAttr &targets = moduleOp.getTargetsAttr()) {
65+
for (const Attribute &targetAttr : targets)
66+
if (auto spirvTargetEnvAttr = dyn_cast<spirv::TargetEnvAttr>(targetAttr))
67+
return spirvTargetEnvAttr;
68+
}
6769

6870
return {};
6971
}

0 commit comments

Comments
 (0)