Skip to content

Flang OpenMP: Compiler crashes with "attempting to map a value that is already mapped" in nested target egion with reductions #148709

Open
@scamp-nvidia

Description

@scamp-nvidia

The following test crashes during compilation if OpenMP is turned on. It works with nvfortran and gfortran.

test.f90:

module generic_openmp_module
  implicit none
  integer, parameter :: rk = kind(1.0d0)
  integer, parameter :: nt = 10, nrow = 10, nx = 10, ny = 10, nz = 10
contains
  subroutine run_openmp_kernel
    implicit none
    integer :: i, j, k, t, row
    real(rk), allocatable :: arr1(:,:), arr2(:,:)
    real(rk) :: result
    allocate(arr1(nt, nrow), arr2(nt, nrow))
    arr1 = 0.0_rk
    arr2 = 0.0_rk
    result = 0.0_rk
!$omp target data map(from:arr1, arr2)
      t = 1
!$omp target map(tofrom:result)
!$omp teams reduction(+:result)
      !$omp distribute parallel do simd
      do row = 1, nrow
        arr1(t,row) = 1.0_rk
        arr2(t,row) = 2.0_rk
      end do
      !$omp distribute parallel do collapse(2) reduction(+:result)
      do k = 1, nz
        do j = 1, ny
          do i = 1, nx
            result = result + 1.0_rk
          end do
        end do
      end do
!$omp end teams
!$omp end target
!$omp end target data
    deallocate(arr1, arr2)
  end subroutine run_openmp_kernel
end module generic_openmp_module

Crash logs:

