Skip to content

Commit ae30041

Browse files
Make the project compatible with FetchContent and find_package
to simplify integration with thirdparty projects. - Use the Gc prefix in the target names. - Added a separate shared library for oneDNN integration - GcDnnl. - The GcDnnl library and the OneDNNGraphDialect are not built if GC_ENABLE_DNNL=OFF. - Added new build options: GC_ENABLE_TEST(renamed), GC_ENABLE_TEST_DNNL, GC_ENABLE_TEST_MLIR, GC_ENABLE_OPT. - Renamed the GC_USE_GPU option to GC_ENABLE_GPU to be consistent with other options. - Export the OpenMP flags to resolve the "JIT session error: Symbols not found: __kmpc_...". - Minor compile.sh script enhancements.
1 parent e2e7149 commit ae30041

33 files changed

+290
-162
lines changed

CMakeLists.txt

+79-24
Original file line numberDiff line numberDiff line change
@@ -24,15 +24,19 @@ set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -O0")
2424

2525
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
2626

27-
list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
28-
29-
option(GC_LEGACY_ENABLE ON)
30-
option(GC_TEST_ENABLE "Build the tests" ON)
31-
option(GC_USE_GPU "Enable GPU backend" OFF)
27+
list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake")
28+
29+
option(GC_ENABLE_LEGACY ON)
30+
option(GC_ENABLE_DNNL "Enable the oneDNN library integration" ON)
31+
option(GC_ENABLE_TEST "Build the tests" ON)
32+
option(GC_ENABLE_TEST_DNNL "Build the dnnl tests" ${GC_ENABLE_DNNL})
33+
option(GC_ENABLE_TEST_MLIR "Build the mlir tests" ON)
34+
option(GC_ENABLE_OPT "Build gc-opt" ON)
35+
option(GC_ENABLE_GPU "Enable GPU backend" OFF)
3236
option(GC_ENABLE_BINDINGS_PYTHON "Enable Graph Complier Python Binding" ON)
3337
option(GC_DEV_LINK_LLVM_DYLIB "Link dynamic libraries of LLVM and MLIR. For developers only. Do not use it in packing the library." OFF)
3438

35-
if(GC_LEGACY_ENABLE)
39+
if(GC_ENABLE_LEGACY)
3640
add_subdirectory(legacy/core)
3741
endif()
3842

@@ -41,9 +45,9 @@ find_package(MLIR REQUIRED CONFIG)
4145
message(STATUS "Using MLIRConfig.cmake in: ${MLIR_DIR}")
4246
message(STATUS "Using LLVMConfig.cmake in: ${LLVM_DIR}")
4347

44-
set(LLVM_RUNTIME_OUTPUT_INTDIR ${CMAKE_BINARY_DIR}/bin)
45-
set(LLVM_LIBRARY_OUTPUT_INTDIR ${CMAKE_BINARY_DIR}/lib)
46-
set(MLIR_BINARY_DIR ${CMAKE_BINARY_DIR})
48+
set(LLVM_RUNTIME_OUTPUT_INTDIR ${PROJECT_BINARY_DIR}/bin)
49+
set(LLVM_LIBRARY_OUTPUT_INTDIR ${PROJECT_BINARY_DIR}/lib)
50+
set(MLIR_BINARY_DIR ${PROJECT_BINARY_DIR})
4751

4852
list(APPEND CMAKE_MODULE_PATH "${MLIR_CMAKE_DIR}")
4953
list(APPEND CMAKE_MODULE_PATH "${LLVM_CMAKE_DIR}")
@@ -53,13 +57,22 @@ include(AddLLVM)
5357
include(AddMLIR)
5458
include(HandleLLVMOptions)
5559

56-
if(GC_USE_GPU)
60+
if(GC_ENABLE_DNNL)
61+
add_definitions(-DGC_HAS_ONEDNN_DIALECT)
62+
set(GC_ONEDNN_DIALECT_LIB_NAME MLIROneDNNGraph)
63+
endif ()
64+
65+
if(GC_ENABLE_GPU)
5766
include(imex)
5867
if(GC_DEV_LINK_LLVM_DYLIB)
5968
message(WARN "GPU backend may not be compatible with dynamic linking to LLVM")
6069
endif()
6170
endif()
6271

