public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/16681] New: array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine)
@ 2004-07-23  1:10 lafary at activmedia dot com
  2004-07-23  1:11 ` [Bug c++/16681] " lafary at activmedia dot com
                   ` (20 more replies)
  0 siblings, 21 replies; 22+ messages in thread
From: lafary at activmedia dot com @ 2004-07-23  1:10 UTC (permalink / raw)
  To: gcc-bugs

This code compiles quickly and with little memory in gcc-2.95 through gcc-3.2
but in gcc-3.3 and gcc-3.4 it will take up to a gig and a half (or so) of memory
and take 2 minutes and 20 seconds to compile (vs .06 in earlier versions).

struct foo {
  unsigned char buffer[4111222];
  foo() 
    : buffer()
    {}
};

int main(void)
{

}

Here is my compiler information information (on the one system that could
compile the whole thing, also tried it with g++-2.95 g++-3.2 g++-3.3 and g++-3.4
on an up to date debian unstable machine):
[~]$ time g++ -v -save-temps -Wall foo.cpp
Reading specs from /usr/local/gcc-3.4.1/lib/gcc/i686-pc-linux-gnu/3.4.1/specs
Configured with: ../gcc-3.4.1/configure --prefix=/usr/local/gcc-3.4.1
--enable-languages=c,c++
Thread model: posix
gcc version 3.4.1
 /usr/local/gcc-3.4.1/libexec/gcc/i686-pc-linux-gnu/3.4.1/cc1plus -E -quiet -v
-D_GNU_SOURCE foo.cpp -mtune=pentiumpro -Wall -o foo.ii
ignoring nonexistent directory
"/usr/local/gcc-3.4.1/lib/gcc/i686-pc-linux-gnu/3.4.1/../../../../i686-pc-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/local/gcc-3.4.1/lib/gcc/i686-pc-linux-gnu/3.4.1/../../../../include/c++/3.4.1
 /usr/local/gcc-3.4.1/lib/gcc/i686-pc-linux-gnu/3.4.1/../../../../include/c++/3.4.1/i686-pc-linux-gnu
 /usr/local/gcc-3.4.1/lib/gcc/i686-pc-linux-gnu/3.4.1/../../../../include/c++/3.4.1/backward
 /usr/local/include
 /usr/local/gcc-3.4.1/include
 /usr/local/gcc-3.4.1/lib/gcc/i686-pc-linux-gnu/3.4.1/include
 /usr/include
End of search list.
 /usr/local/gcc-3.4.1/libexec/gcc/i686-pc-linux-gnu/3.4.1/cc1plus -fpreprocessed
foo.ii -quiet -dumpbase foo.cpp -mtune=pentiumpro -auxbase foo -Wall -version -o
foo.s
GNU C++ version 3.4.1 (i686-pc-linux-gnu)
        compiled by GNU C version 3.4.1.
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
 as --traditional-format -V -Qy -o foo.o foo.s
GNU assembler version 2.11.90.0.8 (i386-redhat-linux) using BFD version 2.11.90.0.8
 /usr/local/gcc-3.4.1/libexec/gcc/i686-pc-linux-gnu/3.4.1/collect2 -m elf_i386
-dynamic-linker /lib/ld-linux.so.2 /usr/lib/crt1.o /usr/lib/crti.o
/usr/local/gcc-3.4.1/lib/gcc/i686-pc-linux-gnu/3.4.1/crtbegin.o
-L/usr/local/gcc-3.4.1/lib/gcc/i686-pc-linux-gnu/3.4.1
-L/usr/local/gcc-3.4.1/lib/gcc/i686-pc-linux-gnu/3.4.1/../../.. foo.o -lstdc++
-lm -lgcc_s -lgcc -lc -lgcc_s -lgcc
/usr/local/gcc-3.4.1/lib/gcc/i686-pc-linux-gnu/3.4.1/crtend.o /usr/lib/crtn.o

real    2m17.412s
user    2m14.220s
sys     0m3.140s

