Issue |
132865
|
Summary |
[mlir] Parser crash custom op parser 'builtin.module' and 'scf.forall'
|
Labels |
mlir
|
Assignees |
|
Reporter |
wwy6191
|
git version: 59fd2878fce470f02058f43d4b818ed68ce04094
system: `Ubuntu 18.04.6 LTS`
reproduce with: `mlir-opt a.mlir`
a.mlir:
```
module {
pdl_interp.func @matcher(%arg0:!pdl.operation) {
pdl_interp.finalize
}
module @named {
llvm.func @test() attributes {llvm.emit_c_interface} {
%0 = llvm.mlir.constant(1 : index) : i64
}
scf.forall (%arg0) in (1) {
llvm.return
}
llvm.func @_mlir_ciface_test() attributes {llvm.emit_c_interface} {
llvm.call @test() : () -> ()
llvm.return
}
}
}
```
stack trace:
```
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0. Program arguments: /data/szy/MLIR/llvm-project/install/bin/mlir-opt /data/szy/MLIR/seed/seed17/tmp.SOeiMVGH5A.mlir
1. MLIR Parser: custom op parser 'builtin.module'
2. MLIR Parser: custom op parser 'builtin.module'
3. MLIR Parser: custom op parser 'scf.forall'
#0 0x00005651a0684db8 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/data/szy/MLIR/llvm-project/install/bin/mlir-opt+0x11bddb8)
#1 0x00005651a06828be llvm::sys::RunSignalHandlers() (/data/szy/MLIR/llvm-project/install/bin/mlir-opt+0x11bb8be)
#2 0x00005651a0685736 SignalHandler(int, siginfo_t*, void*) Signals.cpp:0:0
#3 0x00007fc8f2145420 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x14420)
#4 0x00005651a24e7c07 mlir::scf::ForallOp::ensureTerminator(mlir::Region&, mlir::OpBuilder&, mlir::Location) (/data/szy/MLIR/llvm-project/install/bin/mlir-opt+0x3020c07)
#5 0x00005651a24e799b mlir::scf::ForallOp::parse(mlir::OpAsmParser&, mlir::OperationState&) (/data/szy/MLIR/llvm-project/install/bin/mlir-opt+0x302099b)
#6 0x00005651a67ed7e4 (anonymous namespace)::OperationParser::parseOperation() Parser.cpp:0:0
#7 0x00005651a67f89a4 (anonymous namespace)::OperationParser::parseBlock(mlir::Block*&) Parser.cpp:0:0
#8 0x00005651a67f66d5 (anonymous namespace)::OperationParser::parseRegion(mlir::Region&, llvm::ArrayRef<mlir::OpAsmParser::Argument>, bool) Parser.cpp:0:0
#9 0x00005651a37abb9e mlir::ModuleOp::parse(mlir::OpAsmParser&, mlir::OperationState&) (/data/szy/MLIR/llvm-project/install/bin/mlir-opt+0x42e4b9e)
#10 0x00005651a67ed7e4 (anonymous namespace)::OperationParser::parseOperation() Parser.cpp:0:0
#11 0x00005651a67f89a4 (anonymous namespace)::OperationParser::parseBlock(mlir::Block*&) Parser.cpp:0:0
#12 0x00005651a67f66d5 (anonymous namespace)::OperationParser::parseRegion(mlir::Region&, llvm::ArrayRef<mlir::OpAsmParser::Argument>, bool) Parser.cpp:0:0
#13 0x00005651a37abb9e mlir::ModuleOp::parse(mlir::OpAsmParser&, mlir::OperationState&) (/data/szy/MLIR/llvm-project/install/bin/mlir-opt+0x42e4b9e)
#14 0x00005651a67ed7e4 (anonymous namespace)::OperationParser::parseOperation() Parser.cpp:0:0
#15 0x00005651a67ec5ad mlir::parseAsmSourceFile(llvm::SourceMgr const&, mlir::Block*, mlir::ParserConfig const&, mlir::AsmParserState*, mlir::AsmParserCodeCompleteContext*) (/data/szy/MLIR/llvm-project/install/bin/mlir-opt+0x73255ad)
#16 0x00005651a368bf0f mlir::parseSourceFile(std::shared_ptr<llvm::SourceMgr> const&, mlir::Block*, mlir::ParserConfig const&, mlir::LocationAttr*) (/data/szy/MLIR/llvm-project/install/bin/mlir-opt+0x41c4f0f)
#17 0x00005651a368ae8e mlir::parseSourceFileForTool(std::shared_ptr<llvm::SourceMgr> const&, mlir::ParserConfig const&, bool) (/data/szy/MLIR/llvm-project/install/bin/mlir-opt+0x41c3e8e)
#18 0x00005651a368a67f performActions(llvm::raw_ostream&, std::shared_ptr<llvm::SourceMgr> const&, mlir::MLIRContext*, mlir::MlirOptMainConfig const&) MlirOptMain.cpp:0:0
#19 0x00005651a368a3ed llvm::LogicalResult llvm::function_ref<llvm::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&)::$_0>(long, std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&) MlirOptMain.cpp:0:0
#20 0x00005651a3735275 mlir::splitAndProcessBuffer(std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::function_ref<llvm::LogicalResult (std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&)>, llvm::raw_ostream&, llvm::StringRef, llvm::StringRef) (/data/szy/MLIR/llvm-project/install/bin/mlir-opt+0x426e275)
#21 0x00005651a3684405 mlir::MlirOptMain(llvm::raw_ostream&, std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, mlir::DialectRegistry&, mlir::MlirOptMainConfig const&) (/data/szy/MLIR/llvm-project/install/bin/mlir-opt+0x41bd405)
#22 0x00005651a36846af mlir::MlirOptMain(int, char**, llvm::StringRef, llvm::StringRef, mlir::DialectRegistry&) (/data/szy/MLIR/llvm-project/install/bin/mlir-opt+0x41bd6af)
#23 0x00005651a36849de mlir::MlirOptMain(int, char**, llvm::StringRef, mlir::DialectRegistry&) (/data/szy/MLIR/llvm-project/install/bin/mlir-opt+0x41bd9de)
#24 0x00005651a0663337 main (/data/szy/MLIR/llvm-project/install/bin/mlir-opt+0x119c337)
#25 0x00007fc8f1763083 __libc_start_main /build/glibc-LcI20x/glibc-2.31/csu/../csu/libc-start.c:342:3
#26 0x00005651a0662e9e _start (/data/szy/MLIR/llvm-project/install/bin/mlir-opt+0x119be9e)
```
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs