1212#include " shared/source/helpers/file_io.h"
1313#include " shared/source/memory_manager/allocation_properties.h"
1414#include " shared/source/program/kernel_info.h"
15- #include " shared/test/common/device_binary_format/zebin_tests.h"
1615#include " shared/test/common/helpers/debug_manager_state_restore.h"
1716#include " shared/test/common/helpers/test_files.h"
1817#include " shared/test/common/mocks/mock_compilers.h"
1918#include " shared/test/common/mocks/mock_graphics_allocation.h"
2019#include " shared/test/common/mocks/mock_memory_manager.h"
20+ #include " shared/test/common/mocks/mock_modules_zebin.h"
2121
2222#include " level_zero/core/source/module/module.h"
2323#include " level_zero/core/source/module/module_imp.h"
@@ -156,22 +156,15 @@ struct ModuleImmutableDataFixture : public DeviceFixture {
156156 DeviceFixture::setupWithExecutionEnvironment (*executionEnvironment);
157157 }
158158
159- void createModuleFromBinary (uint32_t perHwThreadPrivateMemorySize, bool isInternal, MockImmutableData *mockKernelImmData) {
160- std::string testFile;
161- retrieveBinaryKernelFilenameApiSpecific (testFile, binaryFilename + " _" , " .bin" );
162-
163- size_t size = 0 ;
164- auto src = loadDataFromFile (
165- testFile.c_str (),
166- size);
167-
168- ASSERT_NE (0u , size);
169- ASSERT_NE (nullptr , src);
159+ void createModuleFromMockBinary (uint32_t perHwThreadPrivateMemorySize, bool isInternal, MockImmutableData *mockKernelImmData,
160+ std::initializer_list<ZebinTestData::appendElfAdditionalSection> additionalSections = {}) {
161+ zebinData = std::make_unique<ZebinTestData::ZebinWithL0TestCommonModule>(device->getHwInfo (), additionalSections);
162+ const auto &src = zebinData->storage ;
170163
171164 ze_module_desc_t moduleDesc = {};
172165 moduleDesc.format = ZE_MODULE_FORMAT_NATIVE;
173- moduleDesc.pInputModule = reinterpret_cast <const uint8_t *>(src.get ());
174- moduleDesc.inputSize = size;
166+ moduleDesc.pInputModule = reinterpret_cast <const uint8_t *>(src.data ());
167+ moduleDesc.inputSize = src. size () ;
175168
176169 ModuleBuildLog *moduleBuildLog = nullptr ;
177170
@@ -201,32 +194,25 @@ struct ModuleImmutableDataFixture : public DeviceFixture {
201194 const std::string kernelName = " test" ;
202195 const uint32_t numKernelArguments = 6 ;
203196 std::unique_ptr<MockModule> module ;
197+ std::unique_ptr<ZebinTestData::ZebinWithL0TestCommonModule> zebinData;
204198 MockImmutableMemoryManager *memoryManager;
205199};
206200
207201struct ModuleFixture : public DeviceFixture {
208202 void setUp () {
209203 NEO::MockCompilerEnableGuard mock (true );
210204 DeviceFixture::setUp ();
211- createModuleFromBinary ();
205+ createModuleFromMockBinary ();
212206 }
213207
214- void createModuleFromBinary (ModuleType type = ModuleType::User) {
215- std::string testFile;
216- retrieveBinaryKernelFilenameApiSpecific (testFile, binaryFilename + " _" , " .bin" );
217-
218- size_t size = 0 ;
219- auto src = loadDataFromFile (
220- testFile.c_str (),
221- size);
222-
223- ASSERT_NE (0u , size);
224- ASSERT_NE (nullptr , src);
208+ void createModuleFromMockBinary (ModuleType type = ModuleType::User) {
209+ zebinData = std::make_unique<ZebinTestData::ZebinWithL0TestCommonModule>(device->getHwInfo ());
210+ const auto &src = zebinData->storage ;
225211
226212 ze_module_desc_t moduleDesc = {};
227213 moduleDesc.format = ZE_MODULE_FORMAT_NATIVE;
228- moduleDesc.pInputModule = reinterpret_cast <const uint8_t *>(src.get ());
229- moduleDesc.inputSize = size;
214+ moduleDesc.pInputModule = reinterpret_cast <const uint8_t *>(src.data ());
215+ moduleDesc.inputSize = src. size () ;
230216
231217 ModuleBuildLog *moduleBuildLog = nullptr ;
232218
@@ -248,11 +234,11 @@ struct ModuleFixture : public DeviceFixture {
248234 DeviceFixture::tearDown ();
249235 }
250236
251- const std::string binaryFilename = " test_kernel" ;
252237 const std::string kernelName = " test" ;
253238 const uint32_t numKernelArguments = 6 ;
254239 std::unique_ptr<L0::Module> module ;
255240 std::unique_ptr<WhiteBox<::L0::Kernel>> kernel;
241+ std::unique_ptr<ZebinTestData::ZebinWithL0TestCommonModule> zebinData;
256242};
257243
258244struct MultiDeviceModuleFixture : public MultiDeviceFixture {
@@ -261,24 +247,18 @@ struct MultiDeviceModuleFixture : public MultiDeviceFixture {
261247 modules.resize (numRootDevices);
262248 }
263249
264- void createModuleFromBinary (uint32_t rootDeviceIndex) {
265- std::string testFile;
266- retrieveBinaryKernelFilenameApiSpecific (testFile, binaryFilename + " _" , " .bin" );
267-
268- size_t size = 0 ;
269- auto src = loadDataFromFile (testFile.c_str (), size);
270-
271- ASSERT_NE (0u , size);
272- ASSERT_NE (nullptr , src);
250+ void createModuleFromMockBinary (uint32_t rootDeviceIndex) {
251+ auto device = driverHandle->devices [rootDeviceIndex];
252+ zebinData = std::make_unique<ZebinTestData::ZebinWithL0TestCommonModule>(device->getHwInfo ());
253+ const auto &src = zebinData->storage ;
273254
274255 ze_module_desc_t moduleDesc = {};
275256 moduleDesc.format = ZE_MODULE_FORMAT_NATIVE;
276- moduleDesc.pInputModule = reinterpret_cast <const uint8_t *>(src.get ());
277- moduleDesc.inputSize = size;
257+ moduleDesc.pInputModule = reinterpret_cast <const uint8_t *>(src.data ());
258+ moduleDesc.inputSize = src. size () ;
278259
279260 ModuleBuildLog *moduleBuildLog = nullptr ;
280261
281- auto device = driverHandle->devices [rootDeviceIndex];
282262 modules[rootDeviceIndex].reset (Module::create (device,
283263 &moduleDesc,
284264 moduleBuildLog, ModuleType::User));
@@ -301,11 +281,11 @@ struct MultiDeviceModuleFixture : public MultiDeviceFixture {
301281 MultiDeviceFixture::tearDown ();
302282 }
303283
304- const std::string binaryFilename = " test_kernel" ;
305284 const std::string kernelName = " test" ;
306285 const uint32_t numKernelArguments = 6 ;
307286 std::vector<std::unique_ptr<L0::Module>> modules;
308287 std::unique_ptr<WhiteBox<::L0::Kernel>> kernel;
288+ std::unique_ptr<ZebinTestData::ZebinWithL0TestCommonModule> zebinData;
309289};
310290
311291struct ModuleWithZebinFixture : public DeviceFixture {
@@ -428,7 +408,7 @@ struct MultiTileModuleFixture : public MultiDeviceModuleFixture {
428408 MultiDeviceFixture::numSubDevices = 2u ;
429409
430410 MultiDeviceModuleFixture::setUp ();
431- createModuleFromBinary (0 );
411+ createModuleFromMockBinary (0 );
432412
433413 device = driverHandle->devices [0 ];
434414 }
0 commit comments