mirror of
https://github.com/intel/compute-runtime.git
synced 2025-09-20 13:11:34 +08:00
Make usesStringMap flag independent of implicit args requirements
This commits removes part of condition requiring requiresImplicitArgs flag set in kernel descriptor in order to set usesStringMap flag. Related-To: NEO-6604 Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
This commit is contained in:

committed by
Compute-Runtime-Automation

parent
ae357c79ed
commit
1390af6efe
@ -624,56 +624,13 @@ HWCMDTEST_P(IGFX_GEN8_CORE, EnqueueKernelPrintfTest, GivenKernelWithPrintfBlocke
|
||||
}
|
||||
|
||||
HWTEST_P(EnqueueKernelPrintfTest, GivenKernelWithPrintfBlockedByEventWhenEventUnblockedThenOutputPrinted) {
|
||||
testing::internal::CaptureStdout();
|
||||
|
||||
auto userEvent = make_releaseable<UserEvent>(context);
|
||||
|
||||
MockKernelWithInternals mockKernel(*pClDevice);
|
||||
mockKernel.kernelInfo.setPrintfSurface(sizeof(uintptr_t), 0);
|
||||
std::string testString = "test";
|
||||
mockKernel.kernelInfo.addToPrintfStringsMap(0, testString);
|
||||
|
||||
cl_uint workDim = 1;
|
||||
size_t globalWorkOffset[3] = {0, 0, 0};
|
||||
|
||||
FillValues();
|
||||
|
||||
cl_event blockedEvent = userEvent.get();
|
||||
cl_event outEvent{};
|
||||
auto retVal = pCmdQ->enqueueKernel(
|
||||
mockKernel,
|
||||
workDim,
|
||||
globalWorkOffset,
|
||||
globalWorkSize,
|
||||
localWorkSize,
|
||||
1,
|
||||
&blockedEvent,
|
||||
&outEvent);
|
||||
|
||||
ASSERT_EQ(CL_SUCCESS, retVal);
|
||||
|
||||
auto pOutEvent = castToObject<Event>(outEvent);
|
||||
|
||||
auto printfAllocation = reinterpret_cast<uint32_t *>(static_cast<CommandComputeKernel *>(pOutEvent->peekCommand())->peekPrintfHandler()->getSurface()->getUnderlyingBuffer());
|
||||
printfAllocation[0] = 8;
|
||||
printfAllocation[1] = 0;
|
||||
|
||||
pOutEvent->release();
|
||||
|
||||
userEvent->setStatus(CL_COMPLETE);
|
||||
|
||||
std::string output = testing::internal::GetCapturedStdout();
|
||||
EXPECT_STREQ("test", output.c_str());
|
||||
}
|
||||
|
||||
HWTEST_P(EnqueueKernelPrintfTest, GivenKernelWithImplicitArgsWhenEventUnblockedThenOutputPrinted) {
|
||||
auto userEvent = make_releaseable<UserEvent>(context);
|
||||
|
||||
MockKernelWithInternals mockKernel(*pClDevice);
|
||||
std::string testString = "test";
|
||||
mockKernel.kernelInfo.addToPrintfStringsMap(0, testString);
|
||||
mockKernel.kernelInfo.kernelDescriptor.kernelAttributes.flags.usesPrintf = false;
|
||||
mockKernel.kernelInfo.kernelDescriptor.kernelAttributes.flags.usesStringMapForPrintf = false;
|
||||
mockKernel.kernelInfo.kernelDescriptor.kernelAttributes.flags.usesStringMapForPrintf = true;
|
||||
mockKernel.mockKernel->pImplicitArgs = std::make_unique<ImplicitArgs>();
|
||||
*mockKernel.mockKernel->pImplicitArgs = {};
|
||||
|
||||
|
Reference in New Issue
Block a user