> On Thu, Aug 2, 2012 at 3:23 AM, Jan Hubicka <hubi...@ucw.cz> wrote: > >> > >> This patch works passed profiledbootstrap with LTO as well as LTO -O3 > >> on 176.gcc in SPEC CPU 2000. I have to add 2 inline_edge_summary_vec > >> checks to avoid ICE. OK to install? > > > > Thanks, it looks good. I am just concerned about... > >> diff --git a/gcc/ipa-split.c b/gcc/ipa-split.c > >> index 33cf7d2..7a8844f 100644 > >> --- a/gcc/ipa-split.c > >> +++ b/gcc/ipa-split.c > >> @@ -1415,7 +1415,7 @@ execute_split_functions (void) > >> } > >> /* This can be relaxed; function might become inlinable after splitting > >> away the uninlinable part. */ > >> - if (!inline_summary (node)->inlinable) > >> + if (inline_edge_summary_vec && !inline_summary (node)->inlinable) > > > > .. this one. spliting is executed before free_inline_summary and thus should > > not be affected. Or is it because of it gets called from > > process_new_functions > > because some IPA pass adds a new function? > > It is called from pass_feedback_split_functions: > > NEXT_PASS (pass_all_early_optimizations); > { > ... > } > NEXT_PASS (pass_ipa_free_inline_summary); > NEXT_PASS (pass_ipa_tree_profile); > { > struct opt_pass **p = &pass_ipa_tree_profile.pass.sub; > NEXT_PASS (pass_feedback_split_functions); > } > > OK to install?
Hmm, this is an ordering issue, but minnor one. OK. As comment says, this should be relaxed anyway and in fact I have path for that in queue. Honza > > Thanks. > > -- > H.J.