Thats a redhat 7.2 system but as I said above it happens on a debian-unstable
box too (it doesn't have enough memory to complete the compile, only 512 megs).

Here is the foo.ii:
# 1 "foo.cpp"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "foo.cpp"
struct foo {
  unsigned char buffer[4111222];
  foo()
    : buffer()
    {}
};

int main(void)
{

}

Sorry if this isn't in the right format and let me know if anymore information
is needed, I read through the guidelines, looked at the frequently reported bugs
and searched but didn't find the bug.

-- 
           Summary: array initialization in struct construct is a memory hog
                    (only in gcc 3.3 and 3.4, older is fine)
           Product: gcc
           Version: 3.4.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: lafary at activmedia dot com
                CC: gcc-bugs at gcc dot gnu dot org


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


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug c++/16681] array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine)
  2004-07-23  1:10 [Bug c++/16681] New: array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine) lafary at activmedia dot com
@ 2004-07-23  1:11 ` lafary at activmedia dot com
  2004-07-23  1:13 ` lafary at activmedia dot com
                   ` (19 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: lafary at activmedia dot com @ 2004-07-23  1:11 UTC (permalink / raw)
  To: gcc-bugs



-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |compile-time-hog, memory-hog


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


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug c++/16681] array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine)
  2004-07-23  1:10 [Bug c++/16681] New: array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine) lafary at activmedia dot com
  2004-07-23  1:11 ` [Bug c++/16681] " lafary at activmedia dot com
@ 2004-07-23  1:13 ` lafary at activmedia dot com
  2004-07-23  1:13 ` lafary at activmedia dot com
                   ` (18 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: lafary at activmedia dot com @ 2004-07-23  1:13 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From lafary at activmedia dot com  2004-07-23 01:13 -------
Created an attachment (id=6802)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=6802&action=view)
The ii file for the problem


-- 


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


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug c++/16681] array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine)
  2004-07-23  1:10 [Bug c++/16681] New: array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine) lafary at activmedia dot com
  2004-07-23  1:11 ` [Bug c++/16681] " lafary at activmedia dot com
  2004-07-23  1:13 ` lafary at activmedia dot com
@ 2004-07-23  1:13 ` lafary at activmedia dot com
  2004-07-23  1:14 ` lafary at activmedia dot com
                   ` (17 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: lafary at activmedia dot com @ 2004-07-23  1:13 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From lafary at activmedia dot com  2004-07-23 01:13 -------
Created an attachment (id=6803)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=6803&action=view)
simple cpp file to demonstrate the bug


-- 


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


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug c++/16681] array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine)
  2004-07-23  1:10 [Bug c++/16681] New: array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine) lafary at activmedia dot com
                   ` (2 preceding siblings ...)
  2004-07-23  1:13 ` lafary at activmedia dot com
@ 2004-07-23  1:14 ` lafary at activmedia dot com
  2004-07-23  1:16 ` lafary at activmedia dot com
                   ` (16 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: lafary at activmedia dot com @ 2004-07-23  1:14 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From lafary at activmedia dot com  2004-07-23 01:14 -------
Created an attachment (id=6804)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=6804&action=view)
The output from the compile (with command line and running time)


-- 


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


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug c++/16681] array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine)
  2004-07-23  1:10 [Bug c++/16681] New: array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine) lafary at activmedia dot com
                   ` (3 preceding siblings ...)
  2004-07-23  1:14 ` lafary at activmedia dot com
@ 2004-07-23  1:16 ` lafary at activmedia dot com
  2004-07-23  1:26 ` [Bug c++/16681] [3.3/3.4/3.5 regression] array initialization in struct construct is a memory hog bangerth at dealii dot org
                   ` (15 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: lafary at activmedia dot com @ 2004-07-23  1:16 UTC (permalink / raw)
  To: gcc-bugs



-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to fail|                            |3.3.4 3.4.1
      Known to work|                            |2.95.4 3.2.3


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


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug c++/16681] [3.3/3.4/3.5 regression] array initialization in struct construct is a memory hog
  2004-07-23  1:10 [Bug c++/16681] New: array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine) lafary at activmedia dot com
                   ` (4 preceding siblings ...)
  2004-07-23  1:16 ` lafary at activmedia dot com
