Fixing regression in arg_info tests

Resolves: NEO-4188

Change-Id: I375d0efc084b95d4a93a987b87d9e5635d7ec26b
This commit is contained in:
Jaroslaw Chodor
2020-01-25 18:21:33 +01:00
parent b74d502052
commit 2e64471f58
3 changed files with 13 additions and 5 deletions

View File

@ -251,10 +251,6 @@ void KernelInfo::storeKernelArgument(
kernelArgInfo[argNum].isMediaBlockImage = true;
}
kernelArgInfo[argNum].metadata.accessQualifier = pImageMemObjKernelArg->Writeable
? KernelArgMetadata::AccessQualifier::ReadWrite
: KernelArgMetadata::AccessQualifier::ReadOnly;
kernelArgInfo[argNum].metadata.argByValSize = sizeof(cl_mem);
kernelArgInfo[argNum].isTransformable = pImageMemObjKernelArg->Transformable != 0;

View File

@ -45,6 +45,18 @@ TEST(KernelInfoFromPatchTokens, GivenValidKernelWithArgThenMetadataIsProperlyPop
EXPECT_STREQ("const", dst.kernelArgInfo[0].metadataExtended->typeQualifiers.c_str());
}
TEST(KernelInfoFromPatchTokens, GivenValidKernelWithImageArgThenArgAccessQualifierIsPopulatedBasedOnArgInfo) {
PatchTokensTestData::ValidProgramWithKernelAndArg src;
iOpenCL::SPatchImageMemoryObjectKernelArgument imageArg = {};
imageArg.Token = iOpenCL::PATCH_TOKEN_IMAGE_MEMORY_OBJECT_KERNEL_ARGUMENT;
imageArg.Writeable = false;
src.kernels[0].tokens.kernelArgs[0].objectArg = &imageArg;
NEO::KernelInfo dst = {};
NEO::populateKernelInfo(dst, src.kernels[0], 4, {});
ASSERT_EQ(1U, dst.kernelArgInfo.size());
EXPECT_EQ(NEO::KernelArgMetadata::AccessQualifier::ReadWrite, dst.kernelArgInfo[0].metadata.accessQualifier);
}
TEST(KernelInfoFromPatchTokens, GivenValidKernelWithNonDelimitedArgTypeThenUsesArgTypeAsIs) {
PatchTokensTestData::ValidProgramWithKernelAndArg src;
src.arg0TypeMutable[4] = '*';

View File

@ -99,7 +99,7 @@ TEST(KernelInfo, decodeImageKernelArgument) {
EXPECT_EQ(sizeof(cl_mem), static_cast<size_t>(argInfo.metadata.argByValSize));
EXPECT_EQ(arg.Offset, argInfo.offsetHeap);
EXPECT_TRUE(argInfo.isImage);
EXPECT_EQ(KernelArgMetadata::AccessQualifier::ReadWrite, argInfo.metadata.accessQualifier);
EXPECT_EQ(KernelArgMetadata::AccessQualifier::Unknown, argInfo.metadata.accessQualifier);
EXPECT_TRUE(argInfo.metadata.typeQualifiers.empty());
}