Skip to content

Commit 1287334

Browse files
committed
Move xegpu pass to imex-only build
1 parent 39ce909 commit 1287334

File tree

9 files changed

+50
-14
lines changed

9 files changed

+50
-14
lines changed

Diff for: .gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -3,3 +3,4 @@
33
build/
44
externals/
55
compile_commands.json
6+
install/

Diff for: cmake/functions.cmake

+9-2
Original file line numberDiff line numberDiff line change
@@ -111,10 +111,17 @@ endfunction()
111111

112112
function(gc_add_mlir_dialect_library name)
113113
add_mlir_dialect_library(${ARGV})
114-
target_link_libraries(obj.${name} PUBLIC GcInterface)
115114
set_property(GLOBAL APPEND PROPERTY GC_DIALECT_LIBS ${name})
116115

117116
if(GcInterface IN_LIST ARGN)
118117
target_link_libraries(obj.${name} PUBLIC GcInterface)
119118
endif()
120-
endfunction()
119+
endfunction()
120+
121+
function(gc_add_mlir_translation_library name)
122+
add_mlir_translation_library(${ARGV})
123+
set_property(GLOBAL APPEND PROPERTY GC_MLIR_LIBS ${name})
124+
if(GcInterface IN_LIST ARGN)
125+
target_link_libraries(obj.${name} PUBLIC GcInterface)
126+
endif()
127+
endfunction()

Diff for: lib/gc/Dialect/LLVMIR/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,6 @@ add_mlir_dialect_library(MLIRGENDialect
1616
MLIRIR
1717
MLIRLLVMDialect
1818
MLIRSideEffectInterfaces
19+
GcInterface
1920
)
2021
set_property(GLOBAL APPEND PROPERTY GC_DIALECT_LIBS MLIRGENDialect)