@ 2004-07-23  1:26 ` bangerth at dealii dot org
  2004-08-17 15:20 ` pinskia at gcc dot gnu dot org
                   ` (14 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: bangerth at dealii dot org @ 2004-07-23  1:26 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From bangerth at dealii dot org  2004-07-23 01:26 -------
Confirmed, on 3.3, 3.4 and mainline. That's a pretty bad regression :-( 
 
Note that no optimization flags are involved. 
W. 

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|                            |1
      Known to fail|3.3.4 3.4.1                 |3.3.4 3.4.1 3.5.0
   Last reconfirmed|0000-00-00 00:00:00         |2004-07-23 01:26:41
               date|                            |
            Summary|array initialization in     |[3.3/3.4/3.5 regression]
                   |struct construct is a memory|array initialization in
                   |hog (only in gcc 3.3 and    |struct construct is a memory
                   |3.4, older is fine)         |hog
   Target Milestone|---                         |3.4.2


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


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug c++/16681] [3.3/3.4/3.5 regression] array initialization in struct construct is a memory hog
  2004-07-23  1:10 [Bug c++/16681] New: array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine) lafary at activmedia dot com
                   ` (5 preceding siblings ...)
  2004-07-23  1:26 ` [Bug c++/16681] [3.3/3.4/3.5 regression] array initialization in struct construct is a memory hog bangerth at dealii dot org
@ 2004-08-17 15:20 ` pinskia at gcc dot gnu dot org
  2004-08-18 18:37 ` mmitchel at gcc dot gnu dot org
                   ` (13 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-08-17 15:20 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2004-08-17 15:19 -------
*** Bug 17065 has been marked as a duplicate of this bug. ***

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |Woebbeking at web dot de


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


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug c++/16681] [3.3/3.4/3.5 regression] array initialization in struct construct is a memory hog
  2004-07-23  1:10 [Bug c++/16681] New: array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine) lafary at activmedia dot com
                   ` (6 preceding siblings ...)
  2004-08-17 15:20 ` pinskia at gcc dot gnu dot org
