Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Crash with TorchBackendToLinalgOnTensorsBackendPipeline #3352

Open
zjgarvey opened this issue May 15, 2024 · 0 comments
Open

Crash with TorchBackendToLinalgOnTensorsBackendPipeline #3352

zjgarvey opened this issue May 15, 2024 · 0 comments

Comments

@zjgarvey
Copy link
Collaborator

The Issue

Running --torch-mlir-opt --torch-backend-to-linalg-on-tensors-backend-pipeline on some (rather large IR) causes a crash during the pass --resolve-shaped-type-result-dims (from memref).

Here is some IR that can reproduce the issue:

func.func @dim_of_pad(%in : tensor<?x?xi8>) -> (index , tensor<?x?xi8>) {
    %c1 = arith.constant 1 : index
    %c0_i8 = arith.constant 0 : i8
    %padded = tensor.pad %in low[1, 1] high[1, 1] {
    ^bb0(%arg1: index, %arg2: index):
      tensor.yield %c0_i8 : i8
    } : tensor<?x?xi8> to tensor<?x?xi8>
    %dim = tensor.dim %padded, %c1 : tensor<?x?xi8>
    return %dim, %padded : index, tensor<?x?xi8>
}
  • If adding the pass resolve-shaped-type-result-dims to torch-mlir-opt.cpp, you can reproduce the error with torch-mlir-opt --resolve-shaped-type-result-dims applied to the above IR.
  • torch-mlir-opt --torch-backend-to-linalg-on-tensors-backend-pipeline applied to the above IR also reproduces the crash.
  • However, mlir-opt --resolve-shaped-type-result-dims does NOT reproduce the crash, but instead generates the valid IR:
affine_map<()[s0] -> (s0 + 2)>
module {
  func.func @dim_of_pad(%arg0: tensor<?x?xi8>) -> (index, tensor<?x?xi8>) {
    %c1 = arith.constant 1 : index
    %c0_i8 = arith.constant 0 : i8
    %padded = tensor.pad %arg0 low[1, 1] high[1, 1] {
    ^bb0(%arg1: index, %arg2: index):
      tensor.yield %c0_i8 : i8
    } : tensor<?x?xi8> to tensor<?x?xi8>
    %dim = tensor.dim %arg0, %c1 : tensor<?x?xi8>
    %0 = affine.apply #map()[%dim]
    return %0, %padded : index, tensor<?x?xi8>
  }
}

Questions:

  1. Why are there memref passes used in a pass pipeline, but not available by themselves? This makes debugging an error during this pass more difficult. In particular, because of the position in the pipeline, there are still torch_c objects floating around everywhere in the ir, and the mlir-opt pass will not work properly since torch dialects aren't loaded there.
  2. Is there a reason the affine dialect is not included in torch-mlir? I believe this is part of why the mlir-opt version works, but the torch-mlir-opt version does not.
  3. How should I fix this issue? Is this something to fix in the structure of torch-mlir, or something to upstream to llvm-project despite not being a reproducible issue there?

Debug Dumps