Diff for: lib/gc/Target/LLVM/CMakeLists.txt

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
add_mlir_dialect_library(MLIRGENTarget
1+
gc_add_mlir_dialect_library(MLIRGENTarget
22
GEN/Target.cpp
33

44
OBJECT
@@ -14,4 +14,5 @@ add_mlir_dialect_library(MLIRGENTarget
1414
MLIRGPUDialect
1515
MLIRTargetLLVM
1616
MLIRGENToLLVMIRTranslation
17+
GcInterface
1718
)

Diff for: lib/gc/Target/LLVMIR/Dialect/GEN/CMakeLists.txt

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
add_mlir_translation_library(MLIRGENToLLVMIRTranslation
1+
gc_add_mlir_translation_library(MLIRGENToLLVMIRTranslation
22
GENToLLVMIRTranslation.cpp
33

44
DEPENDS
@@ -13,4 +13,5 @@ add_mlir_translation_library(MLIRGENToLLVMIRTranslation
1313
MLIRGENDialect
1414
MLIRSupport
1515
MLIRTargetLLVMIRExport
16+
GcInterface
1617
)

Diff for: lib/gc/Transforms/CMakeLists.txt

+1-3
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,4 @@ gc_add_mlir_library(GcPasses
2525
GcInterface
2626
)
2727

28-
if(GC_ENABLE_IMEX)
29-
add_subdirectory(GPU)
30-
endif()
28+
add_subdirectory(GPU)

Diff for: lib/gc/Transforms/GPU/CMakeLists.txt

+23-1
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
gc_add_mlir_library(GcGpuPasses
2-
LinalgToXeGPU.cpp
32
GPULegalizeModule.cpp
43
ConvertGpuSignaturesToLLVM.cpp
54
GPUAttachGenTarget.cpp
65

6+
PARTIAL_SOURCES_INTENDED
77
DEPENDS
88
GraphCompilerPassIncGen
99

@@ -23,3 +23,25 @@ gc_add_mlir_library(GcGpuPasses
2323
GcUtilsIR
2424
)
2525

26+
if(GC_ENABLE_IMEX)
27+
gc_add_mlir_library(GcIMEXPasses
28+
LinalgToXeGPU.cpp
29+
30+
PARTIAL_SOURCES_INTENDED
31+
DEPENDS
32+
GraphCompilerPassIncGen
33+
34+
LINK_LIBS PUBLIC
35+
MLIRGPUDialect
36+
MLIRXeGPUDialect
37+
MLIRGPUTransforms
38+
MLIRGPUToSPIRV
39+
MLIRSCFToGPU
40+
MLIRSCFToSPIRV
41+
MLIRMathToSPIRV
42+
MLIRControlFlowToSPIRV
43+
MLIRMemRefTransforms
44+
GcInterface
45+
GcUtilsIR
46+
)
47+
endif()

Diff for: src/dnnl/CMakeLists.txt

+3
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,12 @@ set(GC_DNNL_SOURCES
2424
JsonParser.cpp
2525
dnnl_graph_compiler.cpp
2626
)
27+
# todo: replace with a gpu rutnime library once we have an appropriate target
28+
get_property(gc_passes_libs GLOBAL PROPERTY GC_PASS_LIBS)
2729
set(GC_DNNL_LINKED_LIBS
2830
GcJitWrapper
2931
GcCpuRuntime
32+
${gc_passes_libs}
3033
)
3134
gc_add_mlir_library(GcDnnl SHARED
3235
${GC_DNNL_SOURCES}

Diff for: src/gc-opt/CMakeLists.txt

+8-6
Original file line numberDiff line numberDiff line change
@@ -20,23 +20,24 @@ if(NOT GC_ENABLE_OPT)
2020
return()
2121
endif()
2222

23+
# todo: this needs further cleanup
2324
if(GC_DEV_LINK_LLVM_DYLIB)
2425
set(MLIR_LINK_COMPONENTS
2526
MLIR
2627
)
2728
get_property(dialect_libs GLOBAL PROPERTY GC_DIALECT_LIBS)
28-
get_property(conversion_libs GLOBAL PROPERTY GC_PASS_LIBS)
29-
get_property(extension_libs GLOBAL PROPERTY GC_EXTENSION_LIBS)
3029
else()
3130
set(MLIR_LINK_COMPONENTS
3231
MLIROptLib
3332
MLIRToLLVMIRTranslationRegistration
3433
)
3534
get_property(dialect_libs GLOBAL PROPERTY MLIR_DIALECT_LIBS)
36-
get_property(conversion_libs GLOBAL PROPERTY MLIR_CONVERSION_LIBS)
37-
get_property(extension_libs GLOBAL PROPERTY MLIR_EXTENSION_LIBS)
3835
endif()
3936

37+
get_property(conversion_libs GLOBAL PROPERTY MLIR_CONVERSION_LIBS)
38+
get_property(extension_libs GLOBAL PROPERTY MLIR_EXTENSION_LIBS)
39+
get_property(gc_passes_libs GLOBAL PROPERTY GC_PASS_LIBS)
40+
4041
add_llvm_executable(gc-opt gc-opt.cpp)
4142
llvm_update_compile_flags(gc-opt)
4243
mlir_check_all_link_libraries(gc-opt)
@@ -45,8 +46,9 @@ target_link_libraries(gc-opt PUBLIC GcInterface)
4546
target_link_libraries(gc-opt PRIVATE
4647
${dialect_libs}
4748
${conversion_libs}
49+
${extension_libs}
4850
${MLIR_LINK_COMPONENTS}
49-
GcPasses
51+
${gc_passes_libs}
5052
)
5153

5254
if(GC_ENABLE_IMEX)
@@ -55,7 +57,7 @@ if(GC_ENABLE_IMEX)
5557
get_property(IMEX_INCLUDES GLOBAL PROPERTY IMEX_INCLUDES)
5658
target_include_directories(gc-opt PRIVATE ${IMEX_INCLUDES})
5759
target_link_libraries(gc-opt PRIVATE
58-
GcGpuPasses
60+
GcGpuIMEXPasses
5961
IMEXGPUXDialect
6062
IMEXXeTileDialect
6163
IMEXRegionDialect

0 commit comments

Comments
 (0)