-
Notifications
You must be signed in to change notification settings - Fork 56
Description
BufferViewFlowAnalysis.cpp:90: auto mlir::BufferViewFlowAnalysis::build(mlir::Operation *)::(anonymous class)::operator()(mlir::RegionBranchOpInterface) const: Assertion `entrySuccessor.getSuccessor() && "Invalid entry region without an attached successor region"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0. Program arguments: scalehls-opt test_trmm.mlir -debug-only=scalehls "-scalehls-dse-pipeline=top-func=test_trmm target-spec=../config.json"
#0 0x0000558905dd6efa llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /home/mehank/scalehls/scalehls/polygeist/llvm-project/llvm/lib/Support/Unix/Signals.inc:569:11
#1 0x0000558905dd70ab PrintStackTraceSignalHandler(void*) /home/mehank/scalehls/scalehls/polygeist/llvm-project/llvm/lib/Support/Unix/Signals.inc:636:1
#2 0x0000558905dd56f6 llvm::sys::RunSignalHandlers() /home/mehank/scalehls/scalehls/polygeist/llvm-project/llvm/lib/Support/Signals.cpp:104:5
#3 0x0000558905dd77d5 SignalHandler(int) /home/mehank/scalehls/scalehls/polygeist/llvm-project/llvm/lib/Support/Unix/Signals.inc:407:1
#4 0x00007f436c9ca520 (/lib/x86_64-linux-gnu/libc.so.6+0x42520)
#5 0x00007f436ca1e9fc pthread_kill (/lib/x86_64-linux-gnu/libc.so.6+0x969fc)
#6 0x00007f436c9ca476 gsignal (/lib/x86_64-linux-gnu/libc.so.6+0x42476)
#7 0x00007f436c9b07f3 abort (/lib/x86_64-linux-gnu/libc.so.6+0x287f3)
#8 0x00007f436c9b071b (/lib/x86_64-linux-gnu/libc.so.6+0x2871b)
#9 0x00007f436c9c1e96 (/lib/x86_64-linux-gnu/libc.so.6+0x39e96)
#10 0x0000558902a65434 mlir::BufferViewFlowAnalysis::build(mlir::Operation*)::$_2::operator()(mlir::RegionBranchOpInterface) const /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/Dialect/Bufferization/Transforms/BufferViewFlowAnalysis.cpp:0:7
#11 0x0000558902a65343 std::enable_if<!llvm::is_one_of<mlir::RegionBranchOpInterface, mlir::Operation*, mlir::Region*, mlir::Block*>::value && std::is_same<void, void>::value, void>::type mlir::detail::walk<(mlir::WalkOrder)1, mlir::BufferViewFlowAnalysis::build(mlir::Operation*)::$_2, mlir::RegionBranchOpInterface, void>(mlir::Operation*, mlir::BufferViewFlowAnalysis::build(mlir::Operation*)::$_2&&)::'lambda'(mlir::Operation*)::operator()(mlir::Operation*) const /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/include/mlir/IR/Visitors.h:196:3
#12 0x0000558902a652cd void llvm::function_ref<void (mlir::Operation*)>::callback_fn<std::enable_if<!llvm::is_one_of<mlir::RegionBranchOpInterface, mlir::Operation*, mlir::Region*, mlir::Block*>::value && std::is_same<void, void>::value, void>::type mlir::detail::walk<(mlir::WalkOrder)1, mlir::BufferViewFlowAnalysis::build(mlir::Operation*)::$_2, mlir::RegionBranchOpInterface, void>(mlir::Operation*, mlir::BufferViewFlowAnalysis::build(mlir::Operation*)::$_2&&)::'lambda'(mlir::Operation*)>(long, mlir::Operation*) /home/mehank/scalehls/scalehls/polygeist/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:45:5
#13 0x00005589058918bc llvm::function_ref<void (mlir::Operation*)>::operator()(mlir::Operation*) const /home/mehank/scalehls/scalehls/polygeist/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:68:5
#14 0x0000558905c2ea81 mlir::detail::walk(mlir::Operation*, llvm::function_ref<void (mlir::Operation*)>, mlir::WalkOrder) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/IR/Visitors.cpp:71:1
#15 0x0000558905c2ea30 mlir::detail::walk(mlir::Operation*, llvm::function_ref<void (mlir::Operation*)>, mlir::WalkOrder) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/IR/Visitors.cpp:64:27
#16 0x0000558905c2ea30 mlir::detail::walk(mlir::Operation*, llvm::function_ref<void (mlir::Operation*)>, mlir::WalkOrder) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/IR/Visitors.cpp:64:27
#17 0x0000558905c2ea30 mlir::detail::walk(mlir::Operation*, llvm::function_ref<void (mlir::Operation*)>, mlir::WalkOrder) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/IR/Visitors.cpp:64:27
#18 0x0000558902a6525a std::enable_if<!llvm::is_one_of<mlir::RegionBranchOpInterface, mlir::Operation*, mlir::Region*, mlir::Block*>::value && std::is_same<void, void>::value, void>::type mlir::detail::walk<(mlir::WalkOrder)1, mlir::BufferViewFlowAnalysis::build(mlir::Operation*)::$_2, mlir::RegionBranchOpInterface, void>(mlir::Operation*, mlir::BufferViewFlowAnalysis::build(mlir::Operation*)::$_2&&) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/include/mlir/IR/Visitors.h:197:3
#19 0x0000558902a64c0d std::enable_if<llvm::function_traits<std::decaymlir::BufferViewFlowAnalysis::build(mlir::Operation*)::$_2::type>::num_args == 1, void>::type mlir::Operation::walk<(mlir::WalkOrder)1, mlir::BufferViewFlowAnalysis::build(mlir::Operation*)::$_2, void>(mlir::BufferViewFlowAnalysis::build(mlir::Operation*)::$_2&&) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/include/mlir/IR/Operation.h:575:5
#20 0x0000558902a648e3 mlir::BufferViewFlowAnalysis::build(mlir::Operation*) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/Dialect/Bufferization/Transforms/BufferViewFlowAnalysis.cpp:125:3
#21 0x0000558902a6487c mlir::BufferViewFlowAnalysis::BufferViewFlowAnalysis(mlir::Operation*) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/Dialect/Bufferization/Transforms/BufferViewFlowAnalysis.cpp:19:76
#22 0x0000558902a61c31 mlir::bufferization::BufferPlacementTransformationBase::BufferPlacementTransformationBase(mlir::Operation*) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/Dialect/Bufferization/Transforms/BufferUtils.cpp:96:7
#23 0x0000558902a56b21 (anonymous namespace)::BufferAllocationHoisting<(anonymous namespace)::BufferAllocationLoopHoistingState>::BufferAllocationHoisting(mlir::Operation*) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/Dialect/Bufferization/Transforms/BufferOptimizations.cpp:136:9
#24 0x0000558902a569ca (anonymous namespace)::BufferLoopHoistingPass::runOnOperation() /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/Dialect/Bufferization/Transforms/BufferOptimizations.cpp:395:15
#25 0x000055890590335a mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/Pass/Pass.cpp:462:21
#26 0x0000558905903954 mlir::detail::OpToOpPassAdaptor::runPipeline(mlir::OpPassManager&, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int, mlir::PassInstrumentor*, mlir::PassInstrumentation::PipelineParentInfo const*) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/Pass/Pass.cpp:525:16
#27 0x0000558905908e08 mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::$_14::operator()(mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo&) const /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/Pass/Pass.cpp:745:36
#28 0x0000558905908a79 mlir::LogicalResult mlir::failableParallelForEach<__gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocatormlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>, mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::$_14&>(mlir::MLIRContext*, __gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocatormlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>, __gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocatormlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>, mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::$_14&) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/include/mlir/IR/Threading.h:46:18
#29 0x0000558905904c33 mlir::LogicalResult mlir::failableParallelForEach<std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocatormlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>&, mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::$_14&>(mlir::MLIRContext*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocatormlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>&, mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::$_14&) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/include/mlir/IR/Threading.h:92:10
#30 0x00005589059044d6 mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/Pass/Pass.cpp:755:14
#31 0x0000558905903607 mlir::detail::OpToOpPassAdaptor::runOnOperation(bool) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/Pass/Pass.cpp:646:5
#32 0x000055890590334b mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/Pass/Pass.cpp:459:5
#33 0x0000558905903954 mlir::detail::OpToOpPassAdaptor::runPipeline(mlir::OpPassManager&, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int, mlir::PassInstrumentor*, mlir::PassInstrumentation::PipelineParentInfo const*) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/Pass/Pass.cpp:525:16
#34 0x000055890590521c mlir::PassManager::runPasses(mlir::Operation*, mlir::AnalysisManager) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/Pass/Pass.cpp:828:10
#35 0x000055890590513c mlir::PassManager::run(mlir::Operation*) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/Pass/Pass.cpp:808:60
#36 0x0000558904b6b8b2 performActions(llvm::raw_ostream&, bool, bool, llvm::SourceMgr&, mlir::MLIRContext*, llvm::function_ref<mlir::LogicalResult (mlir::PassManager&)>, bool, bool) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/Tools/mlir-opt/MlirOptMain.cpp:91:17
#37 0x0000558904b6b519 processBuffer(llvm::raw_ostream&, std::unique_ptr<llvm::MemoryBuffer, std::default_deletellvm::MemoryBuffer>, bool, bool, bool, bool, bool, bool, llvm::function_ref<mlir::LogicalResult (mlir::PassManager&)>, mlir::DialectRegistry&, llvm::ThreadPool*) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/Tools/mlir-opt/MlirOptMain.cpp:139:12
#38 0x0000558904b6b2f8 mlir::MlirOptMain(llvm::raw_ostream&, std::unique_ptr<llvm::MemoryBuffer, std::default_deletellvm::MemoryBuffer>, llvm::function_ref<mlir::LogicalResult (mlir::PassManager&)>, mlir::DialectRegistry&, bool, bool, bool, bool, bool, bool, bool)::$_0::operator()(std::unique_ptr<llvm::MemoryBuffer, std::default_deletellvm::MemoryBuffer>, llvm::raw_ostream&) const /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/Tools/mlir-opt/MlirOptMain.cpp:181:12
#39 0x0000558904b6b1ed mlir::LogicalResult llvm::function_ref<mlir::LogicalResult (std::unique_ptr<llvm::MemoryBuffer, std::default_deletellvm::MemoryBuffer>, llvm::raw_ostream&)>::callback_fn<mlir::MlirOptMain(llvm::raw_ostream&, std::unique_ptr<llvm::MemoryBuffer, std::default_deletellvm::MemoryBuffer>, llvm::function_ref<mlir::LogicalResult (mlir::PassManager&)>, mlir::DialectRegistry&, bool, bool, bool, bool, bool, bool, bool)::$_0>(long, std::unique_ptr<llvm::MemoryBuffer, std::default_deletellvm::MemoryBuffer>, llvm::raw_ostream&) /home/mehank/scalehls/scalehls/polygeist/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:45:12
#40 0x0000558905c53259 llvm::function_ref<mlir::LogicalResult (std::unique_ptr<llvm::MemoryBuffer, std::default_deletellvm::MemoryBuffer>, llvm::raw_ostream&)>::operator()(std::unique_ptr<llvm::MemoryBuffer, std::default_deletellvm::MemoryBuffer>, llvm::raw_ostream&) const /home/mehank/scalehls/scalehls/polygeist/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:68:12
#41 0x0000558905c52835 mlir::splitAndProcessBuffer(std::unique_ptr<llvm::MemoryBuffer, std::default_deletellvm::MemoryBuffer>, llvm::function_ref<mlir::LogicalResult (std::unique_ptr<llvm::MemoryBuffer, std::default_deletellvm::MemoryBuffer>, llvm::raw_ostream&)>, llvm::raw_ostream&, bool, bool) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/Support/ToolUtilities.cpp:28:12
#42 0x0000558904b6a253 mlir::MlirOptMain(llvm::raw_ostream&, std::unique_ptr<llvm::MemoryBuffer, std::default_deletellvm::MemoryBuffer>, llvm::function_ref<mlir::LogicalResult (mlir::PassManager&)>, mlir::DialectRegistry&, bool, bool, bool, bool, bool, bool, bool) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/Tools/mlir-opt/MlirOptMain.cpp:186:10
#43 0x0000558904b6a3ef mlir::MlirOptMain(llvm::raw_ostream&, std::unique_ptr<llvm::MemoryBuffer, std::default_deletellvm::MemoryBuffer>, mlir::PassPipelineCLParser const&, mlir::DialectRegistry&, bool, bool, bool, bool, bool, bool, bool, bool) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/Tools/mlir-opt/MlirOptMain.cpp:209:10
#44 0x0000558904b6b007 mlir::MlirOptMain(int, char**, llvm::StringRef, mlir::DialectRegistry&, bool) /home/mehank/scalehls/scalehls/polygeist/llvm-project/mlir/lib/Tools/mlir-opt/MlirOptMain.cpp:306:14
#45 0x000055890259610c main /home/mehank/scalehls/scalehls/tools/scalehls-opt/scalehls-opt.cpp:16:23
#46 0x00007f436c9b1d90 (/lib/x86_64-linux-gnu/libc.so.6+0x29d90)
#47 0x00007f436c9b1e40 __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x29e40)
#48 0x0000558902595fd5 _start (/home/mehank/scalehls/scalehls/build/bin/scalehls-opt+0x1ebbfd5)