72+
if (GC_ENABLE_OPT)
73+
set(GC_OPT_EXE_NAME gc-opt)
74+
endif ()
75+
6376
if(GC_ENABLE_BINDINGS_PYTHON AND NOT MLIR_ENABLE_BINDINGS_PYTHON)
6477
message(STATUS "Failed to enable Python API due to the 'MLIR_ENABLE_BINDINGS_PYTHON' for LLVM is not ON.")
6578
set(GC_ENABLE_BINDINGS_PYTHON OFF CACHE BOOL "" FORCE)
@@ -77,11 +90,6 @@ include_directories(
7790
${PROJECT_SOURCE_DIR}/include
7891
)
7992

80-
# The paths are added in the subfolders using the gc_add_path() function.
81-
# These lists are also used by tests.
82-
set(GC_LIB_SOURCES CACHE INTERNAL "The graph_compiler library source paths")
83-
set(GC_LIB_INCLUDES CACHE INTERNAL "The graph_compiler library include paths")
84-
8593
add_definitions(${LLVM_DEFINITIONS})
8694

8795
set(GC_MLIR_CXX_FLAGS "")
@@ -102,15 +110,62 @@ if(GC_ENABLE_BINDINGS_PYTHON)
102110
message(STATUS "Enabling Python API")
103111
add_subdirectory(python)
104112
endif()
113+
add_subdirectory(test)
105114

