From: hubicka Date: Mon, 23 Nov 2009 22:27:15 +0000 (+0000) Subject: PR middle-end/42151 X-Git-Tag: upstream/4.9.2~32448 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=2511f7808247c921b32ff73dbf82527b77f92215;p=platform%2Fupstream%2Flinaro-gcc.git PR middle-end/42151 * ipa-inline.c (inline_transform): Avoid ICE when transform is called twice. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154475 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b8378a5..791dbe1 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,11 @@ 2009-11-23 Jan Hubicka + PR middle-end/42151 + * ipa-inline.c (inline_transform): Avoid ICE when transform is called + twice. + +2009-11-23 Jan Hubicka + * ipa-cp.c (ipcp_compute_node_scale): Work around completely wrong profile updates. * predict.c (counts_to_freqs): Be expected for ENTRY/EXIT block diff --git a/gcc/ipa-inline.c b/gcc/ipa-inline.c index 786c21c..495d885 100644 --- a/gcc/ipa-inline.c +++ b/gcc/ipa-inline.c @@ -1974,6 +1974,11 @@ inline_transform (struct cgraph_node *node) unsigned int todo = 0; struct cgraph_edge *e; + /* FIXME: Currently the passmanager is adding inline transform more than once to some + clones. This needs revisiting after WPA cleanups. */ + if (cfun->after_inlining) + return 0; + /* We might need the body of this function so that we can expand it inline somewhere else. */ if (cgraph_preserve_function_body_p (node->decl))