aboutsummaryrefslogtreecommitdiff
path: root/gcc/ipa-inline-transform.c
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2012-10-26 18:52:09 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2012-10-26 16:52:09 +0000
commit8256d5ca7870ab4aa5f74b9cb9183393b1024d0b (patch)
tree3a02e966b5ef2c5d9bd213a651918598ffc7e8bd /gcc/ipa-inline-transform.c
parentbe384c108068d1adfa0ee38aee0052e24ad0ca30 (diff)
downloadgcc-8256d5ca7870ab4aa5f74b9cb9183393b1024d0b.zip
gcc-8256d5ca7870ab4aa5f74b9cb9183393b1024d0b.tar.gz
gcc-8256d5ca7870ab4aa5f74b9cb9183393b1024d0b.tar.bz2
ipa-inline-transform.c (inline_call): Only account size changes for !DECL_EXTERNAL.
* ipa-inline-transform.c (inline_call): Only account size changes for !DECL_EXTERNAL. From-SVN: r192849
Diffstat (limited to 'gcc/ipa-inline-transform.c')
-rw-r--r--gcc/ipa-inline-transform.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/ipa-inline-transform.c b/gcc/ipa-inline-transform.c
index 60a2962..7bb291c 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++;