MLIR
21.0.0git
|
#include "mlir/Tools/mlir-opt/MlirOptMain.h"
#include "mlir/Bytecode/BytecodeWriter.h"
#include "mlir/Debug/CLOptionsSetup.h"
#include "mlir/Debug/Counter.h"
#include "mlir/Debug/DebuggerExecutionContextHook.h"
#include "mlir/Debug/ExecutionContext.h"
#include "mlir/Debug/Observers/ActionLogging.h"
#include "mlir/Dialect/IRDL/IR/IRDL.h"
#include "mlir/Dialect/IRDL/IRDLLoading.h"
#include "mlir/IR/AsmState.h"
#include "mlir/IR/Attributes.h"
#include "mlir/IR/BuiltinOps.h"
#include "mlir/IR/Diagnostics.h"
#include "mlir/IR/Dialect.h"
#include "mlir/IR/Location.h"
#include "mlir/IR/MLIRContext.h"
#include "mlir/Parser/Parser.h"
#include "mlir/Pass/Pass.h"
#include "mlir/Pass/PassManager.h"
#include "mlir/Pass/PassRegistry.h"
#include "mlir/Support/FileUtilities.h"
#include "mlir/Support/Timing.h"
#include "mlir/Support/ToolUtilities.h"
#include "mlir/Tools/ParseUtilities.h"
#include "mlir/Tools/Plugins/DialectPlugin.h"
#include "mlir/Tools/Plugins/PassPlugin.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/FileUtilities.h"
#include "llvm/Support/InitLLVM.h"
#include "llvm/Support/LogicalResult.h"
#include "llvm/Support/ManagedStatic.h"
#include "llvm/Support/Process.h"
#include "llvm/Support/Regex.h"
#include "llvm/Support/SourceMgr.h"
#include "llvm/Support/StringSaver.h"
#include "llvm/Support/ThreadPool.h"
#include "llvm/Support/ToolOutputFile.h"
Go to the source code of this file.
Functions | |
LogicalResult | loadIRDLDialects (StringRef irdlFile, MLIRContext &ctx) |
static LogicalResult | doVerifyRoundTrip (Operation *op, const MlirOptMainConfig &config, bool useBytecode) |
static LogicalResult | doVerifyRoundTrip (Operation *op, const MlirOptMainConfig &config) |
static LogicalResult | performActions (raw_ostream &os, const std::shared_ptr< llvm::SourceMgr > &sourceMgr, MLIRContext *context, const MlirOptMainConfig &config) |
Perform the actions on the input file indicated by the command line flags within the specified context. More... | |
static LogicalResult | processBuffer (raw_ostream &os, std::unique_ptr< MemoryBuffer > ownedBuffer, const MlirOptMainConfig &config, DialectRegistry ®istry, llvm::ThreadPoolInterface *threadPool) |
Parses the memory buffer. More... | |
static LogicalResult | printRegisteredDialects (DialectRegistry ®istry) |
static LogicalResult | printRegisteredPassesAndReturn () |
Variables | |
ManagedStatic< MlirOptMainConfigCLOptions > | clOptionsConfig |
|
static |
Definition at line 420 of file MlirOptMain.cpp.
References mlir::config, and doVerifyRoundTrip().
|
static |
Definition at line 354 of file MlirOptMain.cpp.
References mlir::MLIRContext::allowsUnregisteredDialects(), mlir::MLIRContext::allowUnregisteredDialects(), mlir::MLIRContext::appendDialectRegistry(), mlir::config, mlir::Operation::emitOpError(), mlir::OwningOpRef< OpTy >::get(), mlir::Operation::getContext(), mlir::MLIRContext::getDialectRegistry(), loadIRDLDialects(), mlir::Operation::print(), and mlir::writeBytecodeToFile().
Referenced by doVerifyRoundTrip(), and performActions().
LogicalResult loadIRDLDialects | ( | StringRef | irdlFile, |
MLIRContext & | ctx | ||
) |
Definition at line 323 of file MlirOptMain.cpp.
References mlir::MLIRContext::appendDialectRegistry(), mlir::emitError(), mlir::OwningOpRef< OpTy >::get(), mlir::get(), mlir::DialectRegistry::insert(), mlir::irdl::loadDialects(), and mlir::openInputFile().
Referenced by doVerifyRoundTrip().
|
static |
Perform the actions on the input file indicated by the command line flags within the specified context.
This typically parses the main source file, runs zero or more optimization passes, then prints the output.
Definition at line 434 of file MlirOptMain.cpp.
References mlir::PassReproducerOptions::apply(), mlir::applyDefaultTimingManagerCLOptions(), mlir::applyPassManagerCLOptions(), mlir::PassReproducerOptions::attachResourceParser(), mlir::config, mlir::MLIRContext::disableMultithreading(), doVerifyRoundTrip(), mlir::emitError(), mlir::MLIRContext::enableMultithreading(), mlir::PassManager::enableTiming(), mlir::PassManager::enableVerifier(), mlir::OwningOpRef< OpTy >::get(), mlir::get(), mlir::OpPassManager::getAnyOpAnchorName(), mlir::PassManager::getContext(), mlir::OpPassManager::getPasses(), mlir::TimingManager::getRootScope(), mlir::OpPassManager::Implicit, mlir::MLIRContext::isMultithreadingEnabled(), mlir::makeReproducer(), mlir::TimingScope::nest(), mlir::parseSourceFileForTool(), mlir::PassManager::run(), mlir::BytecodeWriterConfig::setDesiredBytecodeVersion(), mlir::BytecodeWriterConfig::setElideResourceDataFlag(), mlir::TimingScope::stop(), and mlir::writeBytecodeToFile().
|
static |
Definition at line 598 of file MlirOptMain.cpp.
References mlir::DialectRegistry::getDialectNames().
Referenced by mlir::MlirOptMain().
|
static |
Definition at line 605 of file MlirOptMain.cpp.
References mlir::printRegisteredPasses().
Referenced by mlir::MlirOptMain().
|
static |
Parses the memory buffer.
If successfully, run a series of passes against it and print the result.
Definition at line 518 of file MlirOptMain.cpp.
ManagedStatic<MlirOptMainConfigCLOptions> clOptionsConfig |
Definition at line 279 of file MlirOptMain.cpp.
Referenced by mlir::MlirOptMainConfig::createFromCLOptions(), and mlir::MlirOptMainConfig::registerCLOptions().