https://gcc.gnu.org/bugzilla/show_bug.cgi?id=127058

            Bug ID: 127058
           Summary: [17 Regression] vectorizer aborts during slp free
                    since r17-3598-gacc81fdd59f
           Product: gcc
           Version: 17.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: tnfchris at gcc dot gnu.org
                CC: rguenth at gcc dot gnu.org
  Target Milestone: ---
            Target: aarch64*

The testcase

MODULE a
    integer, parameter ::      b = selected_real_kind(12)
    integer, parameter :: d     =  10
    real(b) e(1,d)
    CONTAINS
    SUBROUTINE f(ime ,jme)
    REAL, DIMENSION( ime,d,jme )  :: g
    INTEGER  C
        DO h = jts,jte
        DO l = its,aa
        if (m.eq.1) THEN
           do c = 1,ab
            do k = 1,d
               e(c,k) = g(i,k,j)
            enddo
            enddo
        endif
        end do
    end do
  end
  end

compiled with gfortran -Ofast -mcpu=neoverse-v1

ICEs with

internal compiler error: Aborted
0x21b4d03 internal_error(char const*, ...)
       
/opt/buildAgent/work/5c94c4ced6ebfcd0/gcc/diagnostic-global-context.cc:787
0xf9bd5f crash_signal
        /opt/buildAgent/work/5c94c4ced6ebfcd0/gcc/toplev.cc:325
0xffffa83b8d78 __GI_raise
        ../sysdeps/unix/sysv/linux/raise.c:51
0xffffa83a5aab __GI_abort
        /build/glibc-hV2QTJ/glibc-2.31/stdlib/abort.c:79
0xffffa83f2f3f __libc_message
        ../sysdeps/posix/libc_fatal.c:155
0xffffa83fa343 malloc_printerr
        /build/glibc-hV2QTJ/glibc-2.31/malloc/malloc.c:5347
0xffffa83fbbf7 _int_free
        /build/glibc-hV2QTJ/glibc-2.31/malloc/malloc.c:4249
0x12777cb void va_heap::release<tree_node*>(vec<tree_node*, va_heap,
vl_embed>*&)
        /opt/buildAgent/work/5c94c4ced6ebfcd0/gcc/vec.h:347
0x12777cb vec<tree_node*, va_heap, vl_ptr>::release()
        /opt/buildAgent/work/5c94c4ced6ebfcd0/gcc/vec.h:2038
0x12777cb _slp_tree::~_slp_tree()
        /opt/buildAgent/work/5c94c4ced6ebfcd0/gcc/tree-vect-slp.cc:154
0x12792af vect_free_slp_tree(_slp_tree*)
        /opt/buildAgent/work/5c94c4ced6ebfcd0/gcc/tree-vect-slp.cc:192
0x1279297 vect_free_slp_tree(_slp_tree*)
        /opt/buildAgent/work/5c94c4ced6ebfcd0/gcc/tree-vect-slp.cc:190
0x1279517 vect_free_slp_tree(_slp_tree*)
        /opt/buildAgent/work/5c94c4ced6ebfcd0/gcc/tree-vect-slp.cc:185
0x1279517 vect_free_slp_instance(_slp_instance*)
        /opt/buildAgent/work/5c94c4ced6ebfcd0/gcc/tree-vect-slp.cc:212
0x12a6257 vec_info::~vec_info()
        /opt/buildAgent/work/5c94c4ced6ebfcd0/gcc/tree-vectorizer.cc:481
0x12990c7 vect_slp_region
        /opt/buildAgent/work/5c94c4ced6ebfcd0/gcc/tree-vect-slp.cc:10537
0x129b2bb vect_slp_bbs
        /opt/buildAgent/work/5c94c4ced6ebfcd0/gcc/tree-vect-slp.cc:10609
0x129b593 vect_slp_function(function*)
        /opt/buildAgent/work/5c94c4ced6ebfcd0/gcc/tree-vect-slp.cc:10731
0x12a4b2f execute
        /opt/buildAgent/work/5c94c4ced6ebfcd0/gcc/tree-vectorizer.cc:1573

since

commit g:acc81fdd59f3c91123b57f165a56d75810886317
Author: Richard Biener

    Do not use nunits_vectype to decide on BB vect unrolling

This breaks WRF in SPECCPU 2017.

Reply via email to