[Bug middle-end/93555] ICE in simd_clone_struct_copy, at omp-simd-clone.c:84

cvs-commit at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Wed Feb 5 10:35:00 GMT 2020


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

--- Comment #4 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jakub Jelinek <jakub@gcc.gnu.org>:

https://gcc.gnu.org/g:b843bcb89519293404bb00d2ed09aae529b54d7f

commit r10-6444-gb843bcb89519293404bb00d2ed09aae529b54d7f
Author: Jakub Jelinek <jakub@redhat.com>
Date:   Wed Feb 5 11:32:37 2020 +0100

    openmp: Avoid ICEs with declare simd; declare simd inbranch [PR93555]

    The testcases ICE because when processing the declare simd inbranch,
    we don't create the i == 0 clone as it already exists, which means
    clone_info->nargs is not adjusted, but we then rely on it being adjusted
    when trying other clones.

    2020-02-05  Jakub Jelinek  <jakub@redhat.com>

        PR middle-end/93555
        * omp-simd-clone.c (expand_simd_clones): If simd_clone_mangle or
        simd_clone_create failed when i == 0, adjust clone->nargs by
        clone->inbranch.

        * c-c++-common/gomp/pr93555-1.c: New test.
        * c-c++-common/gomp/pr93555-2.c: New test.
        * gfortran.dg/gomp/pr93555.f90: New test.


More information about the Gcc-bugs mailing list