summaryrefslogtreecommitdiffstats
path: root/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/0001-Revert-Change-builtin-kernels-compilation-process.patch
blob: ec3d3183c090af0d6b70fe1cdc06c70f0c7faaec (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
From f031f4d7ab4021c2b60391b3a957e75fac14c2e3 Mon Sep 17 00:00:00 2001
From: Dongwon Kim <dongwon.kim@intel.com>
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 <dongwon.kim@intel.com>
---
 .../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<std::string> 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 "$<JOIN:${__cloc__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 "$<JOIN:${__cloc__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 "$<JOIN:${__cloc__options__}, >"
-                       WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
-                       DEPENDS ${OUTPUT_FILE_SPV} ocloc copy_compiler_files
-    )
     add_custom_command(
                        OUTPUT ${OUTPUT_FILE_CPP}
-                       COMMAND $<TARGET_FILE:cpp_generate_tool> --file ${BINARY_OUTPUT}.gen --output ${OUTPUT_FILE_CPP} --array ${mode}_${BASENAME} --platform ${family_name_with_type} --revision_id ${REVISION_ID}
+                       COMMAND $<TARGET_FILE:cpp_generate_tool> --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} $<TARGET_FILE:cpp_generate_tool>
+                       DEPENDS ${OUTPUTPATH_BASE}.gen $<TARGET_FILE:cpp_generate_tool>
     )
   endforeach()
   set(BUILTINS_COMMANDS ${BUILTINS_COMMANDS} PARENT_SCOPE)
-- 
2.20.1