@ 2004-08-18 18:37 ` mmitchel at gcc dot gnu dot org
  2004-11-15  8:15 ` [Bug c++/16681] [3.3/3.4/4.0 " steven at gcc dot gnu dot org
                   ` (12 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2004-08-18 18:37 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From mmitchel at gcc dot gnu dot org  2004-08-18 18:37 -------
I understand this problem, and will fix it for GCC 3.5 -- but the fix is going
to be far too invasive for GCC 3.4.x, so I've moved the target milestone.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |mark at codesourcery dot com
                   |dot org                     |
             Status|NEW                         |ASSIGNED
   Target Milestone|3.4.2                       |3.5.0


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


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug c++/16681] [3.3/3.4/4.0 regression] array initialization in struct construct is a memory hog
  2004-07-23  1:10 [Bug c++/16681] New: array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine) lafary at activmedia dot com
                   ` (7 preceding siblings ...)
  2004-08-18 18:37 ` mmitchel at gcc dot gnu dot org
@ 2004-11-15  8:15 ` steven at gcc dot gnu dot org
  2004-12-02 18:14 ` mmitchel at gcc dot gnu dot org
                   ` (11 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: steven at gcc dot gnu dot org @ 2004-11-15  8:15 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From steven at gcc dot gnu dot org  2004-11-15 08:15 -------
Any progress on a fix for this bug? 

-- 


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


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug c++/16681] [3.3/3.4/4.0 regression] array initialization in struct construct is a memory hog
  2004-07-23  1:10 [Bug c++/16681] New: array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine) lafary at activmedia dot com
                   ` (8 preceding siblings ...)
  2004-11-15  8:15 ` [Bug c++/16681] [3.3/3.4/4.0 " steven at gcc dot gnu dot org
@ 2004-12-02 18:14 ` mmitchel at gcc dot gnu dot org
  2004-12-09  9:37 ` cvs-commit at gcc dot gnu dot org
                   ` (10 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2004-12-02 18:14 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From mmitchel at gcc dot gnu dot org  2004-12-02 18:14 -------
Nathan asked me to write up some details about what I intend to do.

There are some tremendous inefficiences in our representation for initializers
for an array.  In particular, we use a CONSTRUCTOR whose CONSTRUCTOR_ELTS is a
TREE_LIST.  Each node in the TREE_LIST has a TREE_PURPOSE with the equivalent of
a C99 "designator"; the TREE_VALUE is the value to be stored at that location. 
For a huge array, we waste a ton of space on the designators and the TREE_LIST
nodes.

What we should do instead is store the first designator, and then an array of
initializers.  For most arrays initializers, that will be sufficient.  For an
array that actually uses designated initializers, we'll have several such
blocks, chained together.  If we're using existing tree nodes, a TREE_VEC would
do; use the TREE_TYPE as the designator, the TREE_CHAIN to chain the initializer
blocks together, and the vector elements as the initializers themselves.

Making this change will require large, but mostly mechanical, changes to the
middle and back ends.  You could provide a converter function to go from the old
representation to the new, probably, so as to avoid having to change all of the
front ends at first.

Second, in the C++ front end, we process the huge initializer several times.  We
build up an initial representation in the parser.  Then, we run it through
reshape_array -- which creates a bunch of new nodes, rather than reusing any
existing nodes.  I'm not sure if digest_init then creates a bunch more nodes. 
Reusing the nodes from earlier phases here would be good.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |nathan at codesourcery dot
                   |                            |com


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


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug c++/16681] [3.3/3.4/4.0 regression] array initialization in struct construct is a memory hog
  2004-07-23  1:10 [Bug c++/16681] New: array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine) lafary at activmedia dot com
                   ` (9 preceding siblings ...)
  2004-12-02 18:14 ` mmitchel at gcc dot gnu dot org
@ 2004-12-09  9:37 ` cvs-commit at gcc dot gnu dot org
  2004-12-09  9:39 ` nathan at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2004-12-09  9:37 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-12-09 09:37 -------
Subject: Bug 16681

CVSROOT:	/cvs/gcc
Module name:	gcc
Changes by:	nathan@gcc.gnu.org	2004-12-09 09:37:37

Modified files:
	gcc/cp         : ChangeLog init.c 
	gcc/testsuite  : ChangeLog 
Added files:
	gcc/testsuite/g++.dg/init: array15.C array16.C 

Log message:
	cp:
	PR c++/16681
	* init.c (build_zero_init): Build a RANGE_EXPR for an array
	initializer.
	testsuite:
	PR c++/16681
	* g++.dg/init/array15.C: New.
	* g++.dg/init/array16.C: New.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcc&r1=1.4522&r2=1.4523
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/init.c.diff?cvsroot=gcc&r1=1.403&r2=1.404
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.4727&r2=1.4728
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/init/array15.C.diff?cvsroot=gcc&r1=NONE&r2=1.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/init/array16.C.diff?cvsroot=gcc&r1=NONE&r2=1.1



-- 


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


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug c++/16681] [3.3/3.4/4.0 regression] array initialization in struct construct is a memory hog
  2004-07-23  1:10 [Bug c++/16681] New: array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine) lafary at activmedia dot com
                   ` (10 preceding siblings ...)
  2004-12-09  9:37 ` cvs-commit at gcc dot gnu dot org
@ 2004-12-09  9:39 ` nathan at gcc dot gnu dot org
  2004-12-09 10:10 ` [Bug c++/16681] [3.3/3.4 " steven at gcc dot gnu dot org
                   ` (8 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: nathan at gcc dot gnu dot org @ 2004-12-09  9:39 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From nathan at gcc dot gnu dot org  2004-12-09 09:39 -------
fixed on mainline
2004-12-09  Nathan Sidwell  <nathan@codesourcery.com>

	PR c++/16681
	* init.c (build_zero_init): Build a RANGE_EXPR for an array
	initializer.

-- 


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


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug c++/16681] [3.3/3.4 regression] array initialization in struct construct is a memory hog
  2004-07-23  1:10 [Bug c++/16681] New: array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine) lafary at activmedia dot com
                   ` (11 preceding siblings ...)
  2004-12-09  9:39 ` nathan at gcc dot gnu dot org
@ 2004-12-09 10:10 ` steven at gcc dot gnu dot org
  2004-12-09 10:44 ` cvs-commit at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: steven at gcc dot gnu dot org @ 2004-12-09 10:10 UTC (permalink / raw)
  To: gcc-bugs



