public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
From: Steven Bosscher <s.bosscher@student.tudelft.nl>
To: nobody@gcc.gnu.org
Cc: gcc-prs@gcc.gnu.org,
Subject: Re: optimization/6798: [3.2/3.3/3.4 regression] very long compile time with large case-statement
Date: Tue, 11 Mar 2003 20:56:00 -0000	[thread overview]
Message-ID: <20030311205600.2970.qmail@sources.redhat.com> (raw)

The following reply was made to PR optimization/6798; it has been noted by GNATS.

From: Steven Bosscher <s.bosscher@student.tudelft.nl>
To: gcc-gnats@gcc.gnu.org, gcc-bugs@gcc.gnu.org, nobody@gcc.gnu.org,
	gcc-prs@gcc.gnu.org, eggert@twinsun.com, reichelt@gcc.gnu.org
Cc:  
Subject: Re: optimization/6798: [3.2/3.3/3.4 regression] very long compile
 time with large case-statement
Date: Tue, 11 Mar 2003 21:47:22 +0100

 http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=6798
 
 Volker, you said you saw this on Linux?  I don't see this bug on 
 i586-linux,
 so I hope you can confirm this so we can close this PR, or else we 
 should try
 to find out if this is a target-specific problem.
 
 Greetz
 Steven
 
 
 # cc1 testcase.i
  yyparse
 Execution times (seconds)
  cfg construction      :   0.25 ( 5%) usr   0.08 (28%) sys   0.33 ( 6%) wall
  cfg cleanup           :   0.34 ( 6%) usr   0.00 ( 0%) sys   0.34 ( 6%) wall
  trivially dead code   :   0.02 ( 0%) usr   0.00 ( 0%) sys   0.02 ( 0%) wall
  life analysis         :   0.15 ( 3%) usr   0.00 ( 0%) sys   0.15 ( 3%) wall
  life info update      :   0.05 ( 1%) usr   0.00 ( 0%) sys   0.05 ( 1%) wall
  register scan         :   0.02 ( 0%) usr   0.00 ( 0%) sys   0.02 ( 0%) wall
  rebuild jump labels   :   0.03 ( 1%) usr   0.00 ( 0%) sys   0.03 ( 1%) wall
  preprocessing         :   0.04 ( 1%) usr   0.04 (14%) sys   0.08 ( 1%) wall
  lexical analysis      :   0.09 ( 2%) usr   0.04 (14%) sys   0.13 ( 2%) wall
  parser                :   0.44 ( 8%) usr   0.02 ( 7%) sys   0.46 ( 8%) wall
  expand                :   2.83 (51%) usr   0.02 ( 7%) sys   2.85 (49%) wall
  integration           :   0.04 ( 1%) usr   0.00 ( 0%) sys   0.04 ( 1%) wall
  jump                  :   0.02 ( 0%) usr   0.00 ( 0%) sys   0.02 ( 0%) wall
  flow analysis         :   0.03 ( 1%) usr   0.01 ( 3%) sys   0.04 ( 1%) wall
  local alloc           :   0.06 ( 1%) usr   0.00 ( 0%) sys   0.06 ( 1%) wall
  global alloc          :   0.51 ( 9%) usr   0.02 ( 7%) sys   0.53 ( 9%) wall
  flow 2                :   0.21 ( 4%) usr   0.05 (17%) sys   0.26 ( 4%) wall
  shorten branches      :   0.05 ( 1%) usr   0.00 ( 0%) sys   0.05 ( 1%) wall
  final                 :   0.13 ( 2%) usr   0.00 ( 0%) sys   0.13 ( 2%) wall
  rest of compilation   :   0.18 ( 3%) usr   0.00 ( 0%) sys   0.18 ( 3%) wall
  TOTAL                 :   5.52             0.29             5.81
 
 
 # cc1 -O testcase.i
  yyparse
 Execution times (seconds)
  cfg construction      :   0.36 ( 3%) usr   0.13 (41%) sys   0.49 ( 4%) wall
  cfg cleanup           :   0.57 ( 5%) usr   0.00 ( 0%) sys   0.57 ( 5%) wall
  trivially dead code   :   0.09 ( 1%) usr   0.00 ( 0%) sys   0.09 ( 1%) wall
  life analysis         :   0.55 ( 5%) usr   0.00 ( 0%) sys   0.55 ( 4%) wall
  life info update      :   0.17 ( 1%) usr   0.00 ( 0%) sys   0.17 ( 1%) wall
  alias analysis        :   0.11 ( 1%) usr   0.00 ( 0%) sys   0.11 ( 1%) wall
  register scan         :   0.05 ( 0%) usr   0.00 ( 0%) sys   0.05 ( 0%) wall
  rebuild jump labels   :   0.03 ( 0%) usr   0.00 ( 0%) sys   0.03 ( 0%) wall
  preprocessing         :   0.12 ( 1%) usr   0.01 ( 3%) sys   0.13 ( 1%) wall
  lexical analysis      :   0.14 ( 1%) usr   0.05 (16%) sys   0.19 ( 2%) wall
  parser                :   0.33 ( 3%) usr   0.02 ( 6%) sys   0.35 ( 3%) wall
  expand                :   2.78 (23%) usr   0.02 ( 6%) sys   2.80 (22%) wall
  integration           :   0.04 ( 0%) usr   0.01 ( 3%) sys   0.05 ( 0%) wall
  jump                  :   0.03 ( 0%) usr   0.00 ( 0%) sys   0.03 ( 0%) wall
  CSE                   :   0.17 ( 1%) usr   0.00 ( 0%) sys   0.18 ( 1%) wall
  loop analysis         :   0.02 ( 0%) usr   0.00 ( 0%) sys   0.04 ( 0%) wall
  branch prediction     :   2.90 (24%) usr   0.02 ( 6%) sys   2.96 (23%) wall
  flow analysis         :   0.05 ( 0%) usr   0.00 ( 0%) sys   0.05 ( 0%) wall
  combiner              :   0.16 ( 1%) usr   0.00 ( 0%) sys   0.16 ( 1%) wall
  if-conversion         :   0.92 ( 8%) usr   0.00 ( 0%) sys   0.92 ( 7%) wall
  local alloc           :   0.07 ( 1%) usr   0.00 ( 0%) sys   0.07 ( 1%) wall
  global alloc          :   0.39 ( 3%) usr   0.02 ( 6%) sys   0.41 ( 3%) wall
  reload CSE regs       :   0.20 ( 2%) usr   0.00 ( 0%) sys   0.20 ( 2%) wall
  flow 2                :   0.16 ( 1%) usr   0.02 ( 6%) sys   0.18 ( 1%) wall
  if-conversion 2       :   0.47 ( 4%) usr   0.00 ( 0%) sys   0.47 ( 4%) wall
  rename registers      :   0.91 ( 7%) usr   0.02 ( 6%) sys   0.95 ( 8%) wall
  shorten branches      :   0.07 ( 1%) usr   0.00 ( 0%) sys   0.07 ( 1%) wall
  final                 :   0.11 ( 1%) usr   0.00 ( 0%) sys   0.11 ( 1%) wall
  rest of compilation   :   0.20 ( 2%) usr   0.00 ( 0%) sys   0.20 ( 2%) wall
  TOTAL                 :  12.21             0.32            12.62
 
 
 # cc1 -O2 -march=i586 -v -version testcase.i
 ignoring nonexistent directory "/opt/experimental/include"
 ignoring nonexistent directory 
 "/opt/experimental/lib/gcc-lib/i586-pc-linux-gnu/3.4/include"
 ignoring nonexistent directory "/opt/experimental/i586-pc-linux-gnu/include"
 #include "..." search starts here:
 #include <...> search starts here:
  /usr/local/include
  /usr/include
 End of search list.
 GNU C version 3.4 20030311 (experimental) (i586-pc-linux-gnu)
     compiled by GNU C version 2.95.3 20010315 (SuSE).
 GGC heuristics: --param ggc-min-expand=42 --param ggc-min-heapsize=23891
 options passed:  -O2 -march=i586 -v
 options enabled:  -feliminate-unused-debug-types -fdefer-pop
  -foptimize-sibling-calls -fcse-follow-jumps -fcse-skip-blocks
  -fexpensive-optimizations -fthread-jumps -fstrength-reduce -fpeephole
  -fforce-mem -ffunction-cse -fkeep-static-consts -fcaller-saves
  -fpcc-struct-return -fgcse -fgcse-lm -fgcse-sm -floop-optimize
  -fcrossjumping -fif-conversion -fif-conversion2 -frerun-cse-after-loop
  -frerun-loop-opt -fdelete-null-pointer-checks -fschedule-insns2
  -fsched-interblock -fsched-spec -fbranch-count-reg -freorder-blocks
  -freorder-functions -fcprop-registers -fcommon -fgnu-linker -fregmove
  -foptimize-register-move -fargument-alias -fstrict-aliasing
  -fmerge-constants -fzero-initialized-in-bss -fident -fpeephole2
  -fguess-branch-probability -fmath-errno -ftrapping-math -m80387
  -mhard-float -mno-soft-float -mieee-fp -mfp-ret-in-387 -mtune=i586
  -march=i586
  yyparse
 Execution times (seconds)
  cfg construction      :   0.45 ( 2%) usr   0.09 (17%) sys   0.54 ( 2%) wall
  cfg cleanup           :   0.78 ( 4%) usr   0.01 ( 2%) sys   0.79 ( 4%) wall
  trivially dead code   :   0.21 ( 1%) usr   0.00 ( 0%) sys   0.21 ( 1%) wall
  life analysis         :   0.60 ( 3%) usr   0.00 ( 0%) sys   0.60 ( 3%) wall
  life info update      :   0.35 ( 2%) usr   0.00 ( 0%) sys   0.35 ( 2%) wall
  alias analysis        :   0.31 ( 1%) usr   0.00 ( 0%) sys   0.31 ( 1%) wall
  register scan         :   0.10 ( 0%) usr   0.00 ( 0%) sys   0.10 ( 0%) wall
  rebuild jump labels   :   0.07 ( 0%) usr   0.00 ( 0%) sys   0.07 ( 0%) wall
  preprocessing         :   0.04 ( 0%) usr   0.02 ( 4%) sys   0.06 ( 0%) wall
  lexical analysis      :   0.14 ( 1%) usr   0.04 ( 8%) sys   0.18 ( 1%) wall
  parser                :   0.39 ( 2%) usr   0.03 ( 6%) sys   0.42 ( 2%) wall
  expand                :   2.80 (13%) usr   0.05 (10%) sys   2.85 (13%) wall
  integration           :   0.03 ( 0%) usr   0.02 ( 4%) sys   0.05 ( 0%) wall
  jump                  :   0.30 ( 1%) usr   0.05 (10%) sys   0.35 ( 2%) wall
  CSE                   :   0.45 ( 2%) usr   0.00 ( 0%) sys   0.45 ( 2%) wall
  global CSE            :   2.44 (12%) usr   0.08 (15%) sys   2.52 (12%) wall
  loop analysis         :   0.07 ( 0%) usr   0.00 ( 0%) sys   0.07 ( 0%) wall
  bypass jumps          :   1.09 ( 5%) usr   0.02 ( 4%) sys   1.11 ( 5%) wall
  CSE 2                 :   0.15 ( 1%) usr   0.00 ( 0%) sys   0.15 ( 1%) wall
  branch prediction     :   2.91 (14%) usr   0.02 ( 4%) sys   2.93 (14%) wall
  flow analysis         :   0.03 ( 0%) usr   0.00 ( 0%) sys   0.03 ( 0%) wall
  combiner              :   0.27 ( 1%) usr   0.00 ( 0%) sys   0.27 ( 1%) wall
  if-conversion         :   0.96 ( 5%) usr   0.00 ( 0%) sys   0.96 ( 4%) wall
  regmove               :   0.06 ( 0%) usr   0.00 ( 0%) sys   0.06 ( 0%) wall
  local alloc           :   0.11 ( 1%) usr   0.00 ( 0%) sys   0.11 ( 1%) wall
  global alloc          :   0.30 ( 1%) usr   0.02 ( 4%) sys   0.32 ( 1%) wall
  reload CSE regs       :   0.42 ( 2%) usr   0.00 ( 0%) sys   0.42 ( 2%) wall
  flow 2                :   0.16 ( 1%) usr   0.02 ( 4%) sys   0.18 ( 1%) wall
  if-conversion 2       :   0.55 ( 3%) usr   0.00 ( 0%) sys   0.55 ( 3%) wall
  peephole 2            :   0.05 ( 0%) usr   0.00 ( 0%) sys   0.05 ( 0%) wall
  rename registers      :   0.94 ( 4%) usr   0.03 ( 6%) sys   0.97 ( 4%) wall
  scheduling 2          :   2.69 (13%) usr   0.01 ( 2%) sys   2.75 (13%) wall
  reorder blocks        :   0.35 ( 2%) usr   0.00 ( 0%) sys   0.35 ( 2%) wall
  shorten branches      :   0.07 ( 0%) usr   0.00 ( 0%) sys   0.07 ( 0%) wall
  final                 :   0.12 ( 1%) usr   0.00 ( 0%) sys   0.12 ( 1%) wall
  rest of compilation   :   0.24 ( 1%) usr   0.00 ( 0%) sys   0.24 ( 1%) wall
  TOTAL                 :  21.03             0.52            21.60
 
 


             reply	other threads:[~2003-03-11 20:56 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-03-11 20:56 Steven Bosscher [this message]
  -- strict thread matches above, loose matches on Subject: below --
2003-03-12 14:46 Wolfgang Bangerth
2003-03-12 12:16 Volker Reichelt
2003-02-19 13:16 Steven Bosscher
2003-01-15 16:27 bangerth

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20030311205600.2970.qmail@sources.redhat.com \
    --to=s.bosscher@student.tudelft.nl \
    --cc=gcc-prs@gcc.gnu.org \
    --cc=nobody@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).