106-
set(GC_LIB_LINKED_LIBS
107-
GCJitWrapper
108-
GCCpuRuntime
115+
# Export the targets
116+
add_library(GcInterface INTERFACE)
117+
target_include_directories(GcInterface INTERFACE
118+
$<BUILD_INTERFACE:${PROJECT_BINARY_DIR}/include>
119+
$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include>
120+
$<INSTALL_INTERFACE:include>
121+
)
122+
install(DIRECTORY ${PROJECT_SOURCE_DIR}/include/ TYPE INCLUDE)
123+
install(DIRECTORY ${PROJECT_BINARY_DIR}/include/ TYPE INCLUDE
124+
PATTERN "CMake*" EXCLUDE PATTERN "*.cmake" EXCLUDE)
125+
install(TARGETS
126+
GcCpuRuntime
127+
GcGpuPasses
128+
GcInterface
129+
GcJitWrapper
130+
GcPasses
131+
GcUtilsIR
132+
MLIRCPURuntimeDialect
133+
MLIRCPURuntimeTransforms
134+
MLIRLinalgx
135+
MLIRMicrokernel
136+
${GC_OPT_EXE_NAME}
137+
${GC_ONEDNN_DIALECT_LIB_NAME}
138+
139+
EXPORT ${PROJECT_NAME}Targets
140+
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
141+
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
142+
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
143+
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
144+
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
145+
)
146+
export(EXPORT ${PROJECT_NAME}Targets
147+
FILE "${PROJECT_BINARY_DIR}/${PROJECT_NAME}Targets.cmake"
148+
)
149+
install(EXPORT ${PROJECT_NAME}Targets
150+
FILE ${PROJECT_NAME}Targets.cmake
151+
DESTINATION lib/cmake/${PROJECT_NAME}
109152
)
110-
add_mlir_library(graph_compiler SHARED ${GC_LIB_SOURCES})
111-
target_include_directories(graph_compiler PUBLIC ${GC_LIB_INCLUDES})
112-
target_compile_options(graph_compiler PRIVATE -fvisibility=hidden -fexceptions)
113-
target_link_options(graph_compiler PRIVATE -Wl,--gc-sections)
114-
target_link_libraries(graph_compiler PRIVATE ${GC_LIB_LINKED_LIBS})
115153

116-
add_subdirectory(test)
154+
# Generate the config files
155+
include(CMakePackageConfigHelpers)
156+
configure_package_config_file(
157+
${PROJECT_SOURCE_DIR}/cmake/Config.cmake.in
158+
"${PROJECT_BINARY_DIR}/${PROJECT_NAME}Config.cmake"
159+
INSTALL_DESTINATION "lib/cmake/${PROJECT_NAME}"
160+
NO_SET_AND_CHECK_MACRO
161+
NO_CHECK_REQUIRED_COMPONENTS_MACRO
162+
)
163+
write_basic_package_version_file(
164+
"${PROJECT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake"
165+
COMPATIBILITY AnyNewerVersion
166+
)
167+
install(FILES
168+
${PROJECT_BINARY_DIR}/${PROJECT_NAME}Config.cmake
169+
${PROJECT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake
170+
DESTINATION "lib/cmake/${PROJECT_NAME}"
171+
)

README.md

+9-9
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ cmake --build build --target install
3333

3434
Notes
3535
* It is recommended to add optional options `-DLLVM_BUILD_LLVM_DYLIB=ON -DLLVM_LINK_LLVM_DYLIB=ON` to the command `cmake -G Ninja llvm ...` above **if you are building for CPU only**. These will enable the build of LLVM/MLIR dynamic libraries and let MLIR/LLVM tools link to them, to reduce the installed binary size of LLVM/MLIR. These options also enable the `GC_DEV_LINK_LLVM_DYLIB` option of graph-compiler repo (see below).
36-
* The option `-DLLVM_INSTALL_GTEST=ON` is optional, if the tests of graph-compiler are disabled (see `GC_TEST_ENABLE` below).
36+
* The option `-DLLVM_INSTALL_GTEST=ON` is optional, if the tests of graph-compiler are disabled (see `GC_ENABLE_TEST` below).
3737
* If you would like to enable GPU components of Graph Compiler, please make sure to statically link Graph Compiler and LLVM(MLIR). It is a known issue that LLVM shared library cannot be linked together with IGC (Intel's low level GPU compiler). Make sure `LLVM_BUILD_LLVM_DYLIB` and `LLVM_LINK_LLVM_DYLIB` are `OFF` (they are off by default). Also make sure Graph Compiler's cmake option `GC_DEV_LINK_LLVM_DYLIB` is `OFF` when configuring Graph Compiler (see below).
3838

3939
We have now installed LLVM at `llvm-project/llvm-install`.
@@ -58,15 +58,15 @@ cmake --build . --target gc-check
5858
Notes:
5959
* `/PATH/TO/llvm-project/llvm-install` should be the install path of LLVM. If you installed LLVM elsewhere by `-DCMAKE_INSTALL_PREFIX` option when building LLVM, you need to change the path in `-DMLIR_DIR` accordingly.
6060
* The cmake option `-DLLVM_EXTERNAL_LIT` is for the tests of this project. It requires the `lit` tool to be installed in the system. You can install it via `pip install lit`. If you don't need to run the tests of this repo, you can omit this option in the command line.
61-
* If GPU components are on (`-DGC_USE_GPU=ON`), make sure the Level-zero runtime is installed in your system. Either install Level-zero runtime via system package managers (e.g. `apt`), or follow the instructions of [IMEX](https://github.com/intel/mlir-extensions).
61+
* If GPU components are on (`-DGC_ENABLE_GPU=ON`), make sure the Level-zero runtime is installed in your system. Either install Level-zero runtime via system package managers (e.g. `apt`), or follow the instructions of [IMEX](https://github.com/intel/mlir-extensions).
6262

6363
Graph Compiler supports the following build-time options.
6464

65-
| CMake Option | Supported values (defaults in bold) | Description |
66-
|:--------------------------------|:---------------------------------------|:---------------------------------------------------------------------------------------|
67-
| GC_LEGACY_ENABLE | **ON**, OFF | Controls building the legacy graph-compiler component |
68-
| GC_TEST_ENABLE | **ON**, OFF | Controls building the tests |
69-
| GC_DEV_LINK_LLVM_DYLIB | ON, **OFF** | Controls dynamic link LLVM/MLIR libraries, mainly for developer |
70-
| GC_ENABLE_BINDINGS_PYTHON | **ON**, OFF | Controls building the Python API |
71-
| GC_USE_GPU | ON, **OFF** | Whether to enable the GPU components |
65+
| CMake Option | Supported values (defaults in bold) | Description |
66+
|:---------------------------|:---------------------------------------|:----------------------------------------------------------------|
67+
| GC_ENABLE_LEGACY | **ON**, OFF | Controls building the legacy graph-compiler component |
68+
| GC_ENABLE_TEST | **ON**, OFF | Controls building the tests |
69+
| GC_DEV_LINK_LLVM_DYLIB | ON, **OFF** | Controls dynamic link LLVM/MLIR libraries, mainly for developer |
70+
| GC_ENABLE_BINDINGS_PYTHON | **ON**, OFF | Controls building the Python API |
71+
| GC_ENABLE_GPU | ON, **OFF** | Whether to enable the GPU components |
7272

cmake/Config.cmake.in

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
@PACKAGE_INIT@
2+
3+
include ( "${CMAKE_CURRENT_LIST_DIR}/@[email protected]" )
4+
5+
find_package(MLIR REQUIRED CONFIG)

cmake/functions.cmake

+10-28
Original file line numberDiff line numberDiff line change
@@ -18,20 +18,25 @@ function(gc_fetch_content
1818
# Optional arguments:
1919
# SKIP_ADD: Populate but do not add the content to the project.
2020
# SKIP_FIND: Do not use find_package().
21-
# CMAKE_ARGS: Passed to FetchContent_Declare.
21+
# SET: key=value variables to be set before the content population.
2222
)
2323
string(TOUPPER ${name} uname)
24-
cmake_parse_arguments(GC_${uname} "SKIP_ADD;SKIP_FIND" "" "CMAKE_ARGS" ${ARGN})
24+
cmake_parse_arguments(GC_${uname} "SKIP_ADD;SKIP_FIND" "" "SET" ${ARGN})
2525

26-
if (DEFINED GC_${uname}_CMAKE_ARGS)
27-
message(STATUS "${name}_CMAKE_ARGS: ${GC_${uname}_CMAKE_ARGS}")
26+
if (DEFINED GC_${uname}_SET)
27+
foreach (var ${GC_${uname}_SET})
28+
string(REGEX REPLACE "([^=]+)=(.*)" "\\1;\\2" var ${var})
29+
list(GET var 0 key)
30+
list(GET var 1 value)
31+
message(STATUS "Setting ${key}=${value}")
32+
set(${key} ${value})
33+
endforeach ()
2834
endif ()
2935

3036
if (DEFINED GC_${uname}_SRC_DIR)
3137
FetchContent_Declare(
3238
${name}
3339
SOURCE_DIR ${GC_${uname}_SRC_DIR}
34-
CMAKE_ARGS ${GC_${uname}_CMAKE_ARGS}
3540
)
3641
else ()
3742
if (DEFINED GC_${uname}_VERSION)
@@ -53,7 +58,6 @@ function(gc_fetch_content
5358
GIT_REPOSITORY ${git_repository}
5459
GIT_TAG ${git_tag_or_version}
5560
GIT_PROGRESS TRUE
56-
CMAKE_ARGS ${GC_${uname}_CMAKE_ARGS}
5761
FIND_PACKAGE_ARGS ${FIND_PACKAGE_ARGS}
5862
)
5963
endif ()
@@ -75,28 +79,6 @@ function(gc_fetch_content
7579
endif ()
7680
endfunction()
7781

78-
# Add one or multiple paths to the specified list.
79-
# The paths could be specified as a list of files or a GLOB pattern:
80-
# gc_add_path(SOURCES GLOB "src/*.cpp")
81-
# gc_add_path(INCLUDES include1 include2 include3)
82-
function(gc_add_path list_name paths)
83-
if (paths STREQUAL "GLOB")
84-
file(GLOB paths ${ARGN})
85-
list(APPEND ${list_name} ${paths})
86-
else ()
87-
get_filename_component(path ${paths} ABSOLUTE)
88-
list(APPEND ${list_name} ${path})
89-
foreach (path ${ARGN})
90-
get_filename_component(path ${path} ABSOLUTE)
91-
list(APPEND ${list_name} ${path})
92-
endforeach ()
93-
endif ()
94-
set(${list_name} ${${list_name}}
95-
CACHE INTERNAL "${list_name} paths"
96-
)
97-
endfunction()
98-
99-
10082
macro(gc_set_mlir_link_components VAR)
10183
if(GC_DEV_LINK_LLVM_DYLIB)
10284
set(${VAR}

cmake/imex.cmake

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ if (NOT DEFINED IMEX_INCLUDES)
88
# TODO: Change to main https://github.com/oneapi-src/oneDNN.git when all the
99
# required functionality is merged.
1010
gc_fetch_content(imex 496b240093b5e132b60c5ee69878300fe69be300 https://github.com/Menooker/mlir-extensions
11-
CMAKE_ARGS "-DMLIR_DIR=${MLIR_DIR};-DIMEX_CHECK_LLVM_VERSION=ON;-DIMEX_ENABLE_L0_RUNTIME=1"
11+
SET IMEX_CHECK_LLVM_VERSION=ON IMEX_ENABLE_L0_RUNTIME=1
1212
)
1313

1414
set(IMEX_INCLUDES

cmake/onednn.cmake

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ if (NOT DEFINED DNNL_INCLUDES)
88
# required functionality is merged.
99
gc_fetch_content(dnnl dev https://github.com/kurapov-peter/oneDNN.git
1010
SKIP_ADD
11-
CMAKE_ARGS -DDNNL_IS_MAIN_PROJECT=FALSE -DDNNL_BUILD_TESTS=FALSE -DDNNL_BUILD_EXAMPLES=FALSE
1211
)
1312

1413
set(DNNL_INCLUDES
@@ -27,6 +26,7 @@ if (NOT DEFINED DNNL_INCLUDES)
2726
-Wno-dev
2827
-S ${dnnl_SOURCE_DIR}
2928
-B ${dnnl_BINARY_DIR}
30-
${GC_DNNL_CMAKE_ARGS}
29+
-DDNNL_IS_MAIN_PROJECT=FALSE -DDNNL_BUILD_TESTS=FALSE -DDNNL_BUILD_EXAMPLES=FALSE
30+
COMMAND_ERROR_IS_FATAL ANY
3131
)
3232
endif ()

include/gc-c/Dialects.h

+2
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,9 @@
2626
extern "C" {
2727
#endif
2828

29+
#ifdef GC_HAS_ONEDNN_DIALECT
2930
MLIR_DECLARE_CAPI_DIALECT_REGISTRATION(OneDNNGraph, onednn_graph);
31+
#endif
3032
MLIR_DECLARE_CAPI_DIALECT_REGISTRATION(CPURuntime, cpuruntime);
3133

3234
#ifdef __cplusplus
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
if (NOT GC_ENABLE_TEST_DNNL)
2+
message(STATUS "OneDNNGraphDialect is not enabled.")
3+
return()
4+
endif ()
5+
16
add_mlir_dialect(OneDNNGraphOps onednn_graph)
27
add_mlir_doc(OneDNNGraphOps OneDNNGraphOps gc/Dialect/OneDNNGraph/ -gen-op-doc)
38
add_mlir_doc(OneDNNGraphDialect OneDNNGraphDialect gc/Dialect/OneDNNGraph/ -gen-dialect-doc)

include/gc/Transforms/CMakeLists.txt

+5-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
1+
if(GC_ENABLE_DNNL)
2+
set(TABLEGEN_MACROS -DGC_HAS_ONEDNN_DIALECT)
3+
endif()
4+
15
set(LLVM_TARGET_DEFINITIONS Passes.td)
2-
mlir_tablegen(Passes.h.inc -gen-pass-decls -name GraphCompiler)
6+
mlir_tablegen(Passes.h.inc -gen-pass-decls -name GraphCompiler ${TABLEGEN_MACROS})
37
mlir_tablegen(Passes.capi.h.inc -gen-pass-capi-header --prefix GraphCompiler)
48
mlir_tablegen(Passes.capi.cpp.inc -gen-pass-capi-impl --prefix GraphCompiler)
59
add_public_tablegen_target(GraphCompilerPassIncGen)

include/gc/Transforms/Passes.td

+2-1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ def TileLinalgNamed : Pass<"tile-named-linalg", "func::FuncOp"> {
1717
["linalg::LinalgDialect", "scf::SCFDialect", "tensor::TensorDialect"];
1818
}
1919

20+
#ifdef GC_HAS_ONEDNN_DIALECT
2021
def ConvertOneDNNGraphToLinalg : Pass<"convert-onednn-graph-to-linalg"> {
2122
let summary = "Lower the operations from the oneDNN Graph dialect into Linalg";
2223
let description = [{
@@ -31,7 +32,7 @@ def ConvertOneDNNGraphToLinalg : Pass<"convert-onednn-graph-to-linalg"> {
3132
"linalgx::LinalgxDialect"
3233
];
3334
}
34-
35+
#endif
3536

3637
def LinalgToXeGPU : Pass<"linalg-to-xegpu", "func::FuncOp"> {
3738
let summary = "Convert linalg dialect to XeGPU dialect.";

lib/gc/CAPI/CMakeLists.txt

+3-3
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@ add_mlir_public_c_api_library(GcCAPI
22
Dialects.cpp
33
Passes.cpp
44
LINK_LIBS PUBLIC
5-
MLIROneDNNGraph
5+
${GC_ONEDNN_DIALECT_LIB_NAME}
66
MLIRCPURuntimeDialect
7-
GCPasses
8-
GCGPUPasses
7+
GcPasses
8+
GcGpuPasses
99
MLIRCPURuntimeTransforms
1010
)

lib/gc/CAPI/Dialects.cpp

+3-1
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,13 @@
88

99
#include "gc-c/Dialects.h"
1010
#include "gc/Dialect/CPURuntime/IR/CPURuntimeDialect.h"
11-
#include "gc/Dialect/OneDNNGraph/OneDNNGraphDialect.h"
1211
#include "mlir/CAPI/Registration.h"
1312

13+
#ifdef GC_HAS_ONEDNN_DIALECT
14+
#include "gc/Dialect/OneDNNGraph/OneDNNGraphDialect.h"
1415
MLIR_DEFINE_CAPI_DIALECT_REGISTRATION(OneDNNGraph, onednn_graph,
1516
mlir::onednn_graph::OneDNNGraphDialect)
17+
#endif
1618

1719
MLIR_DEFINE_CAPI_DIALECT_REGISTRATION(CPURuntime, cpuruntime,
1820
mlir::cpuruntime::CPURuntimeDialect)
+7-3
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,19 @@
1+
if (NOT GC_ENABLE_TEST_DNNL)
2+
return()
3+
endif ()
4+
15
gc_set_mlir_link_components(MLIR_LINK_COMPONENTS MLIRIR)
2-
add_mlir_dialect_library(MLIROneDNNGraph
6+
add_mlir_dialect_library(${GC_ONEDNN_DIALECT_LIB_NAME}
37
OneDNNGraphDialect.cpp
48
OneDNNGraphOps.cpp
59

610
ADDITIONAL_HEADER_DIRS
711
${PROJECT_SOURCE_DIR}/include/gc/Dialect/OneDNNGraph
812

913
DEPENDS
10-
MLIROneDNNGraphOpsIncGen
14+
${GC_ONEDNN_DIALECT_LIB_NAME}OpsIncGen
1115

1216
LINK_LIBS PUBLIC
1317
${MLIR_LINK_COMPONENTS}
1418
)
15-
set_property(GLOBAL APPEND PROPERTY GC_DIALECT_LIBS MLIROneDNNGraph)
19+
set_property(GLOBAL APPEND PROPERTY GC_DIALECT_LIBS ${GC_ONEDNN_DIALECT_LIB_NAME})

0 commit comments

Comments
 (0)