Files
compute-runtime/shared/test/common/mocks/mock_execution_environment.h
Filip Hazubski 0d61860af6 fix: Reset builtins pointer after its resources are freed
Add resetBuiltins helper function to MockRootDeviceEnvironment.
Update tests to use the new function whenever builtins unique pointer
is reset to ensure that sip kernels are properly freed.

Related-To: HSD-18038645398, HSD-18038819112

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2024-06-20 10:49:56 +02:00

56 lines
1.9 KiB
C++

/*
* Copyright (C) 2018-2024 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
*/
#pragma once
#include "shared/source/execution_environment/execution_environment.h"
#include "shared/source/execution_environment/root_device_environment.h"
#include <optional>
namespace NEO {
class BuiltIns;
struct MockRootDeviceEnvironment : public RootDeviceEnvironment {
using BaseClass = RootDeviceEnvironment;
using RootDeviceEnvironment::hwInfo;
using RootDeviceEnvironment::isDummyAllocationInitialized;
using RootDeviceEnvironment::isWddmOnLinuxEnable;
using RootDeviceEnvironment::RootDeviceEnvironment;
~MockRootDeviceEnvironment() override;
void initAubCenter(bool localMemoryEnabled, const std::string &aubFileName, CommandStreamReceiverType csrType) override;
bool initOsInterface(std::unique_ptr<HwDeviceId> &&hwDeviceId, uint32_t rootDeviceIndex) override;
bool initAilConfiguration() override;
static void resetBuiltins(RootDeviceEnvironment *rootDeviceEnvironment, BuiltIns *newValue);
std::vector<bool> initOsInterfaceResults;
uint32_t initOsInterfaceCalled = 0u;
std::optional<uint32_t> initOsInterfaceExpectedCallCount;
bool initAubCenterCalled = false;
bool localMemoryEnabledReceived = false;
std::string aubFileNameReceived = "";
bool useMockAubCenter = true;
std::optional<bool> ailInitializationResult{true};
};
struct MockExecutionEnvironment : ExecutionEnvironment {
using ExecutionEnvironment::adjustCcsCountImpl;
using ExecutionEnvironment::directSubmissionController;
using ExecutionEnvironment::rootDeviceEnvironments;
~MockExecutionEnvironment() override = default;
MockExecutionEnvironment();
MockExecutionEnvironment(const HardwareInfo *hwInfo);
MockExecutionEnvironment(const HardwareInfo *hwInfo, bool useMockAubCenter, uint32_t numRootDevices);
void initGmm();
};
} // namespace NEO