Skip to content

Assert hit in bbc -debug #1498

Description

@mikaoP

The following code hits an assert when CFGConversion pass is run:

 subroutine sub(n, c, a, b)
     implicit none
     integer :: n
     real :: a(n), b(n), c(n)
     intent(in) :: a, b
     intent(out) :: c

     integer :: i

     do i = 1, n
       c(i) = a(i) + b(i)
     end do
 end subroutine sub

Command: bbc f1.f90 -debug --pass-pipeline --cfg-conversion
Log

  %29 = fir.do_loop bbc: /home/rpenacob/llvm-mono/llvm/include/llvm/ADT/ilist_iterator.h:138: llvm::ilist_iterator::reference llvm::ilist_iterator<llvm::ilist_detail::node_options<mlir::Block, true, false, void>, false, false>::operator*() const [OptionsT = llvm::ilist_detail::node_options<mlir::Block, true, false, void>, IsReverse = false, IsConst = false]: Assertion `!NodePtr->isKnownSentinel()' failed.
PLEASE submit a bug report to mailto:pm-tools@bsc.es and include the crash backtrace.
Stack dump:
0.	Program arguments: ./bin/bbc f1.f90 -debug --pass-pipeline --cfg-conversion

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions