diff options
Diffstat (limited to 'standalone-opt/standalone-opt.cpp')
-rw-r--r-- | standalone-opt/standalone-opt.cpp | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/standalone-opt/standalone-opt.cpp b/standalone-opt/standalone-opt.cpp new file mode 100644 index 0000000..97a996a --- /dev/null +++ b/standalone-opt/standalone-opt.cpp @@ -0,0 +1,38 @@ +//===- standalone-opt.cpp ---------------------------------------*- C++ -*-===// +// +// This file is licensed under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +#include "mlir/IR/Dialect.h" +#include "mlir/IR/MLIRContext.h" +#include "mlir/InitAllDialects.h" +#include "mlir/InitAllPasses.h" +#include "mlir/Pass/Pass.h" +#include "mlir/Pass/PassManager.h" +#include "mlir/Support/FileUtilities.h" +#include "mlir/Support/MlirOptMain.h" +#include "llvm/Support/CommandLine.h" +#include "llvm/Support/InitLLVM.h" +#include "llvm/Support/SourceMgr.h" +#include "llvm/Support/ToolOutputFile.h" + +#include "Standalone/StandaloneDialect.h" + +int main(int argc, char **argv) { + mlir::registerAllPasses(); + // TODO: Register standalone passes here. + + mlir::DialectRegistry registry; + registry.insert<mlir::standalone::StandaloneDialect>(); + registry.insert<mlir::StandardOpsDialect>(); + // Add the following to include *all* MLIR Core dialects, or selectively + // include what you need like above. You only need to register dialects that + // will be *parsed* by the tool, not the one generated + // registerAllDialects(registry); + + return mlir::asMainReturnCode( + mlir::MlirOptMain(argc, argv, "Standalone optimizer driver\n", registry)); +} |