[Bug fortran/13465] Data statement for large arrays compiles verrrry slllowwwly and shows quadratic behaviour.
cvs-commit at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Mon Aug 23 21:53:00 GMT 2004
------- Additional Comments From cvs-commit at gcc dot gnu dot org 2004-08-23 21:53 -------
Subject: Bug 13465
CVSROOT: /cvs/gcc
Module name: gcc
Changes by: rth@gcc.gnu.org 2004-08-23 21:53:15
Modified files:
gcc/fortran : ChangeLog data.c gfortran.h match.c resolve.c
Log message:
PR 13465
* data.c (find_con_by_offset): Search ordered list; handle
elements with repeat counts.
(gfc_assign_data_value_range): New.
* gfortran.h (struct gfc_data_value): Make repeat unsigned.
(gfc_assign_data_value_range): Declare.
* match.c (top_val_list): Extract repeat count into a temporary.
* resolve.c (values): Make left unsigned.
(next_data_value): Don't decrement left.
(check_data_variable): Use gfc_assign_data_value_range.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/ChangeLog.diff?cvsroot=gcc&r1=1.161&r2=1.162
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/data.c.diff?cvsroot=gcc&r1=1.6&r2=1.7
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/gfortran.h.diff?cvsroot=gcc&r1=1.25&r2=1.26
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/match.c.diff?cvsroot=gcc&r1=1.20&r2=1.21
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/resolve.c.diff?cvsroot=gcc&r1=1.12&r2=1.13
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13465
More information about the Gcc-bugs
mailing list