public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "hubicka at gcc dot gnu dot org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug middle-end/38074] [4.4 Regression] missed inlining on Core2 Duo due  to apparent wrong branch prediction/profile
Date: Fri, 05 Dec 2008 17:09:00 -0000	[thread overview]
Message-ID: <20081205170811.25439.qmail@sourceware.org> (raw)
In-Reply-To: <bug-38074-12313@http.gcc.gnu.org/bugzilla/>



------- Comment #10 from hubicka at gcc dot gnu dot org  2008-12-05 17:08 -------
compute_call_stmt_bb_frequency test is indeed bit insane, but probably works in
practice.  I will fix this on pretty-ipa branch.
Looking at sw(__MAIN) just after profiling, profile is there and it is sort of
sane.

The reason for low probability of the internal loop being somewhat cold is
block
31 that is predicted via noreturn heuristics.
It looks like the code is leading to exit at error cases and to noreturn call
in common case that is confusing the predictors...

Block 31 starts with:
omega_178 = 6.28318530700000010824624041561037302017211914062e+0 /
period.151_177
v0 ={v} 1.0000000000000000555111512312
5782702118158340454e-1
dt_parm.51.common.filename ={v} &"channel.f90"[1]{lb: 1 sz: 1};

Perhaps if all paths through function leads to noreturn, one can disable the
heuristics... I will check if this works.

Honza


-- 


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


  parent reply	other threads:[~2008-12-05 17:09 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-11-10 20:30 [Bug middle-end/38074] New: [4.4 Regression] missed inlining since IRA merge on Core2 Duo dominiq at lps dot ens dot fr
2008-11-11 20:22 ` [Bug middle-end/38074] " rguenth at gcc dot gnu dot org
2008-11-11 20:39 ` dominiq at lps dot ens dot fr
2008-11-11 21:20 ` jakub at gcc dot gnu dot org
2008-11-25 16:35 ` rguenth at gcc dot gnu dot org
2008-11-28 11:08 ` jakub at gcc dot gnu dot org
2008-11-28 11:21 ` rguenth at gcc dot gnu dot org
2008-11-28 11:47 ` jakub at gcc dot gnu dot org
2008-11-28 12:57 ` jakub at gcc dot gnu dot org
2008-12-05 12:46 ` [Bug middle-end/38074] [4.4 Regression] missed inlining on Core2 Duo due to apparent wrong branch prediction/profile rguenth at gcc dot gnu dot org
2008-12-05 13:00 ` hubicka at ucw dot cz
2008-12-05 17:09 ` hubicka at gcc dot gnu dot org [this message]
2008-12-05 17:17 ` hubicka at ucw dot cz
2008-12-06  8:37 ` hubicka at gcc dot gnu dot org
2008-12-06  9:05 ` jakub at gcc dot gnu dot org

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=20081205170811.25439.qmail@sourceware.org \
    --to=gcc-bugzilla@gcc.gnu.org \
    --cc=gcc-bugs@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).