mirror of
https://github.com/intel/compute-runtime.git
synced 2025-09-15 13:01:45 +08:00
Builtins increase context refcount.
Change-Id: I146852092e1cb374b816875ae9a90ac03a8f205e
This commit is contained in:

committed by
sys_ocldev

parent
09e4dab4f6
commit
39d55e5257
@ -832,6 +832,16 @@ TEST_F(BuiltInTests, getBuiltinResourcesForTypeBinary) {
|
||||
EXPECT_EQ(0u, mockBuiltinsLib->getBuiltinResource(EBuiltInOps::COUNT, BuiltinCode::ECodeType::Binary, *pDevice).size());
|
||||
}
|
||||
|
||||
TEST_F(BuiltInTests, givenCreateProgramFromCodeWhenReferenceCountedContextThenContextRefCountIncreases) {
|
||||
auto builtinsLib = std::unique_ptr<BuiltinsLib>(new BuiltinsLib());
|
||||
const BuiltinCode bc = builtinsLib->getBuiltinCode(EBuiltInOps::CopyBufferToBuffer, BuiltinCode::ECodeType::Any, *pDevice);
|
||||
EXPECT_NE(0u, bc.resource.size());
|
||||
auto refCount = pContext->getRefInternalCount();
|
||||
auto program = std::unique_ptr<Program>(BuiltinsLib::createProgramFromCode(bc, *pContext, *pDevice));
|
||||
EXPECT_EQ(pContext->getRefInternalCount(), refCount + 1);
|
||||
EXPECT_NE(nullptr, program.get());
|
||||
}
|
||||
|
||||
TEST_F(BuiltInTests, createProgramFromCodeForTypeAny) {
|
||||
auto builtinsLib = std::unique_ptr<BuiltinsLib>(new BuiltinsLib());
|
||||
const BuiltinCode bc = builtinsLib->getBuiltinCode(EBuiltInOps::CopyBufferToBuffer, BuiltinCode::ECodeType::Any, *pDevice);
|
||||
@ -1480,8 +1490,7 @@ TEST_F(BuiltInTests, getSipKernelReturnsProgramCreatedOutOfIsaAcquiredFromCompil
|
||||
mockCompilerInterface.overrideGlobalCompilerInterface();
|
||||
mockCompilerInterface.sipKernelBinaryOverride = mockCompilerInterface.getDummyGenBinary();
|
||||
cl_int errCode = CL_BUILD_PROGRAM_FAILURE;
|
||||
auto p = Program::createFromGenBinary(pContext, mockCompilerInterface.sipKernelBinaryOverride.data(), mockCompilerInterface.sipKernelBinaryOverride.size(),
|
||||
false, &errCode);
|
||||
auto p = Program::createFromGenBinary(pContext, mockCompilerInterface.sipKernelBinaryOverride.data(), mockCompilerInterface.sipKernelBinaryOverride.size(), &errCode);
|
||||
ASSERT_EQ(CL_SUCCESS, errCode);
|
||||
errCode = p->processGenBinary();
|
||||
ASSERT_EQ(CL_SUCCESS, errCode);
|
||||
|
Reference in New Issue
Block a user