Files
compute-runtime/shared/test/common/mocks/mock_sip.h
Mateusz Jablonski da6a83faa2 feature: add support for state save area header v4
Related-To: NEO-8188
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-08-26 16:03:20 +02:00

56 lines
1.5 KiB
C++

/*
* Copyright (C) 2018-2024 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
*/
#pragma once
#include "shared/source/built_ins/sip.h"
#include "shared/test/common/mocks/mock_execution_environment.h"
#include <memory>
#include <vector>
namespace NEO {
class MemoryAllocation;
class MockSipKernel : public SipKernel {
public:
using SipKernel::createHeaderFilename;
using SipKernel::type;
MockSipKernel(SipKernelType type, GraphicsAllocation *sipAlloc);
MockSipKernel();
~MockSipKernel() override;
static const char *dummyBinaryForSip;
static std::vector<char> getDummyGenBinary();
GraphicsAllocation *getSipAllocation() const override;
const std::vector<char> &getStateSaveAreaHeader() const override;
void createMockSipAllocation();
std::unique_ptr<MemoryAllocation> mockSipMemoryAllocation;
std::vector<char> mockStateSaveAreaHeader = {'s', 's', 'a', 'h'};
MockExecutionEnvironment executionEnvironment;
};
namespace MockSipData {
extern std::unique_ptr<MockSipKernel> mockSipKernel;
extern SipKernelType calledType;
extern bool called;
extern bool returned;
extern bool useMockSip;
extern bool uninitializedSipRequested;
extern uint64_t totalWmtpDataSize;
void clearUseFlags();
std::vector<char> createStateSaveAreaHeader(uint32_t version);
std::vector<char> createStateSaveAreaHeader(uint32_t version, uint16_t grfNum);
std::vector<char> createStateSaveAreaHeader(uint32_t version, uint16_t grfNum, uint16_t mmeNum);
} // namespace MockSipData
} // namespace NEO