-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to fail|3.3.4 3.4.1 4.0.0           |3.3.4 3.4.1
      Known to work|2.95.4 3.2.3                |2.95.4 3.2.3 4.0.0
            Summary|[3.3/3.4/4.0 regression]    |[3.3/3.4 regression] array
                   |array initialization in     |initialization in struct
                   |struct construct is a memory|construct is a memory hog
                   |hog                         |
   Target Milestone|4.0.0                       |3.4.4


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


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug c++/16681] [3.3/3.4 regression] array initialization in struct construct is a memory hog
  2004-07-23  1:10 [Bug c++/16681] New: array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine) lafary at activmedia dot com
                   ` (12 preceding siblings ...)
  2004-12-09 10:10 ` [Bug c++/16681] [3.3/3.4 " steven at gcc dot gnu dot org
@ 2004-12-09 10:44 ` cvs-commit at gcc dot gnu dot org
  2004-12-09 12:21 ` nathan at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2004-12-09 10:44 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-12-09 10:44 -------
Subject: Bug 16681

CVSROOT:	/cvs/gcc
Module name:	gcc
Changes by:	nathan@gcc.gnu.org	2004-12-09 10:43:57

Modified files:
	gcc            : ChangeLog tree-inline.c 

Log message:
	PR c++/16681
	* tree-inline.c (estimate_num_insns_1): Add RANGE_EXPR case.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.6753&r2=2.6754
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-inline.c.diff?cvsroot=gcc&r1=1.154&r2=1.155



-- 


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


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug c++/16681] [3.3/3.4 regression] array initialization in struct construct is a memory hog
  2004-07-23  1:10 [Bug c++/16681] New: array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine) lafary at activmedia dot com
                   ` (13 preceding siblings ...)
  2004-12-09 10:44 ` cvs-commit at gcc dot gnu dot org
@ 2004-12-09 12:21 ` nathan at gcc dot gnu dot org
  2004-12-09 12:22 ` cvs-commit at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: nathan at gcc dot gnu dot org @ 2004-12-09 12:21 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From nathan at gcc dot gnu dot org  2004-12-09 12:21 -------
Fix for 3.4 branch
2004-12-09  Nathan Sidwell  <nathan@codesourcery.com>

	PR c++/16681
	* init.c (build_zero_init): Build a RANGE_EXPR for an array
	initializer.


-- 


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


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug c++/16681] [3.3/3.4 regression] array initialization in struct construct is a memory hog
  2004-07-23  1:10 [Bug c++/16681] New: array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine) lafary at activmedia dot com
                   ` (14 preceding siblings ...)
  2004-12-09 12:21 ` nathan at gcc dot gnu dot org
@ 2004-12-09 12:22 ` cvs-commit at gcc dot gnu dot org
  2004-12-09 13:59 ` cvs-commit at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2004-12-09 12:22 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-12-09 12:21 -------
Subject: Bug 16681

CVSROOT:	/cvs/gcc
Module name:	gcc
Branch: 	gcc-3_4-branch
Changes by:	nathan@gcc.gnu.org	2004-12-09 12:21:33

Modified files:
	gcc/cp         : ChangeLog init.c 
	gcc/testsuite  : ChangeLog 
Added files:
	gcc/testsuite/g++.dg/init: array15.C array16.C 

Log message:
	cp:
	PR c++/16681
	* init.c (build_zero_init): Build a RANGE_EXPR for an array
	initializer.
	testsuite:
	PR c++/16681
	* g++.dg/init/array15.C: New.
	* g++.dg/init/array16.C: New.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.3892.2.183&r2=1.3892.2.184
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/init.c.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.356.2.14&r2=1.356.2.15
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.3389.2.320&r2=1.3389.2.321
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/init/array15.C.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=NONE&r2=1.1.2.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/init/array16.C.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=NONE&r2=1.1.2.1



-- 


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


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug c++/16681] [3.3/3.4 regression] array initialization in struct construct is a memory hog
  2004-07-23  1:10 [Bug c++/16681] New: array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine) lafary at activmedia dot com
                   ` (15 preceding siblings ...)
  2004-12-09 12:22 ` cvs-commit at gcc dot gnu dot org
