[Bug tree-optimization/103192] [12 Regression] ICE on libgomp target-in-reduction-2.{C,c}

cvs-commit at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Wed Nov 17 13:19:19 GMT 2021


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

--- Comment #21 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:077425c890927eefacb765ab5236060de9859e82

commit r12-5337-g077425c890927eefacb765ab5236060de9859e82
Author: Jakub Jelinek <jakub@redhat.com>
Date:   Wed Nov 17 14:18:42 2021 +0100

    lim: Reset flow sensitive info even for pointers [PR103192]

    Since 2014 is lim clearing SSA_NAME_RANGE_INFO for integral SSA_NAMEs
    if moving them from conditional contexts inside of a loop into
unconditional
    before the loop, but as the miscompilation of gimplify.c shows, we need to
    treat pointers the same, even for them we need to reset whether the pointer
    can/can't be null or the recorded pointer alignment.

    This fixes
    -FAIL: libgomp.c/../libgomp.c-c++-common/target-in-reduction-2.c (internal
compiler error)
    -FAIL: libgomp.c/../libgomp.c-c++-common/target-in-reduction-2.c (test for
excess errors)
    -UNRESOLVED: libgomp.c/../libgomp.c-c++-common/target-in-reduction-2.c
compilation failed to produce executable
    -FAIL: libgomp.c++/../libgomp.c-c++-common/target-in-reduction-2.c
(internal compiler error)
    -FAIL: libgomp.c++/../libgomp.c-c++-common/target-in-reduction-2.c (test
for excess errors)
    -UNRESOLVED: libgomp.c++/../libgomp.c-c++-common/target-in-reduction-2.c
compilation failed to produce executable
    -FAIL: libgomp.c++/target-in-reduction-2.C (internal compiler error)
    -FAIL: libgomp.c++/target-in-reduction-2.C (test for excess errors)
    -UNRESOLVED: libgomp.c++/target-in-reduction-2.C compilation failed to
produce executable
    on both x86_64 and i686.

    2021-11-17  Jakub Jelinek  <jakub@redhat.com>

            PR tree-optimization/103192
            * tree-ssa-loop-im.c (move_computations_worker): Use
            reset_flow_sensitive_info instead of manually clearing
            SSA_NAME_RANGE_INFO and do it for all SSA_NAMEs, not just ones
            with integral types.


More information about the Gcc-bugs mailing list