Add CpuInfo::isCpuFlagPresent() method

Related-To: NEO-5276

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
This commit is contained in:
Igor Venevtsev
2020-12-07 15:52:36 +01:00
committed by Compute-Runtime-Automation
parent efcd05d7bd
commit 92f067b9aa
9 changed files with 218 additions and 4 deletions

View File

@@ -1,5 +1,5 @@
#
# Copyright (C) 2019-2020 Intel Corporation
# Copyright (C) 2019-2021 Intel Corporation
#
# SPDX-License-Identifier: MIT
#
@@ -23,3 +23,5 @@ target_sources(${TARGET_NAME} PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}/timer_util_tests.cpp
${CMAKE_CURRENT_SOURCE_DIR}/vec_tests.cpp
)
add_subdirectories()

View File

@@ -0,0 +1,16 @@
#
# Copyright (C) 2021 Intel Corporation
#
# SPDX-License-Identifier: MIT
#
set(UTILITIES_CPUINFO_TESTS_LINUX
${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt
${CMAKE_CURRENT_SOURCE_DIR}/cpuinfo_tests_linux.cpp
)
if(UNIX)
target_sources(${TARGET_NAME} PRIVATE
${UTILITIES_CPUINFO_TESTS_LINUX}
)
endif()

View File

@@ -0,0 +1,23 @@
/*
* Copyright (C) 2021 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
*/
#include "shared/source/helpers/file_io.h"
#include "shared/source/utilities/cpu_info.h"
#include "gtest/gtest.h"
using namespace NEO;
TEST(CpuInfo, givenProcCpuinfoFileExistsWhenIsCpuFlagPresentIsCalledThenValidValueIsReturned) {
std::string cpuinfoFile = "test_files/linux/proc/cpuinfo";
EXPECT_TRUE(fileExists(cpuinfoFile));
CpuInfo testCpuInfo;
EXPECT_TRUE(testCpuInfo.isCpuFlagPresent("fpu"));
EXPECT_TRUE(testCpuInfo.isCpuFlagPresent("vme"));
EXPECT_FALSE(testCpuInfo.isCpuFlagPresent("nonExistingCpuFlag"));
}

View File

@@ -0,0 +1,16 @@
#
# Copyright (C) 2019-2021 Intel Corporation
#
# SPDX-License-Identifier: MIT
#
set(UTILITIES_CPUINFO_TESTS_WINDOWS
${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt
${CMAKE_CURRENT_SOURCE_DIR}/cpuinfo_tests_windows.cpp
)
if(WIN32)
target_sources(${TARGET_NAME} PRIVATE
${UTILITIES_CPUINFO_TESTS_WINDOWS}
)
endif()

View File

@@ -0,0 +1,20 @@
/*
* Copyright (C) 2021 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
*/
#include "shared/source/utilities/cpu_info.h"
#include "gtest/gtest.h"
using namespace NEO;
TEST(CpuInfo, givenIsCpuFlagPresentCalledThenFalseIsReturned) {
CpuInfo testCpuInfo;
EXPECT_FALSE(testCpuInfo.isCpuFlagPresent("fpu"));
EXPECT_FALSE(testCpuInfo.isCpuFlagPresent("vme"));
EXPECT_FALSE(testCpuInfo.isCpuFlagPresent("nonExistingCpuFlag"));
}