@ 2004-12-09 13:59 ` cvs-commit at gcc dot gnu dot org
  2004-12-09 15:10 ` cvs-commit at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2004-12-09 13:59 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-12-09 13:59 -------
Subject: Bug 16681

CVSROOT:	/cvs/gcc
Module name:	gcc
Branch: 	gcc-3_4-rhl-branch
Changes by:	jakub@gcc.gnu.org	2004-12-09 13:59:26

Modified files:
	gcc/cp         : ChangeLog init.c 
	gcc/testsuite  : ChangeLog 
Added files:
	gcc/testsuite/g++.dg/init: array15.C array16.C 

Log message:
	2004-12-09  Nathan Sidwell  <nathan@codesourcery.com>
	
	PR c++/16681
	* init.c (build_zero_init): Build a RANGE_EXPR for an array
	initializer.
	
	* g++.dg/init/array15.C: New.
	* g++.dg/init/array16.C: New.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_4-rhl-branch&r1=1.3892.2.99.2.18&r2=1.3892.2.99.2.19
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/init.c.diff?cvsroot=gcc&only_with_tag=gcc-3_4-rhl-branch&r1=1.356.2.9.2.4&r2=1.356.2.9.2.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_4-rhl-branch&r1=1.3389.2.170.2.34&r2=1.3389.2.170.2.35
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/init/array15.C.diff?cvsroot=gcc&only_with_tag=gcc-3_4-rhl-branch&r1=NONE&r2=1.1.4.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/init/array16.C.diff?cvsroot=gcc&only_with_tag=gcc-3_4-rhl-branch&r1=NONE&r2=1.1.4.1



-- 


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


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug c++/16681] [3.3/3.4 regression] array initialization in struct construct is a memory hog
  2004-07-23  1:10 [Bug c++/16681] New: array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine) lafary at activmedia dot com
                   ` (17 preceding siblings ...)
  2004-12-09 15:10 ` cvs-commit at gcc dot gnu dot org
@ 2004-12-09 15:10 ` nathan at gcc dot gnu dot org
  2004-12-09 15:12 ` pinskia at gcc dot gnu dot org
  2004-12-09 16:38 ` gdr at integrable-solutions dot net
  20 siblings, 0 replies; 22+ messages in thread
From: nathan at gcc dot gnu dot org @ 2004-12-09 15:10 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From nathan at gcc dot gnu dot org  2004-12-09 15:10 -------
Same fix for 3.3 branch
2004-12-09  Nathan Sidwell  <nathan@codesourcery.com>

	PR c++/16681
	* init.c (build_zero_init): Build a RANGE_EXPR for an array
	initializer.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED


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


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug c++/16681] [3.3/3.4 regression] array initialization in struct construct is a memory hog
  2004-07-23  1:10 [Bug c++/16681] New: array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine) lafary at activmedia dot com
                   ` (16 preceding siblings ...)
  2004-12-09 13:59 ` cvs-commit at gcc dot gnu dot org
@ 2004-12-09 15:10 ` cvs-commit at gcc dot gnu dot org
  2004-12-09 15:10 ` nathan at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2004-12-09 15:10 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-12-09 15:09 -------
Subject: Bug 16681

CVSROOT:	/cvs/gcc
Module name:	gcc
Branch: 	gcc-3_3-branch
Changes by:	nathan@gcc.gnu.org	2004-12-09 15:09:33

Modified files:
	gcc/cp         : ChangeLog init.c 
	gcc/testsuite  : ChangeLog 
Added files:
	gcc/testsuite/g++.dg/init: array15.C array16.C 

Log message:
	cp:
	PR c++/16681
	* init.c (build_zero_init): Build a RANGE_EXPR for an array
	initializer.
	testsuite:
	PR c++/16681
	* g++.dg/init/array15.C: New.
	* g++.dg/init/array16.C: New.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_3-branch&r1=1.3076.2.277&r2=1.3076.2.278
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/init.c.diff?cvsroot=gcc&only_with_tag=gcc-3_3-branch&r1=1.299.2.18&r2=1.299.2.19
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_3-branch&r1=1.2261.2.387&r2=1.2261.2.388
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/init/array15.C.diff?cvsroot=gcc&only_with_tag=gcc-3_3-branch&r1=NONE&r2=1.1.6.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/init/array16.C.diff?cvsroot=gcc&only_with_tag=gcc-3_3-branch&r1=NONE&r2=1.1.6.1



-- 


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


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug c++/16681] [3.3/3.4 regression] array initialization in struct construct is a memory hog
  2004-07-23  1:10 [Bug c++/16681] New: array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine) lafary at activmedia dot com
                   ` (18 preceding siblings ...)
  2004-12-09 15:10 ` nathan at gcc dot gnu dot org
@ 2004-12-09 15:12 ` pinskia at gcc dot gnu dot org
  2004-12-09 16:38 ` gdr at integrable-solutions dot net
  20 siblings, 0 replies; 22+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-12-09 15:12 UTC (permalink / raw)
  To: gcc-bugs



-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to work|2.95.4 3.2.3 4.0.0          |2.95.4 3.2.3 4.0.0 3.4.4
   Target Milestone|3.4.4                       |3.3.6


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


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug c++/16681] [3.3/3.4 regression] array initialization in struct construct is a memory hog
  2004-07-23  1:10 [Bug c++/16681] New: array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine) lafary at activmedia dot com
                   ` (19 preceding siblings ...)
  2004-12-09 15:12 ` pinskia at gcc dot gnu dot org
@ 2004-12-09 16:38 ` gdr at integrable-solutions dot net
  20 siblings, 0 replies; 22+ messages in thread
