From f031f4d7ab4021c2b60391b3a957e75fac14c2e3 Mon Sep 17 00:00:00 2001 From: Dongwon Kim Date: Sat, 21 Aug 2021 11:27:59 -0700 Subject: [PATCH] Revert "Change builtin kernels compilation process" This reverts commit ab52c702337358af57140e760d618549372e1cdd. Upstream-Status: Pending Signed-off-by: Dongwon Kim --- .../offline_compiler_tests.cpp | 23 ---------------- .../source/offline_compiler.cpp | 2 +- .../source/built_ins/kernels/CMakeLists.txt | 26 +++++++------------ 3 files changed, 10 insertions(+), 41 deletions(-) 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 1427cd5cc..8b913d740 100644 --- a/opencl/test/unit_test/offline_compiler/offline_compiler_tests.cpp +++ b/opencl/test/unit_test/offline_compiler/offline_compiler_tests.cpp @@ -1651,27 +1651,4 @@ TEST(OclocCompile, givenPackedDeviceBinaryFormatWhenGeneratingElfBinaryThenItIsR ASSERT_EQ(true, ocloc.generateElfBinary()); EXPECT_EQ(0, memcmp(zebin.storage.data(), ocloc.elfBinary.data(), zebin.storage.size())); } - -TEST(OclocCompile, givenSpirvInputThenDontGenerateSpirvFile) { - MockOfflineCompiler ocloc; - - std::vector argv = { - "ocloc", - "-q", - "-file", - "test_files/binary_with_zeroes", - "-out_dir", - "offline_compiler_test", - "-device", - gEnvironment->devicePrefix.c_str(), - "-spirv_input"}; - - int retVal = ocloc.initialize(argv.size(), argv); - ASSERT_EQ(0, retVal); - retVal = ocloc.build(); - EXPECT_EQ(0, retVal); - EXPECT_TRUE(compilerOutputExists("offline_compiler_test/binary_with_zeroes", "gen")); - EXPECT_TRUE(compilerOutputExists("offline_compiler_test/binary_with_zeroes", "bin")); - EXPECT_FALSE(compilerOutputExists("offline_compiler_test/binary_with_zeroes", "spv")); -} } // namespace NEO diff --git a/shared/offline_compiler/source/offline_compiler.cpp b/shared/offline_compiler/source/offline_compiler.cpp index 0ffc3bbca..aa02e0550 100644 --- a/shared/offline_compiler/source/offline_compiler.cpp +++ b/shared/offline_compiler/source/offline_compiler.cpp @@ -1050,7 +1050,7 @@ void OfflineCompiler::writeOutAllFiles() { } } - if (irBinary && !inputFileSpirV) { + if (irBinary) { std::string irOutputFileName = generateFilePathForIr(fileBase) + generateOptsSuffix(); argHelper->saveOutput(irOutputFileName, irBinary, irBinarySize); diff --git a/shared/source/built_ins/kernels/CMakeLists.txt b/shared/source/built_ins/kernels/CMakeLists.txt index 59723fdb2..12dc4aa7a 100644 --- a/shared/source/built_ins/kernels/CMakeLists.txt +++ b/shared/source/built_ins/kernels/CMakeLists.txt @@ -58,8 +58,11 @@ function(compile_builtin gen_type platform_type builtin bits builtin_options mod # get name of the file w/o extension get_filename_component(BASENAME ${builtin} NAME_WE) - set(OUTPUT_FILE_SPV - ${OUTPUTDIR}/${mode}_${BASENAME}_${family_name_with_type}.spv + set(OUTPUTPATH_BASE "${OUTPUTDIR}/${mode}_${BASENAME}_${family_name_with_type}") + set(OUTPUT_FILES + ${OUTPUTPATH_BASE}.spv + ${OUTPUTPATH_BASE}.bin + ${OUTPUTPATH_BASE}.gen ) if(NOT DEFINED cloc_cmd_prefix) @@ -76,8 +79,8 @@ function(compile_builtin gen_type platform_type builtin bits builtin_options mod list(APPEND __cloc__options__ "-cl-kernel-arg-info") set(INTERNAL_OPTIONS "${${mode}_OPTIONS}") add_custom_command( - OUTPUT ${OUTPUT_FILE_SPV} - COMMAND ${cloc_cmd_prefix} -q -file ${FILENAME} -spv_only -device ${DEFAULT_SUPPORTED_${gen_type}_${platform_type}_PLATFORM} ${builtin_options} -${bits} -output ${mode}_${BASENAME} -out_dir ${OUTPUTDIR} ${INTERNAL_OPTIONS} -options "$" + OUTPUT ${OUTPUT_FILES} + COMMAND ${cloc_cmd_prefix} -q -file ${FILENAME} -device ${DEFAULT_SUPPORTED_${gen_type}_${platform_type}_PLATFORM} ${builtin_options} -${bits} -output ${mode}_${BASENAME} -out_dir ${OUTPUTDIR} ${INTERNAL_OPTIONS} -options "$" WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} DEPENDS ${builtin} ocloc copy_compiler_files ) @@ -85,23 +88,12 @@ function(compile_builtin gen_type platform_type builtin bits builtin_options mod set(OUTPUT_FILE_CPP ${OUTPUTDIR}/${mode}_${BASENAME}_${family_name_with_type}_${REVISION_ID}.cpp ) - set(BINARY_OUTPUT "${OUTPUTDIR}/${mode}_${BASENAME}_${REVISION_ID}_${family_name_with_type}") - set(OUTPUT_FILES_BINARIES - ${BINARY_OUTPUT}.gen - ${BINARY_OUTPUT}.bin - ) list(APPEND BUILTINS_COMMANDS "${OUTPUT_FILE_CPP}") - add_custom_command( - OUTPUT ${OUTPUT_FILES_BINARIES} - COMMAND ${cloc_cmd_prefix} -q -file ${OUTPUT_FILE_SPV} -spirv_input -device ${DEFAULT_SUPPORTED_${gen_type}_${platform_type}_PLATFORM} ${builtin_options} -${bits} -output ${mode}_${BASENAME}_${REVISION_ID} -out_dir ${OUTPUTDIR} -revision_id ${REVISION_ID} ${INTERNAL_OPTIONS} -options "$" - WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} - DEPENDS ${OUTPUT_FILE_SPV} ocloc copy_compiler_files - ) add_custom_command( OUTPUT ${OUTPUT_FILE_CPP} - COMMAND $ --file ${BINARY_OUTPUT}.gen --output ${OUTPUT_FILE_CPP} --array ${mode}_${BASENAME} --platform ${family_name_with_type} --revision_id ${REVISION_ID} + COMMAND $ --file ${OUTPUTPATH_BASE}.gen --output ${OUTPUT_FILE_CPP} --array ${mode}_${BASENAME} --platform ${family_name_with_type} --revision_id ${REVISION_ID} WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} - DEPENDS ${OUTPUT_FILES_BINARIES} $ + DEPENDS ${OUTPUTPATH_BASE}.gen $ ) endforeach() set(BUILTINS_COMMANDS ${BUILTINS_COMMANDS} PARENT_SCOPE) -- 2.20.1