Merge pull request #6392 from marbre/build-emitc
Refactor building and registering EmitC
diff --git a/iree/compiler/Dialect/VM/Conversion/VMToEmitC/CMakeLists.txt b/iree/compiler/Dialect/VM/Conversion/VMToEmitC/CMakeLists.txt
index 185ae84..8388fe9 100644
--- a/iree/compiler/Dialect/VM/Conversion/VMToEmitC/CMakeLists.txt
+++ b/iree/compiler/Dialect/VM/Conversion/VMToEmitC/CMakeLists.txt
@@ -6,30 +6,27 @@
if(${IREE_ENABLE_EMITC})
iree_add_all_subdirs()
-
+
iree_cc_library(
NAME
VMToEmitC
HDRS
"ConvertVMToEmitC.h"
- "EmitCTypeConverter.h"
"DropExcludedExports.h"
+ "EmitCTypeConverter.h"
SRCS
"ConvertVMToEmitC.cpp"
"DropExcludedExports.cpp"
DEPS
+ MLIREmitC
MLIRIR
MLIRPass
- MLIREmitC
MLIRTransforms
iree::compiler::Dialect::IREE::Conversion::PreserveCompilerHints
iree::compiler::Dialect::IREE::IR
iree::compiler::Dialect::VM::Analysis
iree::compiler::Dialect::VM::IR
iree::compiler::Dialect::VM::Utils::CallingConvention
- INCLUDES
- "${PROJECT_SOURCE_DIR}/third_party/mlir-emitc/include"
- "${PROJECT_BINARY_DIR}/third_party/mlir-emitc/include"
PUBLIC
)
endif()
diff --git a/iree/compiler/Dialect/VM/Conversion/VMToEmitC/test/CMakeLists.txt b/iree/compiler/Dialect/VM/Conversion/VMToEmitC/test/CMakeLists.txt
index d5cc7b4..d333208 100644
--- a/iree/compiler/Dialect/VM/Conversion/VMToEmitC/test/CMakeLists.txt
+++ b/iree/compiler/Dialect/VM/Conversion/VMToEmitC/test/CMakeLists.txt
@@ -6,12 +6,28 @@
iree_add_all_subdirs()
-file(GLOB _GLOB_X_MLIR LIST_DIRECTORIES false RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} CONFIGURE_DEPENDS *.mlir)
iree_lit_test_suite(
NAME
lit
SRCS
- "${_GLOB_X_MLIR}"
+ "arithmetic_ops.mlir"
+ "arithmetic_ops_f32.mlir"
+ "arithmetic_ops_i64.mlir"
+ "assignment_ops.mlir"
+ "assignment_ops_f32.mlir"
+ "assignment_ops_i64.mlir"
+ "comparison_ops.mlir"
+ "comparison_ops_f32.mlir"
+ "comparison_ops_i64.mlir"
+ "const_ops.mlir"
+ "const_ops_f32.mlir"
+ "const_ops_i64.mlir"
+ "conversion_ops.mlir"
+ "conversion_ops_f32.mlir"
+ "conversion_ops_i64.mlir"
+ "shift_ops.mlir"
+ "shift_ops_i64.mlir"
+ "type_conversion.mlir"
DATA
iree::tools::IreeFileCheck
iree::tools::iree-opt
diff --git a/iree/tools/CMakeLists.txt b/iree/tools/CMakeLists.txt
index 2bee9c0..84f66eb 100644
--- a/iree/tools/CMakeLists.txt
+++ b/iree/tools/CMakeLists.txt
@@ -44,7 +44,7 @@
endif()
if(IREE_ENABLE_EMITC)
- set(IREE_OPT_CONDITIONAL_DEPS
+ set(IREE_EMITC_CONDITIONAL_DEP
MLIREmitC
)
set(IREE_TRANSLATE_CONDITIONAL_DEPS
@@ -331,7 +331,7 @@
MLIRIR
MLIROptLib
MLIRSupport
- ${IREE_OPT_CONDITIONAL_DEPS}
+ ${IREE_EMITC_CONDITIONAL_DEP}
PUBLIC
)
@@ -395,7 +395,7 @@
MLIRIR
MLIRLspServerLib
MLIRSupport
- ${IREE_OPT_CONDITIONAL_DEPS}
+ ${IREE_EMITC_CONDITIONAL_DEP}
PUBLIC
)
diff --git a/iree/tools/init_dialects.h b/iree/tools/init_dialects.h
index e1f22ca..1da6f2b 100644
--- a/iree/tools/init_dialects.h
+++ b/iree/tools/init_dialects.h
@@ -17,10 +17,6 @@
#include "iree/tools/init_mlir_dialects.h"
#include "iree/tools/init_xla_dialects.h"
-#ifdef IREE_HAVE_EMITC_DIALECT
-#include "emitc/InitDialect.h"
-#endif // IREE_HAVE_EMITC_DIALECT
-
namespace mlir {
namespace iree_compiler {
@@ -29,10 +25,6 @@
registerMlirDialects(registry);
mlir::registerXLADialects(registry);
mlir::iree_compiler::registerIreeCompilerModuleDialects(registry);
-
-#ifdef IREE_HAVE_EMITC_DIALECT
- mlir::registerEmitCDialect(registry);
-#endif // IREE_HAVE_EMITC_DIALECT
}
} // namespace iree_compiler
diff --git a/iree/tools/init_mlir_dialects.h b/iree/tools/init_mlir_dialects.h
index 70f3ce3..67853c3 100644
--- a/iree/tools/init_mlir_dialects.h
+++ b/iree/tools/init_mlir_dialects.h
@@ -28,6 +28,10 @@
#include "mlir/Dialect/Vector/VectorOps.h"
#include "mlir/IR/Dialect.h"
+#ifdef IREE_HAVE_EMITC_DIALECT
+#include "mlir/Dialect/EmitC/IR/EmitC.h"
+#endif // IREE_HAVE_EMITC_DIALECT
+
namespace mlir {
// Add all the MLIR dialects to the provided registry.
@@ -48,6 +52,10 @@
tosa::TosaDialect,
shape::ShapeDialect>();
// clang-format on
+
+#ifdef IREE_HAVE_EMITC_DIALECT
+ registry.insert<emitc::EmitCDialect>();
+#endif // IREE_HAVE_EMITC_DIALECT
}
} // namespace mlir
diff --git a/iree/tools/iree-translate-main.cc b/iree/tools/iree-translate-main.cc
index c56682a..746e376 100644
--- a/iree/tools/iree-translate-main.cc
+++ b/iree/tools/iree-translate-main.cc
@@ -44,7 +44,6 @@
#include "mlir/Translation.h"
#ifdef IREE_HAVE_EMITC_DIALECT
-#include "emitc/InitDialect.h"
#include "emitc/InitTranslation.h"
#endif // IREE_HAVE_EMITC_DIALECT
@@ -67,9 +66,6 @@
mlir::DialectRegistry registry;
mlir::registerMlirDialects(registry);
mlir::registerLLVMDialectTranslation(registry);
-#ifdef IREE_HAVE_EMITC_DIALECT
- mlir::registerEmitCDialect(registry);
-#endif // IREE_HAVE_EMITC_DIALECT
mlir::registerXLADialects(registry);
mlir::iree_compiler::registerIreeDialects(registry);
mlir::iree_compiler::registerIreeCompilerModuleDialects(registry);