aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJan Hubicka <hubicka@ucw.cz>2015-03-30 04:00:56 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2015-03-30 02:00:56 +0000
commit12daa22a2c4e3a9c1eba6740bdc2b67d7b7b181e (patch)
treeb71592d67f2276e6b2cf7ca12205eb18c7ae283a /gcc
parentb9b5584df68c58628ab6d0e386bbcd66d47049d4 (diff)
downloadgcc-12daa22a2c4e3a9c1eba6740bdc2b67d7b7b181e.zip
gcc-12daa22a2c4e3a9c1eba6740bdc2b67d7b7b181e.tar.gz
gcc-12daa22a2c4e3a9c1eba6740bdc2b67d7b7b181e.tar.bz2
re PR ipa/65076 (16% tramp3d-v4.cpp compile time regression)
PR ipa/65076 * ipa-inline.c (edge_badness): Base denominator on callee's grwoth squared. From-SVN: r221769
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/ipa-inline.c2
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 9baf88b..e3d2a3d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2015-03-27 Jan Hubicka <hubicka@ucw.cz>
+
+ PR ipa/65076
+ * ipa-inline.c (edge_badness): Base denominator on callee's
+ grwoth squared.
+
2015-03-27 Martin Jambor <mjambor@suse.cz>
PR ipa/65478
diff --git a/gcc/ipa-inline.c b/gcc/ipa-inline.c
index 24b25a0..bc32846 100644
--- a/gcc/ipa-inline.c
+++ b/gcc/ipa-inline.c
@@ -1099,7 +1099,7 @@ edge_badness (struct cgraph_edge *edge, bool dump)
numerator = numerator >> 11;
denominator = growth;
if (callee_info->growth > 0)
- denominator *= callee_info->growth;
+ denominator *= callee_info->growth * callee_info->growth;
badness = - numerator / denominator;