diff --git a/manifests/manifest.yml b/manifests/manifest.yml index 39cf95d980..9216562832 100644 --- a/manifests/manifest.yml +++ b/manifests/manifest.yml @@ -42,7 +42,7 @@ components: dest_dir: kernels_bin type: git branch: kernels_bin - revision: 2479-1841 + revision: 2479-1842 kmdaf: branch: kmdaf dest_dir: kmdaf diff --git a/opencl/test/unit_test/built_ins/built_in_tests.cpp b/opencl/test/unit_test/built_ins/built_in_tests.cpp index 7cbf384d34..01f8343390 100644 --- a/opencl/test/unit_test/built_ins/built_in_tests.cpp +++ b/opencl/test/unit_test/built_ins/built_in_tests.cpp @@ -1479,7 +1479,7 @@ TEST_F(VmeBuiltInTests, WhenGettingBuiltinAsStringThenCorrectStringIsReturned) { TEST_F(BuiltInTests, GivenEncodeTypeWhenGettingExtensionThenCorrectStringIsReturned) { EXPECT_EQ(0, strcmp("", BuiltinCode::getExtension(BuiltinCode::ECodeType::any))); EXPECT_EQ(0, strcmp(".bin", BuiltinCode::getExtension(BuiltinCode::ECodeType::binary))); - EXPECT_EQ(0, strcmp(".bc", BuiltinCode::getExtension(BuiltinCode::ECodeType::intermediate))); + EXPECT_EQ(0, strcmp(".spv", BuiltinCode::getExtension(BuiltinCode::ECodeType::intermediate))); EXPECT_EQ(0, strcmp(".cl", BuiltinCode::getExtension(BuiltinCode::ECodeType::source))); EXPECT_EQ(0, strcmp("", BuiltinCode::getExtension(BuiltinCode::ECodeType::count))); EXPECT_EQ(0, strcmp("", BuiltinCode::getExtension(BuiltinCode::ECodeType::invalid))); diff --git a/opencl/test/unit_test/compiler_interface/cl_compiler_interface_tests.cpp b/opencl/test/unit_test/compiler_interface/cl_compiler_interface_tests.cpp index f2add335b5..6b68a47d4d 100644 --- a/opencl/test/unit_test/compiler_interface/cl_compiler_interface_tests.cpp +++ b/opencl/test/unit_test/compiler_interface/cl_compiler_interface_tests.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021-2023 Intel Corporation + * Copyright (C) 2021-2024 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -79,7 +79,7 @@ TEST_F(ClCompilerInterfaceTest, WhenCompileIsInvokedThenFclReceivesListOfExtensi std::string receivedInternalOptions; MockCompilerDebugVars fclDebugVars; - retrieveBinaryKernelFilename(fclDebugVars.fileName, "CopyBuffer_simd16_", ".bc"); + retrieveBinaryKernelFilename(fclDebugVars.fileName, "CopyBuffer_simd16_", ".spv"); fclDebugVars.receivedInternalOptionsOutput = &receivedInternalOptions; gEnvironment->fclPushDebugVars(fclDebugVars); TranslationOutput translationOutput = {}; diff --git a/opencl/test/unit_test/fixtures/built_in_fixture.cpp b/opencl/test/unit_test/fixtures/built_in_fixture.cpp index b7e9a5e160..759ff85cfd 100644 --- a/opencl/test/unit_test/fixtures/built_in_fixture.cpp +++ b/opencl/test/unit_test/fixtures/built_in_fixture.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2023 Intel Corporation + * Copyright (C) 2018-2024 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -30,7 +30,7 @@ void BuiltInFixture::setUp(Device *pDevice) { } else { builtInsFileName = KernelBinaryHelper::BUILT_INS; } - retrieveBinaryKernelFilename(fclDebugVars.fileName, builtInsFileName + "_", ".bc"); + retrieveBinaryKernelFilename(fclDebugVars.fileName, builtInsFileName + "_", ".spv"); retrieveBinaryKernelFilename(igcDebugVars.fileName, builtInsFileName + "_", ".bin"); gEnvironment->fclPushDebugVars(fclDebugVars); diff --git a/opencl/test/unit_test/fixtures/run_kernel_fixture.h b/opencl/test/unit_test/fixtures/run_kernel_fixture.h index fb998bc84a..4ee782771e 100644 --- a/opencl/test/unit_test/fixtures/run_kernel_fixture.h +++ b/opencl/test/unit_test/fixtures/run_kernel_fixture.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2022 Intel Corporation + * Copyright (C) 2018-2024 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -22,7 +22,7 @@ inline void overwriteBuiltInBinaryName( MockCompilerDebugVars fclDebugVars; MockCompilerDebugVars igcDebugVars; - retrieveBinaryKernelFilename(fclDebugVars.fileName, filename + "_", ".bc"); + retrieveBinaryKernelFilename(fclDebugVars.fileName, filename + "_", ".spv"); fclDebugVars.appendOptionsToFileName = appendOptionsToFileName; retrieveBinaryKernelFilename(igcDebugVars.fileName, filename + "_", ".bin"); diff --git a/opencl/test/unit_test/offline_compiler/CMakeLists.txt b/opencl/test/unit_test/offline_compiler/CMakeLists.txt index d524f1867b..bca3ea896c 100644 --- a/opencl/test/unit_test/offline_compiler/CMakeLists.txt +++ b/opencl/test/unit_test/offline_compiler/CMakeLists.txt @@ -177,7 +177,7 @@ if(WIN32) TARGET run_ocloc_tests POST_BUILD COMMAND echo deleting offline compiler files and directories... - COMMAND ${CMAKE_COMMAND} -E remove ${TargetDir}/${CLOC_LIB_DEFAULT_DEVICE}/copybuffer_${CLOC_LIB_DEFAULT_DEVICE}.bc + COMMAND ${CMAKE_COMMAND} -E remove ${TargetDir}/${CLOC_LIB_DEFAULT_DEVICE}/copybuffer_${CLOC_LIB_DEFAULT_DEVICE}.spv COMMAND ${CMAKE_COMMAND} -E remove ${TargetDir}/${CLOC_LIB_DEFAULT_DEVICE}/copybuffer_${CLOC_LIB_DEFAULT_DEVICE}.gen COMMAND ${CMAKE_COMMAND} -E remove ${TargetDir}/${CLOC_LIB_DEFAULT_DEVICE}/copybuffer_${CLOC_LIB_DEFAULT_DEVICE}.bin COMMAND ${CMAKE_COMMAND} -E remove_directory ${TargetDir}/${CLOC_LIB_DEFAULT_DEVICE}/offline_compiler_test @@ -189,7 +189,7 @@ else() TARGET run_ocloc_tests POST_BUILD COMMAND echo deleting offline compiler files and directories... - COMMAND ${CMAKE_COMMAND} -E remove ${TargetDir}/${CLOC_LIB_DEFAULT_DEVICE}/*.bc + COMMAND ${CMAKE_COMMAND} -E remove ${TargetDir}/${CLOC_LIB_DEFAULT_DEVICE}/*.spv COMMAND ${CMAKE_COMMAND} -E remove ${TargetDir}/${CLOC_LIB_DEFAULT_DEVICE}/*.gen COMMAND ${CMAKE_COMMAND} -E remove ${TargetDir}/${CLOC_LIB_DEFAULT_DEVICE}/*.ll COMMAND ${CMAKE_COMMAND} -E remove ${TargetDir}/${CLOC_LIB_DEFAULT_DEVICE}/*.bin diff --git a/opencl/test/unit_test/offline_compiler/environment.h b/opencl/test/unit_test/offline_compiler/environment.h index 14a52b2530..90932012b3 100644 --- a/opencl/test/unit_test/offline_compiler/environment.h +++ b/opencl/test/unit_test/offline_compiler/environment.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2023 Intel Corporation + * Copyright (C) 2018-2024 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -22,7 +22,7 @@ class Environment : public ::testing::Environment { const std::string filename) { retrieveBinaryKernelFilename(igcDebugVars.fileName, filename + "_", ".bin"); - retrieveBinaryKernelFilename(fclDebugVars.fileName, filename + "_", ".bc"); + retrieveBinaryKernelFilename(fclDebugVars.fileName, filename + "_", ".spv"); NEO::setIgcDebugVars(igcDebugVars); NEO::setFclDebugVars(fclDebugVars); diff --git a/opencl/test/unit_test/offline_compiler/offline_compiler_tests.cpp b/opencl/test/unit_test/offline_compiler/offline_compiler_tests.cpp index 6eac79f35f..f63eb521b0 100644 --- a/opencl/test/unit_test/offline_compiler/offline_compiler_tests.cpp +++ b/opencl/test/unit_test/offline_compiler/offline_compiler_tests.cpp @@ -3181,6 +3181,7 @@ TEST(OfflineCompilerTest, givenUseLlvmBcFlagWhenBuildingIrBinaryThenProperTransl auto mockFclOclDeviceCtx = new NEO::MockFclOclDeviceCtx(); mockOfflineCompiler.mockFclFacade->fclDeviceCtx = CIF::RAII::Pack(mockFclOclDeviceCtx); + mockOfflineCompiler.inputFileLlvm = true; mockOfflineCompiler.useLlvmBc = true; const auto buildResult = mockOfflineCompiler.buildIrBinary(); EXPECT_EQ(CL_SUCCESS, buildResult); diff --git a/shared/generate_cpp_array/source/generate_cpp_array.cpp b/shared/generate_cpp_array/source/generate_cpp_array.cpp index 417d50c821..a1dcde7d26 100644 --- a/shared/generate_cpp_array/source/generate_cpp_array.cpp +++ b/shared/generate_cpp_array/source/generate_cpp_array.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2020-2023 Intel Corporation + * Copyright (C) 2020-2024 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -75,7 +75,7 @@ std::string parseToCharArray(std::unique_ptr &binary, size_t size, st out << std::endl; out << " \""; deviceIp != "" ? out << deviceIp << "_" << builtinName : out << builtinName; - isSpirV ? out << ".builtin_kernel.bc\"," : out << ".builtin_kernel.bin\","; + isSpirV ? out << ".builtin_kernel.spv\"," : out << ".builtin_kernel.bin\","; out << std::endl; out << " (const char *)" << builtinName; if (deviceIpPresent) { diff --git a/shared/offline_compiler/source/offline_compiler.cpp b/shared/offline_compiler/source/offline_compiler.cpp index 12f516c02b..aa2709b7b2 100644 --- a/shared/offline_compiler/source/offline_compiler.cpp +++ b/shared/offline_compiler/source/offline_compiler.cpp @@ -454,6 +454,11 @@ struct OfflineCompiler::buildInfo { int OfflineCompiler::buildIrBinary() { int retVal = OCLOC_SUCCESS; + pBuildInfo->intermediateRepresentation = preferredIntermediateRepresentation; + if (inputFileLlvm) { + pBuildInfo->intermediateRepresentation = useLlvmText ? IGC::CodeType::llvmLl : IGC::CodeType::llvmBc; + } + isSpirV = pBuildInfo->intermediateRepresentation == IGC::CodeType::spirV; if (allowCaching) { const std::string igcRevision = igcFacade->getIgcRevision(); @@ -470,8 +475,6 @@ int OfflineCompiler::buildIrBinary() { } UNRECOVERABLE_IF(!fclFacade->isInitialized()); - pBuildInfo->intermediateRepresentation = useLlvmText ? IGC::CodeType::llvmLl - : (useLlvmBc ? IGC::CodeType::llvmBc : preferredIntermediateRepresentation); // sourceCode.size() returns the number of characters without null terminated char CIF::RAII::UPtr_t fclSrc = nullptr; @@ -533,7 +536,6 @@ int OfflineCompiler::buildIrBinary() { } storeBinary(irBinary, irBinarySize, pBuildInfo->fclOutput->GetOutput()->GetMemory(), pBuildInfo->fclOutput->GetOutput()->GetSizeRaw()); - isSpirV = pBuildInfo->intermediateRepresentation == IGC::CodeType::spirV; updateBuildLog(pBuildInfo->fclOutput->GetBuildLog()->GetMemory(), pBuildInfo->fclOutput->GetBuildLog()->GetSizeRaw()); diff --git a/shared/offline_compiler/source/offline_compiler.h b/shared/offline_compiler/source/offline_compiler.h index 40ca29e590..8ebe1c2656 100644 --- a/shared/offline_compiler/source/offline_compiler.h +++ b/shared/offline_compiler/source/offline_compiler.h @@ -193,7 +193,7 @@ All supported acronyms: %s. bool inputFileSpirV = false; bool outputNoSuffix = false; bool forceStatelessToStatefulOptimization = false; - bool isSpirV = false; + bool isSpirV = true; bool showHelp = false; bool excludeIr = false; diff --git a/shared/source/built_ins/built_ins.h b/shared/source/built_ins/built_ins.h index 081a1d2b75..9f21b297c3 100644 --- a/shared/source/built_ins/built_ins.h +++ b/shared/source/built_ins/built_ins.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2023 Intel Corporation + * Copyright (C) 2018-2024 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -53,7 +53,7 @@ struct BuiltinCode { case BuiltinCode::ECodeType::binary: return ".bin"; case BuiltinCode::ECodeType::intermediate: - return ".bc"; + return ".spv"; case BuiltinCode::ECodeType::source: return ".cl"; } diff --git a/shared/test/common/common_main.cpp b/shared/test/common/common_main.cpp index 43a3cc20fd..d90c5ca1ca 100644 --- a/shared/test/common/common_main.cpp +++ b/shared/test/common/common_main.cpp @@ -402,7 +402,7 @@ int main(int argc, char **argv) { } else { builtInsFileName = KernelBinaryHelper::BUILT_INS; } - retrieveBinaryKernelFilename(fclDebugVars.fileName, builtInsFileName + "_", ".bc"); + retrieveBinaryKernelFilename(fclDebugVars.fileName, builtInsFileName + "_", ".spv"); retrieveBinaryKernelFilename(igcDebugVars.fileName, builtInsFileName + "_", ".bin"); gEnvironment->setMockFileNames(fclDebugVars.fileName, igcDebugVars.fileName); diff --git a/shared/test/common/helpers/kernel_binary_helper.cpp b/shared/test/common/helpers/kernel_binary_helper.cpp index 71ff6a061e..808df2ff26 100644 --- a/shared/test/common/helpers/kernel_binary_helper.cpp +++ b/shared/test/common/helpers/kernel_binary_helper.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2023 Intel Corporation + * Copyright (C) 2018-2024 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -19,7 +19,7 @@ KernelBinaryHelper::KernelBinaryHelper(const std::string &name, bool appendOptio MockCompilerDebugVars fclDebugVars; MockCompilerDebugVars igcDebugVars; - retrieveBinaryKernelFilename(fclDebugVars.fileName, name + "_", ".bc"); + retrieveBinaryKernelFilename(fclDebugVars.fileName, name + "_", ".spv"); retrieveBinaryKernelFilename(igcDebugVars.fileName, name + "_", ".bin"); appendBinaryNameSuffix(fclDebugVars.fileNameSuffix); diff --git a/shared/test/common/helpers/test_files.cpp b/shared/test/common/helpers/test_files.cpp index 1db45cb2ed..9c321d1a2e 100644 --- a/shared/test/common/helpers/test_files.cpp +++ b/shared/test/common/helpers/test_files.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2022 Intel Corporation + * Copyright (C) 2018-2024 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -32,10 +32,6 @@ void retrieveBinaryKernelFilename(std::string &outputFilename, const std::string } outputFilename.append(binaryNameSuffix); outputFilename.append(extension); - - if (!fileExists(outputFilename) && (extension == ".bc")) { - retrieveBinaryKernelFilename(outputFilename, kernelName, ".spv", options); - } } void retrieveBinaryKernelFilenameApiSpecific(std::string &outputFilename, const std::string &kernelName, const std::string &extension, const std::string &options) { @@ -48,12 +44,8 @@ void retrieveBinaryKernelFilenameApiSpecific(std::string &outputFilename, const outputFilename.append(binaryNameSuffix); outputFilename.append(extension); outputFilename.append(options); - - if (!fileExists(outputFilename) && (extension == ".bc")) { - retrieveBinaryKernelFilename(outputFilename, kernelName, ".spv", options); - } } void appendBinaryNameSuffix(std::string &outputFileNameSuffix) { outputFileNameSuffix.append(binaryNameSuffix); -} \ No newline at end of file +} diff --git a/shared/test/unit_test/built_ins/builtin_tests.cpp b/shared/test/unit_test/built_ins/builtin_tests.cpp index d654e1b4d9..a506cd61e5 100644 --- a/shared/test/unit_test/built_ins/builtin_tests.cpp +++ b/shared/test/unit_test/built_ins/builtin_tests.cpp @@ -115,7 +115,7 @@ HWTEST_F(BuiltInSharedTest, GivenRequestedTypeIntermediateWhenGettingResourceNam auto resourceNames = getBuiltinResourceNames(EBuiltInOps::copyBufferToBuffer, BuiltinCode::ECodeType::intermediate, *pDevice); - std::string expectedResourceNameGeneric = "copy_buffer_to_buffer.builtin_kernel.bc"; + std::string expectedResourceNameGeneric = "copy_buffer_to_buffer.builtin_kernel.spv"; std::string expectedResourceNameForRelease = deviceIpString + "_" + expectedResourceNameGeneric; EXPECT_EQ(2u, resourceNames.size()); diff --git a/shared/test/unit_test/compiler_interface/compiler_interface_tests.cpp b/shared/test/unit_test/compiler_interface/compiler_interface_tests.cpp index a6b00de226..5e9b1ffb71 100644 --- a/shared/test/unit_test/compiler_interface/compiler_interface_tests.cpp +++ b/shared/test/unit_test/compiler_interface/compiler_interface_tests.cpp @@ -224,7 +224,7 @@ TEST_F(CompilerInterfaceTest, GivenOptionsWhenCompilingToIsaThenSuccessIsReturne TEST_F(CompilerInterfaceTest, WhenCompilingToIrThenSuccessIsReturned) { MockCompilerDebugVars fclDebugVars; - retrieveBinaryKernelFilename(fclDebugVars.fileName, "CopyBuffer_simd32_", ".bc"); + retrieveBinaryKernelFilename(fclDebugVars.fileName, "CopyBuffer_simd32_", ".spv"); gEnvironment->fclPushDebugVars(fclDebugVars); TranslationOutput translationOutput = {}; auto err = pCompilerInterface->compile(*pDevice, inputArgs, translationOutput); @@ -305,7 +305,7 @@ TEST_F(CompilerInterfaceTest, GivenForceBuildFailureWhenLinkingIrThenLinkFailure TEST_F(CompilerInterfaceTest, WhenLinkIsCalledThenOclGenBinIsTheTranslationTarget) { // link only from .ll to gen ISA MockCompilerDebugVars igcDebugVars; - retrieveBinaryKernelFilename(igcDebugVars.fileName, "CopyBuffer_simd32_", ".bc"); + retrieveBinaryKernelFilename(igcDebugVars.fileName, "CopyBuffer_simd32_", ".spv"); gEnvironment->igcPushDebugVars(igcDebugVars); TranslationOutput translationOutput = {}; auto err = pCompilerInterface->link(*pDevice, inputArgs, translationOutput); @@ -372,7 +372,7 @@ TEST_F(CompilerInterfaceTest, GivenForceBuildFailureWhenCreatingLibraryThenLinkF TEST_F(CompilerInterfaceTest, WhenCreateLibraryIsCalledThenLlvmBcIsUsedAsIntermediateRepresentation) { // create library from .ll to IR MockCompilerDebugVars igcDebugVars; - retrieveBinaryKernelFilename(igcDebugVars.fileName, "CopyBuffer_simd32_", ".bc"); + retrieveBinaryKernelFilename(igcDebugVars.fileName, "CopyBuffer_simd32_", ".spv"); gEnvironment->igcPushDebugVars(igcDebugVars); TranslationOutput translationOutput = {}; auto err = pCompilerInterface->createLibrary(*pDevice, inputArgs, translationOutput); @@ -418,7 +418,7 @@ TEST_F(CompilerInterfaceTest, GivenForceBuildFailureWhenFclBuildingThenBuildFail fclDebugVars.forceCreateFailure = false; fclDebugVars.forceBuildFailure = true; fclDebugVars.forceRegisterFail = false; - fclDebugVars.fileName = "copybuffer_skl.bc"; + fclDebugVars.fileName = "copybuffer_skl.spv"; gEnvironment->fclPushDebugVars(fclDebugVars); @@ -1039,7 +1039,7 @@ TEST_F(CompilerInterfaceTest, whenGetIgcDeviceCtxReturnsNullptrThenGetSipKernelB TEST_F(CompilerInterfaceTest, whenEverythingIsOkThenGetSipKernelReturnsIgcsOutputAsSipBinary) { MockCompilerDebugVars igcDebugVars; - retrieveBinaryKernelFilename(igcDebugVars.fileName, "CopyBuffer_simd32_", ".bc"); + retrieveBinaryKernelFilename(igcDebugVars.fileName, "CopyBuffer_simd32_", ".spv"); gEnvironment->igcPushDebugVars(igcDebugVars); std::vector sipBinary; std::vector stateAreaHeader; diff --git a/shared/test/unit_test/ult_specific_config.cpp b/shared/test/unit_test/ult_specific_config.cpp index d1588d33f4..e3dd593720 100644 --- a/shared/test/unit_test/ult_specific_config.cpp +++ b/shared/test/unit_test/ult_specific_config.cpp @@ -46,17 +46,17 @@ using namespace NEO; void cleanTestHelpers() {} void applyWorkarounds() { - const std::array builtinIntermediateNames{"copy_buffer_to_buffer.builtin_kernel.bc", - "copy_buffer_rect.builtin_kernel.bc", - "fill_buffer.builtin_kernel.bc", - "copy_buffer_to_image3d.builtin_kernel.bc", - "copy_image3d_to_buffer.builtin_kernel.bc", - "copy_image_to_image1d.builtin_kernel.bc", - "copy_image_to_image2d.builtin_kernel.bc", - "copy_image_to_image3d.builtin_kernel.bc", - "fill_image1d.builtin_kernel.bc", - "fill_image2d.builtin_kernel.bc", - "fill_image3d.builtin_kernel.bc"}; + const std::array builtinIntermediateNames{"copy_buffer_to_buffer.builtin_kernel.spv", + "copy_buffer_rect.builtin_kernel.spv", + "fill_buffer.builtin_kernel.spv", + "copy_buffer_to_image3d.builtin_kernel.spv", + "copy_image3d_to_buffer.builtin_kernel.spv", + "copy_image_to_image1d.builtin_kernel.spv", + "copy_image_to_image2d.builtin_kernel.spv", + "copy_image_to_image3d.builtin_kernel.spv", + "fill_image1d.builtin_kernel.spv", + "fill_image2d.builtin_kernel.spv", + "fill_image3d.builtin_kernel.spv"}; auto &storageRegistry = EmbeddedStorageRegistry::getInstance(); for (auto builtinIntermediateName : builtinIntermediateNames) { std::string resource = "__mock_spirv_resource";