scamp@dev-sky5:/local/home/scamp/555.pseismic_0$ flang --version
flang version 21.0.0git (https://github.com/llvm/llvm-project b54cfa46a7eba293b6f2086856a36cc553444939)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /proj/nv/llvm/Linux_x86_64/llvm-5551/bin
Build config: +assertions
scamp@dev-sky5:/local/home/scamp/555.pseismic_0$ flang test.f90 -fopenmp -fopenmp-version=50 -c
warning: OpenMP support for version 50 in flang is still incomplete
flang: /proj/build/llvm/Linux_x86_64/mlir/include/mlir/Target/LLVMIR/ModuleTranslation.h:88: llvm::Value*& mlir::LLVM::ModuleTranslation::mapValue(mlir::Value): Assertion `llvm == nullptr && "attempting to map a value that is already mapped"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.      Program arguments: /proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang -fc1 -triple x86_64-unknown-linux-gnu -emit-obj -fcolor-diagnostics -mrelocation-model pic -pic-level 2 -pic-is-pie -target-cpu x86-64 -fopenmp -fopenmp-version=50 -resource-dir /proj/nv/llvm/Linux_x86_64/llvm-5551/lib/clang/21 -mframe-pointer=all -o test.o -x f95 test.f90
 #0 0x0000000004e494b8 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x4e494b8)
 #1 0x0000000004e46354 SignalHandler(int, siginfo_t*, void*) Signals.cpp:0:0
 #2 0x0000105156245320 (/lib/x86_64-linux-gnu/libc.so.6+0x45320)
 #3 0x000010515629eb1c __pthread_kill_implementation ./nptl/pthread_kill.c:44:76
 #4 0x000010515629eb1c __pthread_kill_internal ./nptl/pthread_kill.c:78:10
 #5 0x000010515629eb1c pthread_kill ./nptl/pthread_kill.c:89:10
 #6 0x000010515624526e raise ./signal/../sysdeps/posix/raise.c:27:6
 #7 0x00001051562288ff abort ./stdlib/abort.c:81:7
 #8 0x000010515622881b _nl_load_domain ./intl/loadmsgcat.c:1177:9
 #9 0x000010515623b507 (/lib/x86_64-linux-gnu/libc.so.6+0x3b507)
#10 0x0000000006db64ac (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x6db64ac)
#11 0x0000000006dbb72a llvm::LogicalResult allocReductionVars<mlir::omp::TeamsOp>(mlir::omp::TeamsOp, llvm::ArrayRef<mlir::BlockArgument>, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&, llvm::IRBuilderBase::InsertPoint const&, llvm::SmallVectorImpl<mlir::omp::DeclareReductionOp>&, llvm::SmallVectorImpl<llvm::Value*>&, llvm::DenseMap<mlir::Value, llvm::Value*, llvm::DenseMapInfo<mlir::Value, void>, llvm::detail::DenseMapPair<mlir::Value, llvm::Value*>>&, llvm::SmallVectorImpl<(anonymous namespace)::DeferredStore>&, llvm::ArrayRef<bool>) (.constprop.0) OpenMPToLLVMIRTranslation.cpp:0:0
#12 0x0000000006dbbb05 llvm::LogicalResult allocAndInitializeReductionVars<mlir::omp::TeamsOp>(mlir::omp::TeamsOp, llvm::ArrayRef<mlir::BlockArgument>, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&, llvm::IRBuilderBase::InsertPoint&, llvm::SmallVectorImpl<mlir::omp::DeclareReductionOp>&, llvm::SmallVectorImpl<llvm::Value*>&, llvm::DenseMap<mlir::Value, llvm::Value*, llvm::DenseMapInfo<mlir::Value, void>, llvm::detail::DenseMapPair<mlir::Value, llvm::Value*>>&, llvm::ArrayRef<bool>) OpenMPToLLVMIRTranslation.cpp:0:0
#13 0x0000000006dcd3c2 convertOmpDistribute(mlir::Operation&, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&) OpenMPToLLVMIRTranslation.cpp:0:0
#14 0x0000000006ddbbaa convertHostOrTargetOperation(mlir::Operation*, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&) OpenMPToLLVMIRTranslation.cpp:0:0
#15 0x0000000006ddc8ce (anonymous namespace)::OpenMPDialectLLVMIRTranslationInterface::convertOperation(mlir::Operation*, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&) const OpenMPToLLVMIRTranslation.cpp:0:0
#16 0x0000000008b00fae mlir::LLVM::ModuleTranslation::convertOperation(mlir::Operation&, llvm::IRBuilderBase&, bool) (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x8b00fae)
#17 0x0000000008b0acf7 mlir::LLVM::ModuleTranslation::convertBlockImpl(mlir::Block&, bool, llvm::IRBuilderBase&, bool) (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x8b0acf7)
#18 0x0000000006db7f44 convertOmpOpRegions(mlir::Region&, llvm::StringRef, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&, llvm::SmallVectorImpl<llvm::PHINode*>*) OpenMPToLLVMIRTranslation.cpp:0:0
#19 0x0000000006dd6d4d convertOmpParallel(mlir::omp::ParallelOp, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&)::'lambda'(llvm::IRBuilderBase::InsertPoint, llvm::IRBuilderBase::InsertPoint)::operator()(llvm::IRBuilderBase::InsertPoint, llvm::IRBuilderBase::InsertPoint) const (.isra.0) OpenMPToLLVMIRTranslation.cpp:0:0
#20 0x0000000006dd8540 llvm::Error llvm::function_ref<llvm::Error (llvm::IRBuilderBase::InsertPoint, llvm::IRBuilderBase::InsertPoint)>::callback_fn<convertOmpParallel(mlir::omp::ParallelOp, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&)::'lambda'(llvm::IRBuilderBase::InsertPoint, llvm::IRBuilderBase::InsertPoint)>(long, llvm::IRBuilderBase::InsertPoint, llvm::IRBuilderBase::InsertPoint) OpenMPToLLVMIRTranslation.cpp:0:0
#21 0x000000000997759a llvm::OpenMPIRBuilder::createParallel(llvm::OpenMPIRBuilder::LocationDescription const&, llvm::IRBuilderBase::InsertPoint, llvm::function_ref<llvm::Error (llvm::IRBuilderBase::InsertPoint, llvm::IRBuilderBase::InsertPoint)>, llvm::function_ref<llvm::Expected<llvm::IRBuilderBase::InsertPoint> (llvm::IRBuilderBase::InsertPoint, llvm::IRBuilderBase::InsertPoint, llvm::Value&, llvm::Value&, llvm::Value*&)>, std::function<llvm::Error (llvm::IRBuilderBase::InsertPoint)>, llvm::Value*, llvm::Value*, llvm::omp::ProcBindKind, bool) (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x997759a)
#22 0x0000000006dc7ca4 convertOmpParallel(mlir::omp::ParallelOp, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&) OpenMPToLLVMIRTranslation.cpp:0:0
#23 0x0000000006ddaedb convertHostOrTargetOperation(mlir::Operation*, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&) OpenMPToLLVMIRTranslation.cpp:0:0
#24 0x0000000006ddc8ce (anonymous namespace)::OpenMPDialectLLVMIRTranslationInterface::convertOperation(mlir::Operation*, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&) const OpenMPToLLVMIRTranslation.cpp:0:0
#25 0x0000000008b00fae mlir::LLVM::ModuleTranslation::convertOperation(mlir::Operation&, llvm::IRBuilderBase&, bool) (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x8b00fae)
#26 0x0000000008b0acf7 mlir::LLVM::ModuleTranslation::convertBlockImpl(mlir::Block&, bool, llvm::IRBuilderBase&, bool) (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x8b0acf7)
#27 0x0000000006db7f44 convertOmpOpRegions(mlir::Region&, llvm::StringRef, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&, llvm::SmallVectorImpl<llvm::PHINode*>*) OpenMPToLLVMIRTranslation.cpp:0:0
#28 0x0000000006dd860d llvm::Error llvm::function_ref<llvm::Error (llvm::IRBuilderBase::InsertPoint, llvm::IRBuilderBase::InsertPoint)>::callback_fn<convertOmpTeams(mlir::omp::TeamsOp, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&)::'lambda'(llvm::IRBuilderBase::InsertPoint, llvm::IRBuilderBase::InsertPoint)>(long, llvm::IRBuilderBase::InsertPoint, llvm::IRBuilderBase::InsertPoint) OpenMPToLLVMIRTranslation.cpp:0:0
#29 0x0000000009950f71 llvm::OpenMPIRBuilder::createTeams(llvm::OpenMPIRBuilder::LocationDescription const&, llvm::function_ref<llvm::Error (llvm::IRBuilderBase::InsertPoint, llvm::IRBuilderBase::InsertPoint)>, llvm::Value*, llvm::Value*, llvm::Value*, llvm::Value*) (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x9950f71)
#30 0x0000000006dccdf4 convertOmpTeams(mlir::omp::TeamsOp, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&) OpenMPToLLVMIRTranslation.cpp:0:0
#31 0x0000000006ddb8da convertHostOrTargetOperation(mlir::Operation*, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&) OpenMPToLLVMIRTranslation.cpp:0:0
#32 0x0000000006ddc8ce (anonymous namespace)::OpenMPDialectLLVMIRTranslationInterface::convertOperation(mlir::Operation*, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&) const OpenMPToLLVMIRTranslation.cpp:0:0
#33 0x0000000008b00fae mlir::LLVM::ModuleTranslation::convertOperation(mlir::Operation&, llvm::IRBuilderBase&, bool) (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x8b00fae)
#34 0x0000000008b0acf7 mlir::LLVM::ModuleTranslation::convertBlockImpl(mlir::Block&, bool, llvm::IRBuilderBase&, bool) (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x8b0acf7)
#35 0x0000000006db7f44 convertOmpOpRegions(mlir::Region&, llvm::StringRef, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&, llvm::SmallVectorImpl<llvm::PHINode*>*) OpenMPToLLVMIRTranslation.cpp:0:0
#36 0x0000000006dbd3de convertOmpTarget(mlir::Operation&, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&)::'lambda'(llvm::IRBuilderBase::InsertPoint, llvm::IRBuilderBase::InsertPoint)::operator()(llvm::IRBuilderBase::InsertPoint, llvm::IRBuilderBase::InsertPoint) const (.isra.0) OpenMPToLLVMIRTranslation.cpp:0:0
#37 0x0000000006dbd910 llvm::Expected<llvm::IRBuilderBase::InsertPoint> llvm::function_ref<llvm::Expected<llvm::IRBuilderBase::InsertPoint> (llvm::IRBuilderBase::InsertPoint, llvm::IRBuilderBase::InsertPoint)>::callback_fn<convertOmpTarget(mlir::Operation&, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&)::'lambda'(llvm::IRBuilderBase::InsertPoint, llvm::IRBuilderBase::InsertPoint)>(long, llvm::IRBuilderBase::InsertPoint, llvm::IRBuilderBase::InsertPoint) OpenMPToLLVMIRTranslation.cpp:0:0
#38 0x0000000009957934 createOutlinedFunction(llvm::OpenMPIRBuilder&, llvm::IRBuilderBase&, llvm::OpenMPIRBuilder::TargetKernelDefaultAttrs const&, llvm::StringRef, llvm::SmallVectorImpl<llvm::Value*>&, llvm::function_ref<llvm::Expected<llvm::IRBuilderBase::InsertPoint> (llvm::IRBuilderBase::InsertPoint, llvm::IRBuilderBase::InsertPoint)>&, llvm::function_ref<llvm::Expected<llvm::IRBuilderBase::InsertPoint> (llvm::Argument&, llvm::Value*, llvm::Value*&, llvm::IRBuilderBase::InsertPoint, llvm::IRBuilderBase::InsertPoint)>&) OMPIRBuilder.cpp:0:0
#39 0x00000000099595ec std::_Function_handler<llvm::Expected<llvm::Function*> (llvm::StringRef), emitTargetOutlinedFunction(llvm::OpenMPIRBuilder&, llvm::IRBuilderBase&, bool, llvm::TargetRegionEntryInfo&, llvm::OpenMPIRBuilder::TargetKernelDefaultAttrs const&, llvm::Function*&, llvm::Constant*&, llvm::SmallVectorImpl<llvm::Value*>&, llvm::function_ref<llvm::Expected<llvm::IRBuilderBase::InsertPoint> (llvm::IRBuilderBase::InsertPoint, llvm::IRBuilderBase::InsertPoint)>&, llvm::function_ref<llvm::Expected<llvm::IRBuilderBase::InsertPoint> (llvm::Argument&, llvm::Value*, llvm::Value*&, llvm::IRBuilderBase::InsertPoint, llvm::IRBuilderBase::InsertPoint)>&)::'lambda'(llvm::StringRef)>::_M_invoke(std::_Any_data const&, llvm::StringRef&&) OMPIRBuilder.cpp:0:0
#40 0x0000000009949297 llvm::OpenMPIRBuilder::emitTargetRegionFunction(llvm::TargetRegionEntryInfo&, std::function<llvm::Expected<llvm::Function*> (llvm::StringRef)>&, bool, llvm::Function*&, llvm::Constant*&) (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x9949297)
#41 0x0000000009974183 llvm::OpenMPIRBuilder::createTarget(llvm::OpenMPIRBuilder::LocationDescription const&, bool, llvm::IRBuilderBase::InsertPoint, llvm::IRBuilderBase::InsertPoint, llvm::OpenMPIRBuilder::TargetDataInfo&, llvm::TargetRegionEntryInfo&, llvm::OpenMPIRBuilder::TargetKernelDefaultAttrs const&, llvm::OpenMPIRBuilder::TargetKernelRuntimeAttrs const&, llvm::Value*, llvm::SmallVectorImpl<llvm::Value*>&, llvm::function_ref<llvm::OpenMPIRBuilder::MapInfosTy& (llvm::IRBuilderBase::InsertPoint)>, llvm::function_ref<llvm::Expected<llvm::IRBuilderBase::InsertPoint> (llvm::IRBuilderBase::InsertPoint, llvm::IRBuilderBase::InsertPoint)>, llvm::function_ref<llvm::Expected<llvm::IRBuilderBase::InsertPoint> (llvm::Argument&, llvm::Value*, llvm::Value*&, llvm::IRBuilderBase::InsertPoint, llvm::IRBuilderBase::InsertPoint)>, llvm::function_ref<llvm::Expected<llvm::Function*> (unsigned int)>, llvm::SmallVector<llvm::OpenMPIRBuilder::DependData, 2u> const&, bool) (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x9974183)
#42 0x0000000006dc3c6d convertOmpTarget(mlir::Operation&, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&) OpenMPToLLVMIRTranslation.cpp:0:0
#43 0x0000000006ddbb6a convertHostOrTargetOperation(mlir::Operation*, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&) OpenMPToLLVMIRTranslation.cpp:0:0
#44 0x0000000006ddc8ce (anonymous namespace)::OpenMPDialectLLVMIRTranslationInterface::convertOperation(mlir::Operation*, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&) const OpenMPToLLVMIRTranslation.cpp:0:0
#45 0x0000000008b00fae mlir::LLVM::ModuleTranslation::convertOperation(mlir::Operation&, llvm::IRBuilderBase&, bool) (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x8b00fae)
#46 0x0000000008b0acf7 mlir::LLVM::ModuleTranslation::convertBlockImpl(mlir::Block&, bool, llvm::IRBuilderBase&, bool) (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x8b0acf7)
#47 0x0000000006db9ea9 inlineConvertOmpRegions(mlir::Region&, llvm::StringRef, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&, llvm::SmallVectorImpl<llvm::Value*>*) OpenMPToLLVMIRTranslation.cpp:0:0
#48 0x0000000006dc0d0d llvm::Expected<llvm::IRBuilderBase::InsertPoint> llvm::function_ref<llvm::Expected<llvm::IRBuilderBase::InsertPoint> (llvm::IRBuilderBase::InsertPoint, llvm::OpenMPIRBuilder::BodyGenTy)>::callback_fn<convertOmpTargetData(mlir::Operation*, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&)::'lambda6'(llvm::IRBuilderBase::InsertPoint, llvm::OpenMPIRBuilder::BodyGenTy)>(long, llvm::IRBuilderBase::InsertPoint, llvm::OpenMPIRBuilder::BodyGenTy) OpenMPToLLVMIRTranslation.cpp:0:0
#49 0x0000000009974f0d llvm::OpenMPIRBuilder::createTargetData(llvm::OpenMPIRBuilder::LocationDescription const&, llvm::IRBuilderBase::InsertPoint, llvm::IRBuilderBase::InsertPoint, llvm::Value*, llvm::Value*, llvm::OpenMPIRBuilder::TargetDataInfo&, llvm::function_ref<llvm::OpenMPIRBuilder::MapInfosTy& (llvm::IRBuilderBase::InsertPoint)>, llvm::function_ref<llvm::Expected<llvm::Function*> (unsigned int)>, llvm::omp::RuntimeFunction*, llvm::function_ref<llvm::Expected<llvm::IRBuilderBase::InsertPoint> (llvm::IRBuilderBase::InsertPoint, llvm::OpenMPIRBuilder::BodyGenTy)>, llvm::function_ref<void (unsigned int, llvm::Value*)>, llvm::Value*) (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x9974f0d)
#50 0x0000000006dc6e29 convertOmpTargetData(mlir::Operation*, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&) OpenMPToLLVMIRTranslation.cpp:0:0
#51 0x0000000006ddbb86 convertHostOrTargetOperation(mlir::Operation*, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&) OpenMPToLLVMIRTranslation.cpp:0:0
#52 0x0000000006ddc8ce (anonymous namespace)::OpenMPDialectLLVMIRTranslationInterface::convertOperation(mlir::Operation*, llvm::IRBuilderBase&, mlir::LLVM::ModuleTranslation&) const OpenMPToLLVMIRTranslation.cpp:0:0
#53 0x0000000008b00fae mlir::LLVM::ModuleTranslation::convertOperation(mlir::Operation&, llvm::IRBuilderBase&, bool) (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x8b00fae)
#54 0x0000000008b0acf7 mlir::LLVM::ModuleTranslation::convertBlockImpl(mlir::Block&, bool, llvm::IRBuilderBase&, bool) (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x8b0acf7)
#55 0x0000000008b0c6f8 mlir::LLVM::ModuleTranslation::convertOneFunction(mlir::LLVM::LLVMFuncOp) (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x8b0c6f8)
#56 0x0000000008b0d914 mlir::LLVM::ModuleTranslation::convertFunctions() (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x8b0d914)
#57 0x0000000008b179b5 mlir::translateModuleToLLVMIR(mlir::Operation*, llvm::LLVMContext&, llvm::StringRef, bool) (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x8b179b5)
#58 0x0000000004ea9bef Fortran::frontend::CodeGenAction::generateLLVMIR() (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x4ea9bef)
#59 0x0000000004eae458 Fortran::frontend::CodeGenAction::executeAction() (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x4eae458)
#60 0x0000000004e8fddd Fortran::frontend::FrontendAction::execute() (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x4e8fddd)
#61 0x0000000004e6cc0b Fortran::frontend::CompilerInstance::executeAction(Fortran::frontend::FrontendAction&) (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x4e6cc0b)
#62 0x0000000004e98d67 Fortran::frontend::executeCompilerInvocation(Fortran::frontend::CompilerInstance*) (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x4e98d67)
#63 0x0000000004767220 fc1_main(llvm::ArrayRef<char const*>, char const*) (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x4767220)
#64 0x00000000047668f8 main (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x47668f8)
#65 0x000010515622a1ca __libc_start_call_main ./csu/../sysdeps/nptl/libc_start_call_main.h:74:3
#66 0x000010515622a28b call_init ./csu/../csu/libc-start.c:128:20
#67 0x000010515622a28b __libc_start_main ./csu/../csu/libc-start.c:347:5
#68 0x0000000004764f6e _start (/proj/nv/llvm/Linux_x86_64/llvm-5551/bin/flang+0x4764f6e)
flang-21: error: unable to execute command: Aborted
flang-21: error: flang frontend command failed due to signal (use -v to see invocation)
flang version 21.0.0git (https://github.com/llvm/llvm-project b54cfa46a7eba293b6f2086856a36cc553444939)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /proj/nv/llvm/Linux_x86_64/llvm-5551/bin
Build config: +assertions
flang-21: note: diagnostic msg:
********************

This is a greatly reduced and simplified example from testing Flang with a SPEC Accel OMP code for multicore.

Metadata

Metadata

Assignees

No one assigned

    Labels

    crashPrefer [crash-on-valid] or [crash-on-invalid]flang:openmp

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions