diff options
author | Jan Hubicka <jh@suse.cz> | 2012-10-26 16:52:09 +0000 |
---|---|---|
committer | Jan Hubicka <jh@suse.cz> | 2012-10-26 16:52:09 +0000 |
commit | a6cb24e5f86f8daab772fc17d5a6fad1f86e9483 (patch) | |
tree | 3a02e966b5ef2c5d9bd213a651918598ffc7e8bd | |
parent | b40da7e629c790a1f843b633f600da5ecc951208 (diff) |
* ipa-inline-transform.c (inline_call): Only account size changes
for !DECL_EXTERNAL.
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@192849 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/ipa-inline-transform.c | 5 |
2 files changed, 9 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fcd9f5c6fdc..768f530609c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2012-10-26 Jan Hubicka <jh@suse.cz> + + * ipa-inline-transform.c (inline_call): Only account size changes + for !DECL_EXTERNAL. + 2012-10-26 Martin Jambor <mjambor@suse.cz> PR debug/54971 diff --git a/gcc/ipa-inline-transform.c b/gcc/ipa-inline-transform.c index 60a29628aee..7bb291c7d64 100644 --- a/gcc/ipa-inline-transform.c +++ b/gcc/ipa-inline-transform.c @@ -269,7 +269,10 @@ inline_call (struct cgraph_edge *e, bool update_original, || predicated); #endif - if (overall_size) + /* Account the change of overall unit size; external functions will be + removed and are thus not accounted. */ + if (overall_size + && !DECL_EXTERNAL (to->symbol.decl)) *overall_size += new_size - old_size; ncalls_inlined++; |