This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug tree-optimization/80304] [7 Regression] Wrong result with do concurrent


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

--- Comment #18 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
> r239317 works, r239326 fails, and also appears to be the only
> patch in the vicinity that does anything about loops.
>
> Could this be the cause?
> 
> Author: edlinger
> Date: Fri Aug 12 19:30:39 2016
> New Revision: 239426

Actually it is r239326

Fix PR tree-optimization/71734

2016-08-10  Yuri Rumyantsev  <ysrumyan@gmail.com>

        PR tree-optimization/71734
        * tree-ssa-loop-im.c (ref_indep_loop_p): Add new argument
        REF_LOOP, invoke ref_indep_loop_p_1.
        (outermost_indep_loop): Pass LOOP argumnet where REF was defined
        to ref_indep_loop_p.
        (ref_indep_loop_p_1): Fix commentary, add argument REF_LOOP,
        combine it with ref_indep_lopp_p_2, update SAFELEN if only REF
        is inside LOOP, do not cache dpendence value for loops with
        non-zero SAFELEN.
        (ref_indep_loop_p_2): Delete function.
        (can_sm_ref_p): Pass LOOP as additional argument to
        ref_indep_loop_p.

Reverting the commit fixes the tests in this PR and in pr80305 (then as
expected libgomp.fortran/pr71734-1.f90  and libgomp.fortran/pr71734-2.f90
fail).

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]