mirror of
https://github.com/intel/compute-runtime.git
synced 2025-09-15 13:01:45 +08:00
32bit zebin support
This commit adds support for 32 bit zebinary in NEO runtime and in ocloc validate. Resolves: NEO-7288 Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
This commit is contained in:

committed by
Compute-Runtime-Automation

parent
b5b9c3500f
commit
596e9f815c
@ -295,7 +295,7 @@ struct ModuleWithZebinFixture : public DeviceFixture {
|
||||
MockImmutableData(L0::Device *device) {
|
||||
|
||||
auto mockKernelDescriptor = new NEO::KernelDescriptor;
|
||||
mockKernelDescriptor->kernelMetadata.kernelName = ZebinTestData::ValidEmptyProgram::kernelName;
|
||||
mockKernelDescriptor->kernelMetadata.kernelName = ZebinTestData::ValidEmptyProgram<>::kernelName;
|
||||
kernelDescriptor = mockKernelDescriptor;
|
||||
this->device = device;
|
||||
auto ptr = reinterpret_cast<void *>(0x1234);
|
||||
@ -357,7 +357,7 @@ struct ModuleWithZebinFixture : public DeviceFixture {
|
||||
}
|
||||
|
||||
void addEmptyZebin() {
|
||||
auto zebin = ZebinTestData::ValidEmptyProgram();
|
||||
auto zebin = ZebinTestData::ValidEmptyProgram<>();
|
||||
|
||||
translationUnit->unpackedDeviceBinarySize = zebin.storage.size();
|
||||
translationUnit->unpackedDeviceBinary.reset(new char[zebin.storage.size()]);
|
||||
|
@ -617,7 +617,7 @@ HWTEST_F(ModuleWithZebinAndL0DebuggerTest, GivenZebinDebugDataWhenInitializingMo
|
||||
auto kernelInfo = std::make_unique<KernelInfo>();
|
||||
kernelInfo->heapInfo.KernelHeapSize = 1;
|
||||
kernelInfo->heapInfo.pKernelHeap = &kernelHeap;
|
||||
kernelInfo->kernelDescriptor.kernelMetadata.kernelName = ZebinTestData::ValidEmptyProgram::kernelName;
|
||||
kernelInfo->kernelDescriptor.kernelMetadata.kernelName = ZebinTestData::ValidEmptyProgram<>::kernelName;
|
||||
|
||||
auto kernelImmutableData = ::std::make_unique<KernelImmutableData>(device);
|
||||
kernelImmutableData->initialize(kernelInfo.get(), device, 0, nullptr, nullptr, false);
|
||||
@ -629,7 +629,7 @@ HWTEST_F(ModuleWithZebinAndL0DebuggerTest, GivenZebinDebugDataWhenInitializingMo
|
||||
kernelImmutableData->initialize(kernelInfo.get(), device, 0, nullptr, nullptr, false);
|
||||
moduleMock->kernelImmDatas.push_back(std::move(kernelImmutableData));
|
||||
|
||||
auto zebin = ZebinTestData::ValidEmptyProgram();
|
||||
auto zebin = ZebinTestData::ValidEmptyProgram<>();
|
||||
moduleMock->translationUnit = std::make_unique<MockModuleTranslationUnit>(device);
|
||||
moduleMock->translationUnit->unpackedDeviceBinarySize = zebin.storage.size();
|
||||
moduleMock->translationUnit->unpackedDeviceBinary.reset(new char[zebin.storage.size()]);
|
||||
@ -675,7 +675,7 @@ HWTEST_F(ModuleWithZebinAndL0DebuggerTest, GivenZebinWhenModuleIsInitializedAndD
|
||||
auto kernelInfo = std::make_unique<KernelInfo>();
|
||||
kernelInfo->heapInfo.KernelHeapSize = 1;
|
||||
kernelInfo->heapInfo.pKernelHeap = &kernelHeap;
|
||||
kernelInfo->kernelDescriptor.kernelMetadata.kernelName = ZebinTestData::ValidEmptyProgram::kernelName;
|
||||
kernelInfo->kernelDescriptor.kernelMetadata.kernelName = ZebinTestData::ValidEmptyProgram<>::kernelName;
|
||||
|
||||
auto kernelImmutableData = ::std::make_unique<KernelImmutableData>(device);
|
||||
kernelImmutableData->initialize(kernelInfo.get(), device, 0, nullptr, nullptr, false);
|
||||
@ -683,7 +683,7 @@ HWTEST_F(ModuleWithZebinAndL0DebuggerTest, GivenZebinWhenModuleIsInitializedAndD
|
||||
moduleMock->translationUnit = std::make_unique<MockModuleTranslationUnit>(device);
|
||||
moduleMock->kernelImmDatas.push_back(std::move(kernelImmutableData));
|
||||
|
||||
auto zebin = ZebinTestData::ValidEmptyProgram();
|
||||
auto zebin = ZebinTestData::ValidEmptyProgram<>();
|
||||
moduleMock->translationUnit = std::make_unique<MockModuleTranslationUnit>(device);
|
||||
moduleMock->translationUnit->unpackedDeviceBinarySize = zebin.storage.size();
|
||||
moduleMock->translationUnit->unpackedDeviceBinary.reset(new char[zebin.storage.size()]);
|
||||
@ -803,7 +803,7 @@ HWTEST_F(ModuleWithZebinAndL0DebuggerTest, GivenModuleDebugHandleZeroWhenInitial
|
||||
auto kernelInfo = std::make_unique<KernelInfo>();
|
||||
kernelInfo->heapInfo.KernelHeapSize = 1;
|
||||
kernelInfo->heapInfo.pKernelHeap = &kernelHeap;
|
||||
kernelInfo->kernelDescriptor.kernelMetadata.kernelName = ZebinTestData::ValidEmptyProgram::kernelName;
|
||||
kernelInfo->kernelDescriptor.kernelMetadata.kernelName = ZebinTestData::ValidEmptyProgram<>::kernelName;
|
||||
|
||||
auto kernelImmutableData = ::std::make_unique<KernelImmutableData>(device);
|
||||
kernelImmutableData->initialize(kernelInfo.get(), device, 0, nullptr, nullptr, false);
|
||||
@ -811,7 +811,7 @@ HWTEST_F(ModuleWithZebinAndL0DebuggerTest, GivenModuleDebugHandleZeroWhenInitial
|
||||
moduleMock->translationUnit = std::make_unique<MockModuleTranslationUnit>(device);
|
||||
moduleMock->kernelImmDatas.push_back(std::move(kernelImmutableData));
|
||||
|
||||
auto zebin = ZebinTestData::ValidEmptyProgram();
|
||||
auto zebin = ZebinTestData::ValidEmptyProgram<>();
|
||||
moduleMock->translationUnit = std::make_unique<MockModuleTranslationUnit>(device);
|
||||
moduleMock->translationUnit->unpackedDeviceBinarySize = zebin.storage.size();
|
||||
moduleMock->translationUnit->unpackedDeviceBinary.reset(new char[zebin.storage.size()]);
|
||||
|
@ -3118,7 +3118,7 @@ TEST_F(ModuleWithZebinTest, givenZebinSegmentsThenSegmentsArePopulated) {
|
||||
};
|
||||
checkGPUSeg(module->translationUnit->globalConstBuffer, segments.constData);
|
||||
checkGPUSeg(module->translationUnit->globalConstBuffer, segments.varData);
|
||||
checkGPUSeg(module->kernelImmDatas[0]->getIsaGraphicsAllocation(), segments.nameToSegMap[ZebinTestData::ValidEmptyProgram::kernelName]);
|
||||
checkGPUSeg(module->kernelImmDatas[0]->getIsaGraphicsAllocation(), segments.nameToSegMap[ZebinTestData::ValidEmptyProgram<>::kernelName]);
|
||||
|
||||
EXPECT_EQ(reinterpret_cast<uintptr_t>(module->translationUnit->programInfo.globalStrings.initData), segments.stringData.address);
|
||||
EXPECT_EQ(module->translationUnit->programInfo.globalStrings.size, segments.stringData.size);
|
||||
|
Reference in New Issue
Block a user