Files
compute-runtime/runtime/gmm_helper/gmm_interface.cpp
Maciej Plewka 9e52684f5b Change namespace from OCLRT to NEO
Change-Id: If965c79d70392db26597aea4c2f3b7ae2820fe96
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2019-03-26 15:48:19 +01:00

34 lines
944 B
C++

/*
* Copyright (C) 2018-2019 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
*/
#include "runtime/gmm_helper/gmm_helper.h"
#include "runtime/helpers/debug_helpers.h"
#include "runtime/os_interface/os_library.h"
namespace Os {
extern const char *gmmDllName;
extern const char *gmmEntryName;
} // namespace Os
namespace NEO {
void GmmHelper::loadLib() {
gmmLib.reset(OsLibrary::load(Os::gmmDllName));
bool isLoaded = false;
UNRECOVERABLE_IF(!gmmLib);
auto openGmmFunc = reinterpret_cast<decltype(&OpenGmm)>(gmmLib->getProcAddress(Os::gmmEntryName));
auto status = openGmmFunc(&gmmEntries);
if (status == GMM_SUCCESS) {
isLoaded = gmmEntries.pfnCreateClientContext &&
gmmEntries.pfnCreateSingletonContext &&
gmmEntries.pfnDeleteClientContext &&
gmmEntries.pfnDestroySingletonContext;
}
UNRECOVERABLE_IF(!isLoaded);
}
} // namespace NEO