public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/21304] [4.0/4.1 regression] very long compile times with large cpp file from kdebindings
       [not found] <bug-21304-1216@http.gcc.gnu.org/bugzilla/>
@ 2005-10-12 16:12 ` pinskia at gcc dot gnu dot org
  2005-10-13  3:10 ` pinskia at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 7+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-10-12 16:12 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #14 from pinskia at gcc dot gnu dot org  2005-10-12 16:12 -------
I have a patch which I am testing which should fix this by reducing the number
of referenced variables which in turns reduces virtual operands.
Now we get the following -ftime-report for -O2 on powerpc-darwin with cc1plus
compiled with -O0 and with checking still enabled, a 40x decrease:
 garbage collection    :  20.72 (10%) usr   0.75 ( 1%) sys  29.13 ( 6%) wall   
   0 kB ( 0%) ggc
 callgraph construction:   9.23 ( 5%) usr   1.00 ( 2%) sys  13.52 ( 3%) wall  
25403 kB ( 4%) ggc
 callgraph optimization:   0.10 ( 0%) usr   0.00 ( 0%) sys   0.42 ( 0%) wall   
   0 kB ( 0%) ggc
 CFG verifier          :   3.70 ( 2%) usr   0.38 ( 1%) sys   6.37 ( 1%) wall   
   0 kB ( 0%) ggc
 rebuild jump labels   :   0.64 ( 0%) usr   0.18 ( 0%) sys   1.14 ( 0%) wall   
   0 kB ( 0%) ggc
 preprocessing         :   4.47 ( 2%) usr   6.35 (12%) sys  13.55 ( 3%) wall   
2112 kB ( 0%) ggc
 parser                :  64.77 (33%) usr  15.36 (29%) sys 195.42 (37%) wall 
299871 kB (42%) ggc
 name lookup           :  22.59 (11%) usr  23.24 (43%) sys  76.74 (15%) wall  
16057 kB ( 2%) ggc
 inline heuristics     :   0.24 ( 0%) usr   0.01 ( 0%) sys   0.46 ( 0%) wall   
 662 kB ( 0%) ggc
 integration           :   0.00 ( 0%) usr   0.02 ( 0%) sys   0.05 ( 0%) wall   
   0 kB ( 0%) ggc
 tree gimplify         :  20.46 (10%) usr   0.89 ( 2%) sys  41.40 ( 8%) wall  
57280 kB ( 8%) ggc
 tree eh               :   0.76 ( 0%) usr   0.15 ( 0%) sys   1.19 ( 0%) wall   
4251 kB ( 1%) ggc
 tree CFG construction :   1.87 ( 1%) usr   0.51 ( 1%) sys   2.91 ( 1%) wall  
61517 kB ( 9%) ggc
 tree CFG cleanup      :   2.34 ( 1%) usr   0.44 ( 1%) sys   4.01 ( 1%) wall   
  36 kB ( 0%) ggc
 tree STMT verifier    :   8.10 ( 4%) usr   0.39 ( 1%) sys  11.28 ( 2%) wall   
   0 kB ( 0%) ggc
 expand                :  34.94 (18%) usr   2.55 ( 5%) sys  74.96 (14%) wall 
240800 kB (34%) ggc
 varconst              :   2.88 ( 1%) usr   1.34 ( 2%) sys  51.80 (10%) wall   
2382 kB ( 0%) ggc
 final                 :   0.50 ( 0%) usr   0.12 ( 0%) sys   1.10 ( 0%) wall   
   0 kB ( 0%) ggc
 symout                :   0.00 ( 0%) usr   0.03 ( 0%) sys   0.30 ( 0%) wall   
  28 kB ( 0%) ggc
 TOTAL                 : 198.38            53.88           526.74            
711174 kB


It also fixes the C testcase in comment #8 too.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |pinskia at gcc dot gnu dot
                   |dot org                     |org
             Status|NEW                         |ASSIGNED


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


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