From: gdr at integrable-solutions dot net @ 2004-12-09 16:38 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From gdr at integrable-solutions dot net  2004-12-09 16:38 -------
Subject: Re:  [3.3/3.4 regression] array initialization in struct construct is a memory hog

"nathan at gcc dot gnu dot org" <gcc-bugzilla@gcc.gnu.org> writes:

| Same fix for 3.3 branch
| 2004-12-09  Nathan Sidwell  <nathan@codesourcery.com>

Thanks!

-- gaby


-- 


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


^ permalink raw reply	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2004-12-09 16:38 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-07-23  1:10 [Bug c++/16681] New: array initialization in struct construct is a memory hog (only in gcc 3.3 and 3.4, older is fine) lafary at activmedia dot com
2004-07-23  1:11 ` [Bug c++/16681] " lafary at activmedia dot com
2004-07-23  1:13 ` lafary at activmedia dot com
2004-07-23  1:13 ` lafary at activmedia dot com
2004-07-23  1:14 ` lafary at activmedia dot com
2004-07-23  1:16 ` lafary at activmedia dot com
2004-07-23  1:26 ` [Bug c++/16681] [3.3/3.4/3.5 regression] array initialization in struct construct is a memory hog bangerth at dealii dot org
2004-08-17 15:20 ` pinskia at gcc dot gnu dot org
2004-08-18 18:37 ` mmitchel at gcc dot gnu dot org
2004-11-15  8:15 ` [Bug c++/16681] [3.3/3.4/4.0 " steven at gcc dot gnu dot org
2004-12-02 18:14 ` mmitchel at gcc dot gnu dot org
2004-12-09  9:37 ` cvs-commit at gcc dot gnu dot org
2004-12-09  9:39 ` nathan at gcc dot gnu dot org
2004-12-09 10:10 ` [Bug c++/16681] [3.3/3.4 " steven at gcc dot gnu dot org
2004-12-09 10:44 ` cvs-commit at gcc dot gnu dot org
2004-12-09 12:21 ` nathan at gcc dot gnu dot org
2004-12-09 12:22 ` cvs-commit at gcc dot gnu dot org
2004-12-09 13:59 ` cvs-commit at gcc dot gnu dot org
2004-12-09 15:10 ` cvs-commit at gcc dot gnu dot org
2004-12-09 15:10 ` nathan at gcc dot gnu dot org
2004-12-09 15:12 ` pinskia at gcc dot gnu dot org
2004-12-09 16:38 ` gdr at integrable-solutions dot net

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).