Skip to content

[Flang][OpenMP][Debug] Assertion `DbgUsers.empty()' failed. #149708

@k-arrows

Description

@k-arrows

Reproducer:

  procedure(g), pointer :: f
  !$omp parallel
   f => g
  !$omp end parallel
contains
  subroutine g
    integer :: i, j, k
    !$omp taskloop firstprivate (j, k)
    do i = 1, 2
    end do
  end subroutine g
end

When I use assertion-enabled flang, compiling the above reproducer by "flang -fopenmp -g" causes the following assertion failure:

llvm-project/llvm/lib/Transforms/Utils/CodeExtractor.cpp:1290: void fixupDebugInfoPostExtraction(llvm::Function &, llvm::Function &, llvm::CallInst &, const SetVector<llvm::Value *> &, ArrayRef<llvm::Value *>): Assertion `DbgUsers.empty()' failed.

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