Open Quuxplusone opened 4 years ago
test_nested_taskloop-307079.cpp
Created attachment 23893 Preprocessed sources of the reproducer I am trying to compile a simple reproducer for another issue that contains a taskloop construct inside an omp task construct. Clang (llvmorg-12-init-4019- g2501e911a5) aborts with the error below. I am attaching the preprocessed sources, compiled with: $ clang++ -O2 -fopenmp test_nested_taskloop.cc -o test_nested_taskloop.cc The error (some paths replaced by me): PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash backtrace, preprocessed source, and associated run script. Stack dump: 0. Program arguments: $HOME/opt-hawk/clang-trunk/bin/clang-12 -cc1 -triple x86_64-unknown-linux-gnu -emit-obj --mrelax-relocations -disable-free -disable- llvm-verifier -discard-value-names -main-file-name test_nested_taskloop.cc - mrelocation-model static -mframe-pointer=none -fmath-errno -fno-rounding-math - mconstructor-aliases -munwind-tables -target-cpu x86-64 -fno-split-dwarf- inlining -debugger-tuning=gdb -resource-dir $HOME/opt-hawk/clang- trunk/lib/clang/12.0.0 -I/opt/hpe/hpc/mpt/mpt-2.23/include -I/opt/hlrs/non- spack/compiler/gcc/9.2.0/include -c-isystem /opt/hpe/hpc/mpt/mpt-2.23/include - c-isystem /opt/hlrs/non-spack/compiler/gcc/9.2.0/include -cxx-isystem /opt/hpe/hpc/mpt/mpt-2.23/include -cxx-isystem /opt/hlrs/non- spack/compiler/gcc/9.2.0/include/c++/9.2.0 -internal-isystem /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8 -internal-isystem /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/x86_64-redhat- linux -internal-isystem /usr/lib/gcc/x86_64-redhat- linux/8/../../../../include/c++/8/backward -internal-isystem /usr/local/include -internal-isystem $HOME/opt-hawk/clang-trunk/lib/clang/12.0.0/include -internal- externc-isystem /include -internal-externc-isystem /usr/include -O2 - fdeprecated-macro -fdebug-compilation-dir /zhome/academic/HLRS/hlrs/hpcjschu/src/test -ferror-limit 19 -fopenmp -fopenmp- cuda-parallel-target-regions -fgnuc-version=4.2.1 -fcxx-exceptions -fexceptions -fcolor-diagnostics -vectorize-loops -vectorize-slp -faddrsig -o /tmp/test_nested_taskloop-c8fc09.o -x c++ test_nested_taskloop.cc 1. <eof> parser at end of file 2. Per-file LLVM IR generation 3. test_nested_taskloop.cc:4:5: Generating code for declaration 'foo' 4. test_nested_taskloop.cc:7:31: LLVM IR generation of compound statement ('{}') 5. test_nested_taskloop.cc:9:1: LLVM IR generation of compound statement ('{}') #0 0x000000000285c52a llvm::sys::PrintStackTrace(llvm::raw_ostream&) $HOME/src/clang/llvm-project/llvm/lib/Support/Unix/Signals.inc:567:3 #1 0x000000000285a594 llvm::sys::RunSignalHandlers() $HOME/src/clang/llvm-project/llvm/lib/Support/Signals.cpp:70:20 #2 0x000000000285ae75 SignalHandler(int) $HOME/src/clang/llvm-project/llvm/lib/Support/Unix/Signals.inc:405:1 #3 0x00007f2a34536dc0 __restore_rt (/lib64/libpthread.so.0+0x12dc0) #4 0x0000000002dc56b5 bool llvm::PointerUnion<clang::DeclContext*, clang::Decl::MultipleDC*>::is<clang::DeclContext*>() const $HOME/src/clang/llvm-project/llvm/include/llvm/ADT/PointerUnion.h:181:31 #5 0x0000000002dc56b5 clang::Decl::isInSemaDC() const $HOME/src/clang/llvm-project/clang/include/clang/AST/DeclBase.h:270:60 #6 0x0000000002dc56b5 clang::Decl::getDeclContext() $HOME/src/clang/llvm-project/clang/include/clang/AST/DeclBase.h:440:19 #7 0x0000000002dc56b5 clang::Decl::getDeclContext() const $HOME/src/clang/llvm-project/clang/include/clang/AST/DeclBase.h:445:51 #8 0x0000000002dc56b5 clang::FieldDecl::getParent() const $HOME/src/clang/llvm-project/clang/include/clang/AST/Decl.h:2954:32 #9 0x0000000002dc56b5 EmitCapturedFieldLValue(clang::CodeGen::CodeGenFunction&, clang::FieldDecl const*, llvm::Value*) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGExpr.cpp:2549:67 #10 0x0000000002dd0823 clang::CodeGen::CodeGenFunction::getContext() const $HOME/src/clang/llvm-project/clang/lib/CodeGen/CodeGenFunction.h:1842:58 #11 0x0000000002dd0823 clang::CodeGen::CodeGenFunction::EmitDeclRefLValue(clang::DeclRefExpr const*) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGExpr.cpp:2707:59 #12 0x0000000002dcf08c clang::CodeGen::CodeGenFunction::EmitLValue(clang::Expr const*) (.localalias) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGExpr.cpp:1309:50 #13 0x0000000002dd4213 clang::CodeGen::CodeGenFunction::EmitCheckedLValue(clang::Expr const*, clang::CodeGen::CodeGenFunction::TypeCheckKind) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGExpr.cpp:1247:48 #14 0x0000000002e1246e EmitLoadOfLValue $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGExprScalar.cpp:252:40 #15 0x0000000002e1246e (anonymous namespace)::ScalarExprEmitter::EmitLoadOfLValue(clang::Expr const*) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGExprScalar.cpp:294:32 #16 0x0000000002e11d2c VisitDeclRefExpr $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGExprScalar.cpp:499:28 #17 0x0000000002e11d2c Visit $HOME/src/clang/llvm- project/build/tools/clang/include/clang/AST/StmtNodes.inc:979:1 #18 0x0000000002e11d2c (anonymous namespace)::ScalarExprEmitter::Visit(clang::Expr*) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGExprScalar.cpp:409:57 #19 0x0000000002e17228 (anonymous namespace)::ScalarExprEmitter::VisitCastExpr(clang::CastExpr*) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGExprScalar.cpp:2127:17 #20 0x0000000002e0fce6 VisitImplicitCastExpr $HOME/src/clang/llvm- project/build/tools/clang/include/clang/AST/StmtNodes.inc:919:1 #21 0x0000000002e0fce6 Visit $HOME/src/clang/llvm- project/build/tools/clang/include/clang/AST/StmtNodes.inc:919:1 #22 0x0000000002e0fce6 (anonymous namespace)::ScalarExprEmitter::Visit(clang::Expr*) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGExprScalar.cpp:409:57 #23 0x0000000002e120d3 clang::CodeGen::CodeGenFunction::EmitScalarExpr(clang::Expr const*, bool) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGExprScalar.cpp:4592:1 #24 0x0000000002d9a0a7 clang::CodeGen::CodeGenFunction::EmitScalarInit(clang::Expr const*, clang::ValueDecl const*, clang::CodeGen::LValue, bool) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGDecl.cpp:759:40 #25 0x0000000002d9a75c clang::CodeGen::CodeGenFunction::EmitExprAsInit(clang::Expr const*, clang::ValueDecl const*, clang::CodeGen::LValue, bool) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGDecl.cpp:1907:5 #26 0x0000000002da2a90 clang::CodeGen::CodeGenFunction::EmitAutoVarInit(clang::CodeGen::CodeGenFunction::AutoVarEmission const&) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGDecl.cpp:1867:26 #27 0x0000000002da40c6 clang::CodeGen::CodeGenFunction::EmitAutoVarDecl(clang::VarDecl const&) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGDecl.cpp:1293:22 #28 0x0000000002b66fdf (anonymous namespace)::OMPLoopScope::emitPreInitStmt(clang::CodeGen::CodeGenFunction&, clang::OMPLoopDirective const&) (.isra.0) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGStmtOpenMP.cpp:180:44 #29 0x0000000002b67524 std::__uniq_ptr_impl<clang::CodeGen::CGOpenMPRuntime, std::default_delete<clang::CodeGen::CGOpenMPRuntime> >::_M_ptr() const /opt/hlrs/non-spack/compiler/gcc/9.2.0/include/c++/9.2.0/bits/unique_ptr.h:154:58 #30 0x0000000002b67524 std::unique_ptr<clang::CodeGen::CGOpenMPRuntime, std::default_delete<clang::CodeGen::CGOpenMPRuntime> >::get() const /opt/hlrs/non-spack/compiler/gcc/9.2.0/include/c++/9.2.0/bits/unique_ptr.h:353:28 #31 0x0000000002b67524 std::unique_ptr<clang::CodeGen::CGOpenMPRuntime, std::default_delete<clang::CodeGen::CGOpenMPRuntime> >::operator*() const /opt/hlrs/non-spack/compiler/gcc/9.2.0/include/c++/9.2.0/bits/unique_ptr.h:339:9 #32 0x0000000002b67524 clang::CodeGen::CodeGenModule::getOpenMPRuntime() $HOME/src/clang/llvm-project/clang/lib/CodeGen/CodeGenModule.h:592:13 #33 0x0000000002b67524 operator() $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGStmtOpenMP.cpp:6504:32 #34 0x0000000002b67524 void clang::CodeGen::RegionCodeGenTy::CallbackFn<clang::CodeGen::CodeGenFunction::EmitOMPTaskLoopBasedDirective(clang::OMPLoopDirective const&)::'lambda0'(clang::CodeGen::CodeGenFunction&, llvm::Function*, clang::CodeGen::OMPTaskDataTy const&)::operator()(clang::CodeGen::CodeGenFunction&, llvm::Function*, clang::CodeGen::OMPTaskDataTy const&) const::'lambda'(clang::CodeGen::CodeGenFunction&, clang::CodeGen::PrePostActionTy&)>(long, clang::CodeGen::CodeGenFunction&, clang::CodeGen::PrePostActionTy&) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGOpenMPRuntime.h:80:52 #35 0x0000000002e96d8b clang::CodeGen::PrePostActionTy::~PrePostActionTy() $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGOpenMPRuntime.h:65:11 #36 0x0000000002e96d8b clang::CodeGen::RegionCodeGenTy::operator()(clang::CodeGen::CodeGenFunction&) const $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGOpenMPRuntime.cpp:593:21 #37 0x0000000002e96fbf clang::CodeGen::EHScopeStack::popTerminate() $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGCleanup.h:571:3 #38 0x0000000002e96fbf EmitBody $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGOpenMPRuntime.cpp:1041:27 #39 0x0000000002e96fbf (anonymous namespace)::CGOpenMPRegionInfo::EmitBody(clang::CodeGen::CodeGenFunction&, clang::Stmt const*) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGOpenMPRuntime.cpp:1031:6 #40 0x0000000002e904fa ~InlinedOpenMPRegionRAII $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGOpenMPRuntime.cpp:434:73 #41 0x0000000002e904fa clang::CodeGen::CGOpenMPRuntime::emitInlinedDirective(clang::CodeGen::CodeGenFunction&, llvm::omp::Directive, clang::CodeGen::RegionCodeGenTy const&, bool) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGOpenMPRuntime.cpp:6180:68 #42 0x0000000002e904fa clang::CodeGen::CGOpenMPRuntime::emitInlinedDirective(clang::CodeGen::CodeGenFunction&, llvm::omp::Directive, clang::CodeGen::RegionCodeGenTy const&, bool) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGOpenMPRuntime.cpp:6174:6 #43 0x0000000002b3e0a3 void llvm::function_ref<void (clang::CodeGen::CodeGenFunction&, llvm::Function*, clang::CodeGen::OMPTaskDataTy const&)>::callback_fn<clang::CodeGen::CodeGenFunction::EmitOMPTaskLoopBasedDirective(clang::OMPLoopDirective const&)::'lambda0'(clang::CodeGen::CodeGenFunction&, llvm::Function*, clang::CodeGen::OMPTaskDataTy const&)>(long, clang::CodeGen::CodeGenFunction&, llvm::Function*, clang::CodeGen::OMPTaskDataTy const&) $HOME/src/clang/llvm- project/llvm/include/llvm/ADT/STLExtras.h:187:3 #44 0x0000000002b55056 ~OMPLexicalScope $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGStmtOpenMP.cpp:41:7 #45 0x0000000002b55056 clang::CodeGen::CodeGenFunction::EmitOMPTaskBasedDirective(clang::OMPExecutableDirective const&, llvm::omp::Directive, clang::CodeGen::RegionCodeGenTy const&, llvm::function_ref<void (clang::CodeGen::CodeGenFunction&, llvm::Function*, clang::CodeGen::OMPTaskDataTy const&)> const&, clang::CodeGen::OMPTaskDataTy&) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGStmtOpenMP.cpp:4113:73 #46 0x0000000002b565a2 void clang::CodeGen::RegionCodeGenTy::CallbackFn<clang::CodeGen::CodeGenFunction::EmitOMPTaskLoopBasedDirective(clang::OMPLoopDirective const&)::'lambda1'(clang::CodeGen::CodeGenFunction&, clang::CodeGen::PrePostActionTy&)>(long, clang::CodeGen::CodeGenFunction&, clang::CodeGen::PrePostActionTy&) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGOpenMPRuntime.h:81:3 #47 0x0000000002e96d36 clang::CodeGen::CodeGenFunction::RunCleanupsScope::ForceCleanup(std::initializer_list<llvm::Value**>) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CodeGenFunction.h:808:28 #48 0x0000000002e96d36 clang::CodeGen::CodeGenFunction::RunCleanupsScope::~RunCleanupsScope() $HOME/src/clang/llvm-project/clang/lib/CodeGen/CodeGenFunction.h:792:21 #49 0x0000000002e96d36 clang::CodeGen::RegionCodeGenTy::operator()(clang::CodeGen::CodeGenFunction&) const $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGOpenMPRuntime.cpp:588:46 #50 0x0000000002e96fbf clang::CodeGen::EHScopeStack::popTerminate() $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGCleanup.h:571:3 #51 0x0000000002e96fbf EmitBody $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGOpenMPRuntime.cpp:1041:27 #52 0x0000000002e96fbf (anonymous namespace)::CGOpenMPRegionInfo::EmitBody(clang::CodeGen::CodeGenFunction&, clang::Stmt const*) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGOpenMPRuntime.cpp:1031:6 #53 0x0000000002e904fa ~InlinedOpenMPRegionRAII $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGOpenMPRuntime.cpp:434:73 #54 0x0000000002e904fa clang::CodeGen::CGOpenMPRuntime::emitInlinedDirective(clang::CodeGen::CodeGenFunction&, llvm::omp::Directive, clang::CodeGen::RegionCodeGenTy const&, bool) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGOpenMPRuntime.cpp:6180:68 #55 0x0000000002e904fa clang::CodeGen::CGOpenMPRuntime::emitInlinedDirective(clang::CodeGen::CodeGenFunction&, llvm::omp::Directive, clang::CodeGen::RegionCodeGenTy const&, bool) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGOpenMPRuntime.cpp:6174:6 #56 0x0000000002eb7894 clang::CodeGen::CGOpenMPRuntime::emitTaskgroupRegion(clang::CodeGen::CodeGenFunction&, clang::CodeGen::RegionCodeGenTy const&, clang::SourceLocation) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGOpenMPRuntime.cpp:2295:1 #57 0x0000000002b569a0 clang::CodeGen::CodeGenFunction::EmitOMPTaskLoopBasedDirective(clang::OMPLoopDirective const&) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGStmtOpenMP.cpp:6384:17 #58 0x0000000002b56b0b clang::CodeGen::CodeGenFunction::EmitOMPTaskLoopDirective(clang::OMPTaskLoopDirective const&) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGStmtOpenMP.cpp:6528:68 #59 0x0000000002b3849e clang::CodeGen::CodeGenFunction::EmitStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGStmt.cpp:293:5 #60 0x0000000002b3890a clang::CodeGen::CodeGenFunction::EmitCompoundStmtWithoutScope(clang::CompoundStmt const&, bool, clang::CodeGen::AggValueSlot) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGStmt.cpp:418:31 #61 0x0000000002b38bd9 clang::CodeGen::CodeGenFunction::LexicalScope::~LexicalScope() $HOME/src/clang/llvm-project/clang/lib/CodeGen/CodeGenFunction.h:845:29 #62 0x0000000002b38bd9 clang::CodeGen::CodeGenFunction::EmitCompoundStmt(clang::CompoundStmt const&, bool, clang::CodeGen::AggValueSlot) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGStmt.cpp:402:47 #63 0x0000000002b3cbfb clang::CodeGen::CodeGenFunction::EmitSimpleStmt(clang::Stmt const*) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGStmt.cpp:377:75 #64 0x0000000002b3829c clang::CodeGen::CodeGenFunction::EmitStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGStmt.cpp:53:3 #65 0x0000000002e96d8b clang::CodeGen::PrePostActionTy::~PrePostActionTy() $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGOpenMPRuntime.h:65:11 #66 0x0000000002e96d8b clang::CodeGen::RegionCodeGenTy::operator()(clang::CodeGen::CodeGenFunction&) const $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGOpenMPRuntime.cpp:593:21 #67 0x0000000002b5d4db clang::CodeGen::CodeGenFunction::EmitOMPTaskBasedDirective(clang::OMPExecutableDirective const&, llvm::omp::Directive, clang::CodeGen::RegionCodeGenTy const&, llvm::function_ref<void (clang::CodeGen::CodeGenFunction&, llvm::Function*, clang::CodeGen::OMPTaskDataTy const&)> const&, clang::CodeGen::OMPTaskDataTy&)::'lambda'(clang::CodeGen::CodeGenFunction&, clang::CodeGen::PrePostActionTy&)::operator()(clang::CodeGen::CodeGenFunction&, clang::CodeGen::PrePostActionTy&) const $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGStmtOpenMP.cpp:4104:77 #68 0x0000000002e96d36 clang::CodeGen::CodeGenFunction::RunCleanupsScope::ForceCleanup(std::initializer_list<llvm::Value**>) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CodeGenFunction.h:808:28 #69 0x0000000002e96d36 clang::CodeGen::CodeGenFunction::RunCleanupsScope::~RunCleanupsScope() $HOME/src/clang/llvm-project/clang/lib/CodeGen/CodeGenFunction.h:792:21 #70 0x0000000002e96d36 clang::CodeGen::RegionCodeGenTy::operator()(clang::CodeGen::CodeGenFunction&) const $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGOpenMPRuntime.cpp:588:46 #71 0x0000000002e96fbf clang::CodeGen::EHScopeStack::popTerminate() $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGCleanup.h:571:3 #72 0x0000000002e96fbf EmitBody $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGOpenMPRuntime.cpp:1041:27 #73 0x0000000002e96fbf (anonymous namespace)::CGOpenMPRegionInfo::EmitBody(clang::CodeGen::CodeGenFunction&, clang::Stmt const*) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGOpenMPRuntime.cpp:1031:6 #74 0x0000000002b374c6 clang::CodeGen::CodeGenFunction::GenerateCapturedStmtFunction(clang::CapturedStmt const&) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGStmt.cpp:2508:29 #75 0x0000000002ec553b clang::CodeGen::CGOpenMPRuntime::emitTaskOutlinedFunction(clang::OMPExecutableDirective const&, clang::VarDecl const*, clang::VarDecl const*, clang::VarDecl const*, llvm::omp::Directive, clang::CodeGen::RegionCodeGenTy const&, bool, unsigned int&) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGOpenMPRuntime.cpp:1331:57 #76 0x0000000002b55011 clang::CodeGen::CodeGenFunction::EmitOMPTaskBasedDirective(clang::OMPExecutableDirective const&, llvm::omp::Directive, clang::CodeGen::RegionCodeGenTy const&, llvm::function_ref<void (clang::CodeGen::CodeGenFunction&, llvm::Function*, clang::CodeGen::OMPTaskDataTy const&)> const&, clang::CodeGen::OMPTaskDataTy&) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGStmtOpenMP.cpp:4112:51 #77 0x0000000002b564fe clang::CodeGen::CodeGenFunction::EmitOMPTaskDirective(clang::OMPTaskDirective const&) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGStmtOpenMP.cpp:4301:68 #78 0x0000000002b38674 clang::CodeGen::CodeGenFunction::EmitStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGStmt.cpp:236:5 #79 0x0000000002b3890a clang::CodeGen::CodeGenFunction::EmitCompoundStmtWithoutScope(clang::CompoundStmt const&, bool, clang::CodeGen::AggValueSlot) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGStmt.cpp:418:31 #80 0x0000000002b38bd9 clang::CodeGen::CodeGenFunction::LexicalScope::~LexicalScope() $HOME/src/clang/llvm-project/clang/lib/CodeGen/CodeGenFunction.h:845:29 #81 0x0000000002b38bd9 clang::CodeGen::CodeGenFunction::EmitCompoundStmt(clang::CompoundStmt const&, bool, clang::CodeGen::AggValueSlot) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGStmt.cpp:402:47 #82 0x0000000002b3cbfb clang::CodeGen::CodeGenFunction::EmitSimpleStmt(clang::Stmt const*) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CGStmt.cpp:377:75 #83 0x0000000002b3829c clang::CodeGen::CodeGenFunction::EmitStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGStmt.cpp:53:3 #84 0x0000000002b3a8da clang::CodeGen::CodeGenFunction::RunCleanupsScope::ForceCleanup(std::initializer_list<llvm::Value**>) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CodeGenFunction.h:809:27 #85 0x0000000002b3a8da clang::CodeGen::CodeGenFunction::RunCleanupsScope::~RunCleanupsScope() $HOME/src/clang/llvm-project/clang/lib/CodeGen/CodeGenFunction.h:792:21 #86 0x0000000002b3a8da clang::CodeGen::CodeGenFunction::EmitForStmt(clang::ForStmt const&, llvm::ArrayRef<clang::Attr const*>) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGStmt.cpp:955:37 #87 0x0000000002b3884a clang::CodeGen::CodeGenFunction::EmitStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGStmt.cpp:146:75 #88 0x0000000002b3890a clang::CodeGen::CodeGenFunction::EmitCompoundStmtWithoutScope(clang::CompoundStmt const&, bool, clang::CodeGen::AggValueSlot) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CGStmt.cpp:418:31 #89 0x0000000002b891cf clang::CodeGen::CodeGenFunction::EmitFunctionBody(clang::Stmt const*) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CodeGenFunction.cpp:1147:36 #90 0x0000000002b93e75 clang::CodeGen::CodeGenFunction::getLangOpts() const $HOME/src/clang/llvm-project/clang/lib/CodeGen/CodeGenFunction.h:1855:67 #91 0x0000000002b93e75 clang::CodeGen::CodeGenFunction::GenerateCode(clang::GlobalDecl, llvm::Function*, clang::CodeGen::CGFunctionInfo const&) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CodeGenFunction.cpp:1322:19 #92 0x0000000002bd7cd9 clang::CodeGen::CodeGenModule::EmitGlobalFunctionDefinition(clang::GlobalDecl, llvm::GlobalValue*) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CodeGenModule.cpp:4558:3 #93 0x0000000002bd5505 clang::CodeGen::CodeGenModule::EmitGlobalDefinition(clang::GlobalDecl, llvm::GlobalValue*) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CodeGenModule.cpp:2918:47 #94 0x0000000002bdc516 clang::CodeGen::CodeGenModule::EmitDeferred() (.localalias) $HOME/src/clang/llvm- project/clang/lib/CodeGen/CodeGenModule.cpp:2241:34 #95 0x0000000002bdc5e7 clang::CodeGen::CodeGenModule::Release() $HOME/src/clang/llvm-project/clang/lib/CodeGen/CodeGenModule.cpp:406:31 #96 0x00000000036dceaa (anonymous namespace)::CodeGeneratorImpl::HandleTranslationUnit(clang::ASTContext&) $HOME/src/clang/llvm-project/clang/lib/CodeGen/ModuleBuilder.cpp:271:33 #97 0x00000000036dbea5 clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) $HOME/src/clang/llvm-project/clang/lib/CodeGen/CodeGenAction.cpp:285:9 #98 0x00000000042883d9 clang::ParseAST(clang::Sema&, bool, bool) $HOME/src/clang/llvm-project/clang/lib/Parse/ParseAST.cpp:171:34 #99 0x00000000030a43c9 clang::FrontendAction::Execute() $HOME/src/clang/llvm- project/clang/lib/Frontend/FrontendAction.cpp:950:21 #100 0x000000000305aefb llvm::Error::operator bool() $HOME/src/clang/llvm- project/llvm/include/llvm/Support/Error.h:236:22 #101 0x000000000305aefb clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) $HOME/src/clang/llvm-project/clang/lib/Frontend/CompilerInstance.cpp:984:42 #102 0x0000000003162168 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) $HOME/src/clang/llvm- project/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp:279:43 #103 0x00000000009f2025 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) $HOME/src/clang/llvm-project/clang/tools/driver/cc1_main.cpp:240:40 #104 0x00000000009efbea ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&) $HOME/src/clang/llvm-project/clang/tools/driver/driver.cpp:330:20 #105 0x000000000095172e main $HOME/src/clang/llvm- project/clang/tools/driver/driver.cpp:407:26 #106 0x00007f2a32fb2873 __libc_start_main (/lib64/libc.so.6+0x23873) #107 0x00000000009ef77e _start ($HOME/opt-hawk/clang-trunk/bin/clang- 12+0x9ef77e) clang-12: error: unable to execute command: Segmentation fault (core dumped) clang-12: error: clang frontend command failed due to signal (use -v to see invocation) clang version 12.0.0 Target: x86_64-unknown-linux-gnu Thread model: posix InstalledDir: $HOME/opt-hawk/clang-trunk/bin clang-12: note: diagnostic msg: ******************** PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT: Preprocessed source(s) and associated run script(s) are located at: clang-12: note: diagnostic msg: /tmp/test_nested_taskloop-307079.cpp clang-12: note: diagnostic msg: /tmp/test_nested_taskloop-307079.sh clang-12: note: diagnostic msg: ********************
Attached test_nested_taskloop-307079.cpp (285 bytes, text/x-c++src): Preprocessed sources of the reproducer
test_nested_taskloop-307079.cpp
(285 bytes, text/x-c++src)