* [Bug tree-optimization/21304] [4.0/4.1 regression] very long compile times with large cpp file from kdebindings
       [not found] <bug-21304-1216@http.gcc.gnu.org/bugzilla/>
  2005-10-12 16:12 ` [Bug tree-optimization/21304] [4.0/4.1 regression] very long compile times with large cpp file from kdebindings pinskia at gcc dot gnu dot org
@ 2005-10-13  3:10 ` pinskia at gcc dot gnu dot org
  2005-10-14  3:01 ` cvs-commit at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 7+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-10-13  3:10 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #15 from pinskia at gcc dot gnu dot org  2005-10-13 03:09 -------
Patch posted here: http://gcc.gnu.org/ml/gcc-patches/2005-10/msg00737.html


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                URL|                            |http://gcc.gnu.org/ml/gcc-
                   |                            |patches/2005-
                   |                            |10/msg00737.html
           Keywords|                            |patch


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


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

* [Bug tree-optimization/21304] [4.0/4.1 regression] very long compile times with large cpp file from kdebindings
       [not found] <bug-21304-1216@http.gcc.gnu.org/bugzilla/>
  2005-10-12 16:12 ` [Bug tree-optimization/21304] [4.0/4.1 regression] very long compile times with large cpp file from kdebindings pinskia at gcc dot gnu dot org
  2005-10-13  3:10 ` pinskia at gcc dot gnu dot org
@ 2005-10-14  3:01 ` cvs-commit at gcc dot gnu dot org
  2005-10-14  3:02 ` [Bug tree-optimization/21304] [4.0 " pinskia at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 7+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2005-10-14  3:01 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #16 from cvs-commit at gcc dot gnu dot org  2005-10-14 03:01 -------
Subject: Bug 21304

CVSROOT:        /cvs/gcc
Module name:    gcc
Changes by:     pinskia@gcc.gnu.org     2005-10-14 03:01:42

Modified files:
        gcc            : ChangeLog tree-dfa.c 

Log message:
        2005-10-13  Andrew Pinski  <pinskia@physics.uc.edu>

        PR tree-opt/21304
        * tree-dfa.c (add_referenced_var): Only look at decls which
        have TREE_CONSTANT or TREE_READONLY set instead of if
        !TREE_PUBLIC or !TREE_CONSTANT.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.10155&r2=2.10156
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-dfa.c.diff?cvsroot=gcc&r1=2.64&r2=2.65


-- 


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


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

* [Bug tree-optimization/21304] [4.0 regression] very long compile times with large cpp file from kdebindings
       [not found] <bug-21304-1216@http.gcc.gnu.org/bugzilla/>
                   ` (2 preceding siblings ...)
  2005-10-14  3:01 ` cvs-commit at gcc dot gnu dot org
@ 2005-10-14  3:02 ` pinskia at gcc dot gnu dot org
  2005-10-16  0:35 ` pinskia at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 7+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-10-14  3:02 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #17 from pinskia at gcc dot gnu dot org  2005-10-14 03:02 -------
Fixed on the mainline, if someone wants to back port the patch, that is fine
with me but I don't have time to do it.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|pinskia at gcc dot gnu dot  |unassigned at gcc dot gnu
                   |org                         |dot org
             Status|ASSIGNED                    |NEW
            Summary|[4.0/4.1 regression] very   |[4.0 regression] very long
                   |long compile times with     |compile times with large cpp
                   |large cpp file from         |file from kdebindings
                   |kdebindings                 |


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


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

* [Bug tree-optimization/21304] [4.0 regression] very long compile times with large cpp file from kdebindings
       [not found] <bug-21304-1216@http.gcc.gnu.org/bugzilla/>
                   ` (3 preceding siblings ...)
  2005-10-14  3:02 ` [Bug tree-optimization/21304] [4.0 " pinskia at gcc dot gnu dot org
@ 2005-10-16  0:35 ` pinskia at gcc dot gnu dot org
  2006-03-11  3:17 ` mmitchel at gcc dot gnu dot org
  2007-01-18  4:05 ` gdr at gcc dot gnu dot org
  6 siblings, 0 replies; 7+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-10-16  0:35 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #18 from pinskia at gcc dot gnu dot org  2005-10-16 00:35 -------
(In reply to comment #17)
Oh and you need also to backport:
2005-03-03  Jan Hubicka  <jh@suse.cz>

        * tree-dfa.c (add_referenced_var): Don't walk initializer of external
        and non-constant public variables.

http://gcc.gnu.org/ml/gcc-patches/2005-03/msg00209.html


-- 


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


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

* [Bug tree-optimization/21304] [4.0 regression] very long compile times with large cpp file from kdebindings
       [not found] <bug-21304-1216@http.gcc.gnu.org/bugzilla/>
                   ` (4 preceding siblings ...)
  2005-10-16  0:35 ` pinskia at gcc dot gnu dot org
@ 2006-03-11  3:17 ` mmitchel at gcc dot gnu dot org
  2007-01-18  4:05 ` gdr at gcc dot gnu dot org
  6 siblings, 0 replies; 7+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2006-03-11  3:17 UTC (permalink / raw)
  To: gcc-bugs



-- 

mmitchel at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.0.3                       |4.0.4


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


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

* [Bug tree-optimization/21304] [4.0 regression] very long compile times with large cpp file from kdebindings
       [not found] <bug-21304-1216@http.gcc.gnu.org/bugzilla/>
                   ` (5 preceding siblings ...)
  2006-03-11  3:17 ` mmitchel at gcc dot gnu dot org
@ 2007-01-18  4:05 ` gdr at gcc dot gnu dot org
  6 siblings, 0 replies; 7+ messages in thread
From: gdr at gcc dot gnu dot org @ 2007-01-18  4:05 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #19 from gdr at gcc dot gnu dot org  2007-01-18 04:05 -------
Fixed in GCC-4.1.1 and higher.
Won't fix in GCC-4.0.x


-- 

gdr at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED
   Target Milestone|4.0.4                       |4.1.1


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


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

end of thread, other threads:[~2007-01-18  4:05 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <bug-21304-1216@http.gcc.gnu.org/bugzilla/>
2005-10-12 16:12 ` [Bug tree-optimization/21304] [4.0/4.1 regression] very long compile times with large cpp file from kdebindings pinskia at gcc dot gnu dot org
2005-10-13  3:10 ` pinskia at gcc dot gnu dot org
2005-10-14  3:01 ` cvs-commit at gcc dot gnu dot org
2005-10-14  3:02 ` [Bug tree-optimization/21304] [4.0 " pinskia at gcc dot gnu dot org
2005-10-16  0:35 ` pinskia at gcc dot gnu dot org
2006-03-11  3:17 ` mmitchel at gcc dot gnu dot org
2007-01-18  4:05 ` gdr at gcc dot gnu dot org

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).