Hi Harald, Looks good to me - OK for as many branches as you have sufficient fortitude for.
Regards Paul On Thu, 3 Jun 2021 at 21:22, Harald Anlauf via Fortran <fort...@gcc.gnu.org> wrote: > *PING* > > > Gesendet: Donnerstag, 27. Mai 2021 um 22:20 Uhr > > Von: "Harald Anlauf" <anl...@gmx.de> > > An: "fortran" <fort...@gcc.gnu.org>, "gcc-patches" < > gcc-patches@gcc.gnu.org> > > Betreff: [PATCH] PR fortran/99839 - [9/10/11/12 Regression] ICE in > inline_matmul_assign, at fortran/frontend-passes.c:4234 > > > > Dear Fortranners, > > > > frontend optimization tries to inline matmul, but then it also needs > > to take care of the assignment to the result array. If that one is > > not of canonical type, we currently get an ICE. The straightforward > > solution is to simply punt in those cases and avoid inlining. > > > > Regtested on x86_64-pc-linux-gnu. > > > > OK for mainline? Backport to affected branches? > > > > Thanks, > > Harald > > > > > > Fortran - ICE in inline_matmul_assign > > > > Restrict inlining of matmul to those cases where assignment to the > > result array does not need special treatment. > > > > gcc/fortran/ChangeLog: > > > > PR fortran/99839 > > * frontend-passes.c (inline_matmul_assign): Do not inline matmul > > if the assignment to the resulting array if it is not of canonical > > type (real/integer/complex/logical). > > > > gcc/testsuite/ChangeLog: > > > > PR fortran/99839 > > * gfortran.dg/inline_matmul_25.f90: New test. > > > > > -- "If you can't explain it simply, you don't understand it well enough" - Albert Einstein