Closed wheatman closed 5 years ago
I've tracked down this one to a buggy behavior arising from patterns with exception-handling code that only seem to appear with -O0 compilation. Running regressions now.
The latest version of the WIP-taskinfo branch seems to fix this issue.
The code can be found in https://github.com/wheatman/extended-csr/tree/old_stuff/extended-csr2
With the following code cilk_for (uint32_t i = 0; i < n; i++) { cilk_for (uint32_t j = 0; j < n; j++) { // find_value returns 0 if not found. uint32_t value = g->find_value(i, j); if (value != 0) { add_edge(i, j, value); } } }
The compiler crashes with the error at the bottom
If I change either of the cilk_for loops to normal for loops the error goes away
Note this is not an issue on master, but rather with WIP-taskinfo
Referring to a basic block in another function! invoke fastcc void @ZN3OFM7convertEP5Graph.outline.otd2(%class.Graph %0, i32 %41, %class.OFM %1, i32 %123) to label %146 unwind label %283, !dbg !29922 Referring to a basic block in another function! invoke fastcc void @ZN3OFM7convertEP5Graph.outline.otd2(%class.Graph %0, i32 %41, %class.OFM %1, i32 %123) to label %146 unwind label %283, !dbg !29922
0 0x000000000152cbda llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/efs/tools/tapir-6/build/bin/clang-6.0+0x152cbda)
1 0x000000000152ae2e llvm::sys::RunSignalHandlers() (/efs/tools/tapir-6/build/bin/clang-6.0+0x152ae2e)
2 0x000000000152af6a SignalHandler(int) (/efs/tools/tapir-6/build/bin/clang-6.0+0x152af6a)
3 0x00002ba6cd4e0330 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x10330)
4 0x00000000010afa7d llvm::BasicBlock::getTerminator() const (/efs/tools/tapir-6/build/bin/clang-6.0+0x10afa7d)
5 0x00000000010f9b1f llvm::DomTreeBuilder::SemiNCAInfo<llvm::DominatorTreeBase<llvm::BasicBlock, false> >::ChildrenGetter::Get(llvm::BasicBlock, llvm::DomTreeBuilder::SemiNCAInfo<llvm::DominatorTreeBase<llvm::BasicBlock, false> >::BatchUpdateInfo) (/efs/tools/tapir-6/build/bin/clang-6.0+0x10f9b1f)
6 0x0000000001101820 unsigned int llvm::DomTreeBuilder::SemiNCAInfo<llvm::DominatorTreeBase<llvm::BasicBlock, false> >::runDFS<false, bool ()(llvm::BasicBlock, llvm::BasicBlock)>(llvm::BasicBlock, unsigned int, bool ()(llvm::BasicBlock, llvm::BasicBlock*), unsigned int) [clone .constprop.412] (/efs/tools/tapir-6/build/bin/clang-6.0+0x1101820)
7 0x0000000001101aa2 llvm::DomTreeBuilder::SemiNCAInfo<llvm::DominatorTreeBase<llvm::BasicBlock, false> >::CalculateFromScratch(llvm::DominatorTreeBase<llvm::BasicBlock, false>&, llvm::DomTreeBuilder::SemiNCAInfo<llvm::DominatorTreeBase<llvm::BasicBlock, false> >::BatchUpdateInfo*) (/efs/tools/tapir-6/build/bin/clang-6.0+0x1101aa2)
8 0x0000000001101c81 llvm::DominatorTreeWrapperPass::runOnFunction(llvm::Function&) (/efs/tools/tapir-6/build/bin/clang-6.0+0x1101c81)
9 0x00000000011417da llvm::FPPassManager::runOnFunction(llvm::Function&) (/efs/tools/tapir-6/build/bin/clang-6.0+0x11417da)
10 0x0000000001141873 llvm::FPPassManager::runOnModule(llvm::Module&) (/efs/tools/tapir-6/build/bin/clang-6.0+0x1141873)
11 0x00000000011421c0 llvm::legacy::PassManagerImpl::run(llvm::Module&) (/efs/tools/tapir-6/build/bin/clang-6.0+0x11421c0)
12 0x00000000016c9961 (anonymous namespace)::EmitAssemblyHelper::EmitAssembly(clang::BackendAction, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete >) (/efs/tools/tapir-6/build/bin/clang-6.0+0x16c9961)
13 0x00000000016cb597 clang::EmitBackendOutput(clang::DiagnosticsEngine&, clang::HeaderSearchOptions const&, clang::CodeGenOptions const&, clang::TargetOptions const&, clang::LangOptions const&, llvm::DataLayout const&, llvm::Module*, clang::BackendAction, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete >) (/efs/tools/tapir-6/build/bin/clang-6.0+0x16cb597)
14 0x0000000001e587ab clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) (/efs/tools/tapir-6/build/bin/clang-6.0+0x1e587ab)
15 0x0000000002025542 clang::ParseAST(clang::Sema&, bool, bool) (/efs/tools/tapir-6/build/bin/clang-6.0+0x2025542)
16 0x0000000001e58014 clang::CodeGenAction::ExecuteAction() (/efs/tools/tapir-6/build/bin/clang-6.0+0x1e58014)
17 0x0000000001a5fbfe clang::FrontendAction::Execute() (/efs/tools/tapir-6/build/bin/clang-6.0+0x1a5fbfe)
18 0x0000000001a37d6d clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/efs/tools/tapir-6/build/bin/clang-6.0+0x1a37d6d)
19 0x0000000001aeb2c4 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/efs/tools/tapir-6/build/bin/clang-6.0+0x1aeb2c4)
20 0x0000000000a75c98 cc1_main(llvm::ArrayRef<char const>, char const, void*) (/efs/tools/tapir-6/build/bin/clang-6.0+0xa75c98)
21 0x0000000000a12401 main (/efs/tools/tapir-6/build/bin/clang-6.0+0xa12401)
22 0x00002ba6ce3d5f45 __libc_start_main /build/eglibc-oGUzwX/eglibc-2.19/csu/libc-start.c:321:0
23 0x0000000000a71357 _start (/efs/tools/tapir-6/build/bin/clang-6.0+0xa71357)
Stack dump:
PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT: Preprocessed source(s) and associated run script(s) are located at: clang-6.0: note: diagnostic msg: /tmp/test2-7a40dd.cpp clang-6.0: note: diagnostic msg: /tmp/test2-7a40dd.sh clang-6.0: note: diagnostic msg:
make: *** [run] Error 254 test2-7a40dd.sh.txt test2-7a40dd.cpp.txt