------- Comment #7 from mikael at gcc dot gnu dot org  2010-09-21 19:04 -------
Subject: Bug 45648

Author: mikael
Date: Tue Sep 21 19:04:09 2010
New Revision: 164494

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=164494
Log:
2010-09-21  Mikael Morin  <mik...@gcc.gnu.org>

        PR fortran/45648
        * trans-array.c (gfc_conv_expr_descriptor): Calculate dim out of n and
        info->dim.

        PR fortran/45648
        * trans-array.c (gfc_conv_expr_descriptor): Unset full if we are
        accessing dimensions in reversed order. 

        PR fortran/45648
        * trans-array.c (gfc_conv_expr_descriptor): Special case noncopying
        intrinsic function call. 

        * trans-array.c (gfc_conv_expr_descriptor): Remove ss lookup.
        Update asserts accordingly.

        PR fortran/45648
        * trans.h (gfc_se): New field force_tmp. 
        * trans-expr.c (gfc_conv_procedure_call): Check for argument alias
        and set parmse.force_tmp if some alias is found. 
        * trans-array.c (gfc_conv_expr_descriptor): Force a temporary creation
        if se->force_tmp is set. 

2010-09-21  Mikael Morin  <mik...@gcc.gnu.org>

        PR fortran/45648
        * gfortran.dg/inline_transpose_1.f90: Update temporary's locations
        and counts. Add non-elemental function call check.

        PR fortran/45648
        * gfortran.dg/inline_transpose_1.f90: Add function calls with aliasing
        arguments checks. Update temporary counts.
        * gfortran.dg/transpose_optimization_1.f90: New.


Added:
    trunk/gcc/testsuite/gfortran.dg/transpose_optimization_1.f90
Modified:
    trunk/gcc/fortran/ChangeLog
    trunk/gcc/fortran/trans-array.c
    trunk/gcc/fortran/trans-expr.c
    trunk/gcc/fortran/trans.h
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/gfortran.dg/inline_transpose_1.f90


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45648

Reply via email to