When running ``mlir-opt --resolve-shaped-type-result-dims --debug```, the successful application details are here:

Processing operation : 'tensor.dim'(0x590869b60ee0) {
  %3 = "tensor.dim"(%2, %0) : (tensor<?x?xi8>, index) -> index


  * Pattern (anonymous namespace)::DimOfReifyRankedShapedTypeOpInterface<mlir::tensor::DimOp> : 'tensor.dim -> ()' {
Trying to match "(anonymous namespace)::DimOfReifyRankedShapedTypeOpInterface<mlir::tensor::DimOp>"
    ** Insert  : 'arith.constant'(0x590869b63970)
    ** Insert  : 'tensor.dim'(0x590869b60920)
ImplicitTypeIDRegistry::lookupOrInsert(mlir::affine::detail::AffineApplyOpGenericAdaptorBase::Properties)
    ** Insert  : 'affine.apply'(0x590869b68000)
    ** Insert  : 'arith.constant'(0x590869b68090)
    ** Insert  : 'tensor.dim'(0x590869b609d0)
    ** Insert  : 'affine.apply'(0x590869b6b690)
    ** Replace : 'tensor.dim'(0x590869b60ee0)
    ** Modified: 'func.return'(0x590869b60f80)
    ** Erase   : 'tensor.dim'(0x590869b60ee0)
"(anonymous namespace)::DimOfReifyRankedShapedTypeOpInterface<mlir::tensor::DimOp>" result 1
  } -> success : pattern applied successfully
// *** IR Dump After Pattern Application ***
func.func @dim_of_pad(%arg0: tensor<?x?xi8>) -> (index, tensor<?x?xi8>) {
  %c1 = arith.constant 1 : index
  %c0_i8 = arith.constant 0 : i8
  %padded = tensor.pad %arg0 low[1, 1] high[1, 1] {
  ^bb0(%arg1: index, %arg2: index):
    tensor.yield %c0_i8 : i8
  } : tensor<?x?xi8> to tensor<?x?xi8>
  %c0 = arith.constant 0 : index
  %dim = tensor.dim %arg0, %c0 : tensor<?x?xi8>
  %0 = affine.apply affine_map<()[s0] -> (s0 + 2)>()[%dim]
  %c1_0 = arith.constant 1 : index
  %dim_1 = tensor.dim %arg0, %c1_0 : tensor<?x?xi8>
  %1 = affine.apply affine_map<()[s0] -> (s0 + 2)>()[%dim_1]
  return %1, %padded : index, tensor<?x?xi8>
}

The original crash backtrace:

LLVM ERROR: checking for an interface (`mlir::ReifyRankedShapedTypeOpInterface`) that was promised by dialect 'tensor' but never implemented. This is generally an indication that the dialect extension implementing the interface was never registered.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.      Program arguments: torch-mlir-opt /home/zjgar/code/llvm-project/test.mlir --torch-backend-to-linalg-on-tensors-backend-pipeline
 #0 0x000060c2d9788377 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /home/zjgar/code/torch-mlir/externals/llvm-project/llvm/lib/Support/Unix/Signals.inc:723:13
 #1 0x000060c2d97864a0 llvm::sys::RunSignalHandlers() /home/zjgar/code/torch-mlir/externals/llvm-project/llvm/lib/Support/Signals.cpp:106:18
 #2 0x000060c2d9788a1a SignalHandler(int) /home/zjgar/code/torch-mlir/externals/llvm-project/llvm/lib/Support/Unix/Signals.inc:413:1
 #3 0x00007cd49c442520 (/lib/x86_64-linux-gnu/libc.so.6+0x42520)
 #4 0x00007cd49c4969fc pthread_kill (/lib/x86_64-linux-gnu/libc.so.6+0x969fc)
 #5 0x00007cd49c442476 gsignal (/lib/x86_64-linux-gnu/libc.so.6+0x42476)
 #6 0x00007cd49c4287f3 abort (/lib/x86_64-linux-gnu/libc.so.6+0x287f3)
 #7 0x000060c2d9756a5c llvm::report_fatal_error(llvm::Twine const&, bool) /home/zjgar/code/torch-mlir/externals/llvm-project/llvm/lib/Support/ErrorHandling.cpp:125:5
 #8 0x000060c2d89ad0af (/home/zjgar/code/torch-mlir/build/bin/torch-mlir-opt+0x8330af)
 #9 0x000060c2d8b1f418 mlir::TypeID::operator==(mlir::TypeID const&) const /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/include/mlir/Support/TypeID.h:116:12
#10 0x000060c2d8b1f418 mlir::TypeID::operator!=(mlir::TypeID const&) const /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/include/mlir/Support/TypeID.h:119:20
#11 0x000060c2d8b1f418 mlir::OperationName::Impl::isRegistered() const /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/include/mlir/IR/OperationSupport.h:159:47
#12 0x000060c2d8b1f418 mlir::OperationName::isRegistered() const /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/include/mlir/IR/OperationSupport.h:233:49
#13 0x000060c2d8b1f418 mlir::OperationName::getRegisteredInfo() const /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/include/mlir/IR/OperationSupport.h:718:10
#14 0x000060c2d8b1f418 mlir::OpInterface<mlir::ReifyRankedShapedTypeOpInterface, mlir::detail::ReifyRankedShapedTypeOpInterfaceInterfaceTraits>::getInterfaceFor(mlir::Operation*) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/include/mlir/IR/OpDefinition.h:2105:18
#15 0x000060c2d9654bc8 mlir::detail::Interface<mlir::ReifyRankedShapedTypeOpInterface, mlir::Operation*, mlir::detail::ReifyRankedShapedTypeOpInterfaceInterfaceTraits, mlir::Op<mlir::ReifyRankedShapedTypeOpInterface>, mlir::OpTrait::TraitBase>::classof(mlir::Operation*) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/include/mlir/Support/InterfaceSupport.h:124:42
#16 0x000060c2d9654bc8 llvm::CastInfo<mlir::ReifyRankedShapedTypeOpInterface, mlir::Operation*, void>::isPossible(mlir::Operation*) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/include/mlir/IR/Operation.h:1108:58
#17 0x000060c2d9654bc8 llvm::DefaultDoCastIfPossible<mlir::ReifyRankedShapedTypeOpInterface, mlir::Operation*, llvm::CastInfo<mlir::ReifyRankedShapedTypeOpInterface, mlir::Operation*, void>>::doCastIfPossible(mlir::Operation*) /home/zjgar/code/torch-mlir/externals/llvm-project/llvm/include/llvm/Support/Casting.h:311:10
#18 0x000060c2d9654bc8 decltype(auto) llvm::dyn_cast<mlir::ReifyRankedShapedTypeOpInterface, mlir::Operation>(mlir::Operation*) /home/zjgar/code/torch-mlir/externals/llvm-project/llvm/include/llvm/Support/Casting.h:663:10
#19 0x000060c2d9654bc8 mlir::reifyResultShapes(mlir::OpBuilder&, mlir::Operation*, llvm::SmallVector<llvm::SmallVector<mlir::OpFoldResult, 6u>, 1u>&) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Interfaces/InferTypeOpInterface.cpp:28:22
#20 0x000060c2d8b243b6 mlir::LogicalResult::failed() const /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/include/mlir/Support/LogicalResult.h:44:33
#21 0x000060c2d8b243b6 mlir::failed(mlir::LogicalResult) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/include/mlir/Support/LogicalResult.h:72:58
#22 0x000060c2d8b243b6 (anonymous namespace)::DimOfReifyRankedShapedTypeOpInterface<mlir::tensor::DimOp>::matchAndRewrite(mlir::tensor::DimOp, mlir::PatternRewriter&) const /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Dialect/MemRef/Transforms/ResolveShapedTypeResultDims.cpp:93:9
#23 0x000060c2d92cd817 mlir::PatternApplicator::matchAndRewrite(mlir::Operation*, mlir::PatternRewriter&, llvm::function_ref<bool (mlir::Pattern const&)>, llvm::function_ref<void (mlir::Pattern const&)>, llvm::function_ref<mlir::LogicalResult (mlir::Pattern const&)>)::$_2::operator()() const /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Rewrite/PatternApplicator.cpp:212:13
#24 0x000060c2d92cd817 void llvm::function_ref<void ()>::callback_fn<mlir::PatternApplicator::matchAndRewrite(mlir::Operation*, mlir::PatternRewriter&, llvm::function_ref<bool (mlir::Pattern const&)>, llvm::function_ref<void (mlir::Pattern const&)>, llvm::function_ref<mlir::LogicalResult (mlir::Pattern const&)>)::$_2>(long) /home/zjgar/code/torch-mlir/externals/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:45:12
#25 0x000060c2d92ca6ff mlir::PatternApplicator::matchAndRewrite(mlir::Operation*, mlir::PatternRewriter&, llvm::function_ref<bool (mlir::Pattern const&)>, llvm::function_ref<void (mlir::Pattern const&)>, llvm::function_ref<mlir::LogicalResult (mlir::Pattern const&)>) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Rewrite/PatternApplicator.cpp:233:9
#26 0x000060c2d92b05ea (anonymous namespace)::GreedyPatternRewriteDriver::processWorklist() /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Transforms/Utils/GreedyPatternRewriteDriver.cpp:0:0
#27 0x000060c2d92ace90 (anonymous namespace)::RegionPatternRewriteDriver::simplify(bool*) &&::$_8::operator()() const /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Transforms/Utils/GreedyPatternRewriteDriver.cpp:870:11
#28 0x000060c2d92ace90 void llvm::function_ref<void ()>::callback_fn<(anonymous namespace)::RegionPatternRewriteDriver::simplify(bool*) &&::$_8>(long) /home/zjgar/code/torch-mlir/externals/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:45:12
#29 0x000060c2d92ace90 llvm::function_ref<void ()>::operator()() const /home/zjgar/code/torch-mlir/externals/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:68:12
#30 0x000060c2d92ace90 void mlir::MLIRContext::executeAction<(anonymous namespace)::GreedyPatternRewriteIteration, long&>(llvm::function_ref<void ()>, llvm::ArrayRef<mlir::IRUnit>, long&) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/include/mlir/IR/MLIRContext.h:275:7
#31 0x000060c2d92ace90 (anonymous namespace)::RegionPatternRewriteDriver::simplify(bool*) && /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Transforms/Utils/GreedyPatternRewriteDriver.cpp:868:10
#32 0x000060c2d92ace90 mlir::applyPatternsAndFoldGreedily(mlir::Region&, mlir::FrozenRewritePatternSet const&, mlir::GreedyRewriteConfig, bool*) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Transforms/Utils/GreedyPatternRewriteDriver.cpp:910:47
#33 0x000060c2d8b2501b mlir::LogicalResult::failed() const /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/include/mlir/Support/LogicalResult.h:44:33
#34 0x000060c2d8b2501b mlir::applyPatternsAndFoldGreedily(mlir::Operation*, mlir::FrozenRewritePatternSet const&, mlir::GreedyRewriteConfig, bool*) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/include/mlir/Transforms/GreedyPatternRewriteDriver.h:149:14
#35 0x000060c2d8b2501b (anonymous namespace)::ResolveShapedTypeResultDimsPass::runOnOperation() /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Dialect/MemRef/Transforms/ResolveShapedTypeResultDims.cpp:153:14
#36 0x000060c2d9317434 mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int)::$_7::operator()() const /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Pass/Pass.cpp:0:17
#37 0x000060c2d9317434 void llvm::function_ref<void ()>::callback_fn<mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int)::$_7>(long) /home/zjgar/code/torch-mlir/externals/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:45:12
#38 0x000060c2d9317434 llvm::function_ref<void ()>::operator()() const /home/zjgar/code/torch-mlir/externals/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:68:12
#39 0x000060c2d9317434 void mlir::MLIRContext::executeAction<mlir::PassExecutionAction, mlir::Pass&>(llvm::function_ref<void ()>, llvm::ArrayRef<mlir::IRUnit>, mlir::Pass&) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/include/mlir/IR/MLIRContext.h:275:7
#40 0x000060c2d9317434 mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Pass/Pass.cpp:521:21
#41 0x000060c2d9317aa1 mlir::LogicalResult::failed() const /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/include/mlir/Support/LogicalResult.h:44:33
#42 0x000060c2d9317aa1 mlir::failed(mlir::LogicalResult) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/include/mlir/Support/LogicalResult.h:72:58
#43 0x000060c2d9317aa1 mlir::detail::OpToOpPassAdaptor::runPipeline(mlir::OpPassManager&, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int, mlir::PassInstrumentor*, mlir::PassInstrumentation::PipelineParentInfo const*) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Pass/Pass.cpp:593:9
#44 0x000060c2d931d06b mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::$_15::operator()(mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo&) const /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Pass/Pass.cpp:818:5
#45 0x000060c2d9318f1b mlir::LogicalResult::failed() const /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/include/mlir/Support/LogicalResult.h:44:33
#46 0x000060c2d9318f1b mlir::failed(mlir::LogicalResult) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/include/mlir/Support/LogicalResult.h:72:58
#47 0x000060c2d9318f1b mlir::LogicalResult mlir::failableParallelForEach<__gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>>, mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::$_15&>(mlir::MLIRContext*, __gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>>, __gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>>, mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::$_15&) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/include/mlir/IR/Threading.h:46:11
#48 0x000060c2d9318f1b mlir::LogicalResult mlir::failableParallelForEach<std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>&, mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::$_15&>(mlir::MLIRContext*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>&, mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::$_15&) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/include/mlir/IR/Threading.h:92:10
#49 0x000060c2d9318f1b mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Pass/Pass.cpp:823:14
#50 0x000060c2d93175d2 mlir::detail::OpToOpPassAdaptor::runOnOperation(bool) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Pass/Pass.cpp:0:5
#51 0x000060c2d93175d2 mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int)::$_7::operator()() const /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Pass/Pass.cpp:525:20
#52 0x000060c2d93175d2 void llvm::function_ref<void ()>::callback_fn<mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int)::$_7>(long) /home/zjgar/code/torch-mlir/externals/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:45:12
#53 0x000060c2d93175d2 llvm::function_ref<void ()>::operator()() const /home/zjgar/code/torch-mlir/externals/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:68:12
#54 0x000060c2d93175d2 void mlir::MLIRContext::executeAction<mlir::PassExecutionAction, mlir::Pass&>(llvm::function_ref<void ()>, llvm::ArrayRef<mlir::IRUnit>, mlir::Pass&) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/include/mlir/IR/MLIRContext.h:275:7
#55 0x000060c2d93175d2 mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Pass/Pass.cpp:521:21
#56 0x000060c2d9319e33 mlir::LogicalResult::failed() const /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/include/mlir/Support/LogicalResult.h:44:33
#57 0x000060c2d9319e33 mlir::failed(mlir::LogicalResult) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/include/mlir/Support/LogicalResult.h:72:58
#58 0x000060c2d9319e33 mlir::detail::OpToOpPassAdaptor::runPipeline(mlir::OpPassManager&, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int, mlir::PassInstrumentor*, mlir::PassInstrumentation::PipelineParentInfo const*) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Pass/Pass.cpp:593:9
#59 0x000060c2d9319e33 mlir::PassManager::runPasses(mlir::Operation*, mlir::AnalysisManager) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Pass/Pass.cpp:904:10
#60 0x000060c2d9319e33 mlir::PassManager::run(mlir::Operation*) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Pass/Pass.cpp:884:60
#61 0x000060c2d82ef5b7 mlir::LogicalResult::failed() const /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/include/mlir/Support/LogicalResult.h:44:33
#62 0x000060c2d82ef5b7 mlir::failed(mlir::LogicalResult) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/include/mlir/Support/LogicalResult.h:72:58
#63 0x000060c2d82ef5b7 performActions(llvm::raw_ostream&, std::shared_ptr<llvm::SourceMgr> const&, mlir::MLIRContext*, mlir::MlirOptMainConfig const&) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Tools/mlir-opt/MlirOptMain.cpp:407:7
#64 0x000060c2d82ef224 processBuffer(llvm::raw_ostream&, std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, mlir::MlirOptMainConfig const&, mlir::DialectRegistry&, llvm::ThreadPoolInterface*) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Tools/mlir-opt/MlirOptMain.cpp:472:12
#65 0x000060c2d82ef224 mlir::MlirOptMain(llvm::raw_ostream&, std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, mlir::DialectRegistry&, mlir::MlirOptMainConfig const&)::$_3::operator()(std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&) const /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Tools/mlir-opt/MlirOptMain.cpp:547:12
#66 0x000060c2d82ef224 mlir::LogicalResult llvm::function_ref<mlir::LogicalResult (std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&)>::callback_fn<mlir::MlirOptMain(llvm::raw_ostream&, std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, mlir::DialectRegistry&, mlir::MlirOptMainConfig const&)::$_3>(long, std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&) /home/zjgar/code/torch-mlir/externals/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:45:12
#67 0x000060c2d972a879 llvm::function_ref<mlir::LogicalResult (std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&)>::operator()(std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&) const /home/zjgar/code/torch-mlir/externals/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:68:12
#68 0x000060c2d972a879 mlir::splitAndProcessBuffer(std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::function_ref<mlir::LogicalResult (std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&)>, llvm::raw_ostream&, llvm::StringRef, llvm::StringRef) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Support/ToolUtilities.cpp:28:12
#69 0x000060c2d82e8d1c mlir::MlirOptMain(llvm::raw_ostream&, std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, mlir::DialectRegistry&, mlir::MlirOptMainConfig const&) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Tools/mlir-opt/MlirOptMain.cpp:550:10
#70 0x000060c2d82e8fc0 mlir::MlirOptMain(int, char**, llvm::StringRef, llvm::StringRef, mlir::DialectRegistry&) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Tools/mlir-opt/MlirOptMain.cpp:588:14
#71 0x000060c2d82e92b2 mlir::MlirOptMain(int, char**, llvm::StringRef, mlir::DialectRegistry&) /home/zjgar/code/torch-mlir/externals/llvm-project/mlir/lib/Tools/mlir-opt/MlirOptMain.cpp:604:10
#72 0x000060c2d82e7786 main /home/zjgar/code/torch-mlir/tools/torch-mlir-opt/torch-mlir-opt.cpp:49:33
#73 0x00007cd49c429d90 (/lib/x86_64-linux-gnu/libc.so.6+0x29d90)
#74 0x00007cd49c429e40 __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x29e40)
#75 0x000060c2d82e7385 _start (/home/zjgar/code/torch-mlir/build/bin/torch-mlir-opt+0x16d385)
Aborted (core dumped)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant