mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-03 23:03:02 +08:00
refactor(zebin): move files to seperate directory
* Moved zebin related files to zebin directory. * Moved zebin related code to Zebin namespace. * Separated zeInfo from zebin elf. * Seperated zeInfo decoding from zebin decoder. * Refactored populateKernelPayloadArgument function. Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
210b4cfeea
commit
58d3f892a9
@@ -616,7 +616,7 @@ TEST_F(ProgramGetKernelInfoTest, givenProgramWithFunctionsWhenGettingKernelInfoB
|
||||
}
|
||||
|
||||
TEST_F(ProgramGetKernelInfoTest, givenProgramFunctionsWhenGettingKernelInfoByNameThenFunctionsAreNotExposed) {
|
||||
EXPECT_EQ(nullptr, program->getKernelInfo(NEO::Elf::SectionsNamesZebin::externalFunctions.data(), uint32_t(0)));
|
||||
EXPECT_EQ(nullptr, program->getKernelInfo(NEO::Zebin::Elf::SectionNames::externalFunctions.data(), uint32_t(0)));
|
||||
}
|
||||
|
||||
HWTEST_F(ProgramFromBinaryTest, givenProgramWhenCleanCurrentKernelInfoIsCalledButGpuIsNotYetDoneThenKernelAllocationIsPutOnDeferredFreeListAndCsrRegistersCacheFlush) {
|
||||
@@ -3565,7 +3565,7 @@ kernels:
|
||||
constexpr auto numBits = is32bit ? Elf::EI_CLASS_32 : Elf::EI_CLASS_64;
|
||||
MockElfEncoder<numBits> elfEncoder;
|
||||
elfEncoder.getElfFileHeader().type = NEO::Elf::ET_REL;
|
||||
elfEncoder.appendSection(Elf::SHT_ZEBIN::SHT_ZEBIN_ZEINFO, Elf::SectionsNamesZebin::zeInfo, ArrayRef<const uint8_t>::fromAny(invalidZeInfo.data(), invalidZeInfo.size()));
|
||||
elfEncoder.appendSection(Zebin::Elf::SHT_ZEBIN::SHT_ZEBIN_ZEINFO, Zebin::Elf::SectionNames::zeInfo, ArrayRef<const uint8_t>::fromAny(invalidZeInfo.data(), invalidZeInfo.size()));
|
||||
auto storage = elfEncoder.encode();
|
||||
buildInfo.unpackedDeviceBinary.reset(reinterpret_cast<char *>(storage.data()));
|
||||
buildInfo.unpackedDeviceBinarySize = storage.size();
|
||||
@@ -3605,11 +3605,11 @@ kernels_misc_info:
|
||||
constexpr auto numBits = is32bit ? Elf::EI_CLASS_32 : Elf::EI_CLASS_64;
|
||||
MockElfEncoder<numBits> elfEncoder;
|
||||
elfEncoder.getElfFileHeader().type = NEO::Elf::ET_REL;
|
||||
elfEncoder.appendSection(Elf::SHT_ZEBIN::SHT_ZEBIN_ZEINFO, Elf::SectionsNamesZebin::zeInfo, ArrayRef<const uint8_t>::fromAny(zeInfo.data(), zeInfo.size()));
|
||||
elfEncoder.appendSection(Zebin::Elf::SHT_ZEBIN::SHT_ZEBIN_ZEINFO, Zebin::Elf::SectionNames::zeInfo, ArrayRef<const uint8_t>::fromAny(zeInfo.data(), zeInfo.size()));
|
||||
auto storage = elfEncoder.encode();
|
||||
buildInfo.unpackedDeviceBinary.reset(reinterpret_cast<char *>(storage.data()));
|
||||
buildInfo.unpackedDeviceBinarySize = storage.size();
|
||||
buildInfo.kernelMiscInfoPos = zeInfo.str().find(Elf::ZebinKernelMetadata::Tags::kernelMiscInfo.str());
|
||||
buildInfo.kernelMiscInfoPos = zeInfo.str().find(Zebin::ZeInfo::Tags::kernelMiscInfo.str());
|
||||
ASSERT_NE(std::string::npos, buildInfo.kernelMiscInfoPos);
|
||||
|
||||
ASSERT_TRUE(kernelInfo.kernelDescriptor.explicitArgsExtendedMetadata.empty());
|
||||
|
||||
@@ -58,7 +58,7 @@ HWTEST_F(ZebinFallbackToPatchtokensLegacyDebugger, WhenCreatingProgramFromNonBui
|
||||
GTEST_SKIP();
|
||||
}
|
||||
const uint8_t mockSpvData[0x10]{0};
|
||||
zebin.appendSection(Elf::SHT_ZEBIN_SPIRV, Elf::SectionsNamesZebin::spv, mockSpvData);
|
||||
zebin.appendSection(Zebin::Elf::SHT_ZEBIN_SPIRV, Zebin::Elf::SectionNames::spv, mockSpvData);
|
||||
|
||||
std::unique_ptr<MockProgram> program;
|
||||
device->executionEnvironment->rootDeviceEnvironments[mockRootDeviceIndex]->debugger.reset(new MockActiveSourceLevelDebugger);
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
*
|
||||
*/
|
||||
|
||||
#include "shared/source/device_binary_format/zebin/debug_zebin.h"
|
||||
#include "shared/test/common/mocks/mock_modules_zebin.h"
|
||||
#include "shared/test/common/mocks/mock_source_level_debugger.h"
|
||||
#include "shared/test/common/test_macros/test.h"
|
||||
@@ -36,7 +37,7 @@ TEST_F(ProgramWithZebinFixture, givenZebinSegmentsThenSegmentsArePopulated) {
|
||||
populateProgramWithSegments(program.get());
|
||||
auto segments = program->getZebinSegments(rootDeviceIndex);
|
||||
|
||||
auto checkGPUSeg = [](NEO::GraphicsAllocation *alloc, NEO::Debug::Segments::Segment segment) {
|
||||
auto checkGPUSeg = [](NEO::GraphicsAllocation *alloc, NEO::Zebin::Debug::Segments::Segment segment) {
|
||||
EXPECT_EQ(static_cast<uintptr_t>(alloc->getGpuAddress()), segment.address);
|
||||
EXPECT_EQ(static_cast<size_t>(alloc->getUnderlyingBufferSize()), segment.size);
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user