diff --git a/runtime/mem_obj/image.cpp b/runtime/mem_obj/image.cpp index 59ca278e7b..99af526fcf 100644 --- a/runtime/mem_obj/image.cpp +++ b/runtime/mem_obj/image.cpp @@ -182,8 +182,8 @@ Image *Image::create(Context *context, auto hostPtrRowPitch = imageDesc->image_row_pitch ? imageDesc->image_row_pitch : imageWidth * surfaceFormat->ImageElementSizeInBytes; auto hostPtrSlicePitch = imageDesc->image_slice_pitch ? imageDesc->image_slice_pitch : hostPtrRowPitch * imageHeight; - auto isTilingAllowed = context->isSharedContext ? false : GmmHelper::allowTiling(*imageDesc) && !MemObjHelper::isLinearStorageForced(properties); MemoryPropertiesFlags memoryProperties = MemoryPropertiesFlagsParser::createMemoryPropertiesFlags(properties); + auto isTilingAllowed = context->isSharedContext ? false : GmmHelper::allowTiling(*imageDesc) && !memoryProperties.forceLinearStorage; imgInfo.preferRenderCompression = MemObjHelper::isSuitableForRenderCompression(isTilingAllowed, memoryProperties, context->peekContextType(), true); diff --git a/runtime/mem_obj/mem_obj_helper.h b/runtime/mem_obj/mem_obj_helper.h index e0255bdba6..104731c65e 100644 --- a/runtime/mem_obj/mem_obj_helper.h +++ b/runtime/mem_obj/mem_obj_helper.h @@ -110,11 +110,6 @@ class MemObjHelper { return svmProperties; } - static bool isLinearStorageForced(const MemoryProperties &memoryProperties) { - return isValueSet(memoryProperties.flags, CL_MEM_FORCE_LINEAR_STORAGE_INTEL) || - isValueSet(memoryProperties.flags_intel, CL_MEM_FORCE_LINEAR_STORAGE_INTEL); - } - static bool isSuitableForRenderCompression(bool renderCompressed, const MemoryPropertiesFlags &properties, ContextType contextType, bool preferCompression); protected: diff --git a/unit_tests/mem_obj/mem_obj_helper_tests.cpp b/unit_tests/mem_obj/mem_obj_helper_tests.cpp index 96ebd30a19..861a7b34e3 100644 --- a/unit_tests/mem_obj/mem_obj_helper_tests.cpp +++ b/unit_tests/mem_obj/mem_obj_helper_tests.cpp @@ -5,6 +5,7 @@ * */ +#include "runtime/helpers/memory_properties_flags_helpers.h" #include "runtime/mem_obj/mem_obj_helper.h" #include "unit_tests/fixtures/image_fixture.h" #include "unit_tests/utilities/base_object_utils.h" @@ -28,22 +29,27 @@ TEST(MemObjHelper, givenInvalidMemFlagsForSubBufferWhenFlagsAreCheckedThenTrueIs TEST(MemObjHelper, givenClMemForceLinearStorageFlagWhenCheckForLinearStorageForceThenReturnProperValue) { MemoryProperties properties; + MemoryPropertiesFlags memoryProperties; properties.flags |= CL_MEM_FORCE_LINEAR_STORAGE_INTEL; properties.flags_intel = 0; - EXPECT_TRUE(MemObjHelper::isLinearStorageForced(properties)); + memoryProperties = MemoryPropertiesFlagsParser::createMemoryPropertiesFlags(properties); + EXPECT_TRUE(memoryProperties.forceLinearStorage); properties.flags = 0; properties.flags_intel |= CL_MEM_FORCE_LINEAR_STORAGE_INTEL; - EXPECT_TRUE(MemObjHelper::isLinearStorageForced(properties)); + memoryProperties = MemoryPropertiesFlagsParser::createMemoryPropertiesFlags(properties); + EXPECT_TRUE(memoryProperties.forceLinearStorage); properties.flags |= CL_MEM_FORCE_LINEAR_STORAGE_INTEL; properties.flags_intel |= CL_MEM_FORCE_LINEAR_STORAGE_INTEL; - EXPECT_TRUE(MemObjHelper::isLinearStorageForced(properties)); + memoryProperties = MemoryPropertiesFlagsParser::createMemoryPropertiesFlags(properties); + EXPECT_TRUE(memoryProperties.forceLinearStorage); properties.flags = 0; properties.flags_intel = 0; - EXPECT_FALSE(MemObjHelper::isLinearStorageForced(properties)); + memoryProperties = MemoryPropertiesFlagsParser::createMemoryPropertiesFlags(properties); + EXPECT_FALSE(memoryProperties.forceLinearStorage); } TEST(MemObjHelper, givenValidPropertiesWhenValidatingMemoryPropertiesThenTrueIsReturned) {