Honza, I continue to receive an ICE:
/farm/dje/src/src/libstdc++-v3/include/precompiled/stdc++.h:94:0: /tmp/20110427/powerpc-ibm-aix5.3.0.0/libstdc++-v3/include/valarray:1163:1: internal compiler error: vector VEC(tree,base) index domain error, in evaluate_conditions_for_edge at ipa-inline-analysis.c:537 I was able to bootstrap with GCC just prior to your patch on Friday. - David On Wed, Apr 27, 2011 at 10:44 AM, Jan Hubicka <hubi...@ucw.cz> wrote: >> >> This may have caused: >> >> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48791 > > Oops, yes, it is mine. The insertion hook at expansion time is incorrectly > called > after function is expanded, not before. > ipa-prop should deregister itself earlier, but that can be done incrementally. > I am testing the following and will commit if testing succeeds. > > Index: cgraphunit.c > =================================================================== > --- cgraphunit.c (revision 173025) > +++ cgraphunit.c (working copy) > @@ -233,6 +233,7 @@ cgraph_process_new_functions (void) > cgraph_finalize_function (fndecl, false); > cgraph_mark_reachable_node (node); > output = true; > + cgraph_call_function_insertion_hooks (node); > break; > > case CGRAPH_STATE_IPA: > @@ -258,12 +259,14 @@ cgraph_process_new_functions (void) > free_dominance_info (CDI_DOMINATORS); > pop_cfun (); > current_function_decl = NULL; > + cgraph_call_function_insertion_hooks (node); > break; > > case CGRAPH_STATE_EXPANSION: > /* Functions created during expansion shall be compiled > directly. */ > node->process = 0; > + cgraph_call_function_insertion_hooks (node); > cgraph_expand_function (node); > break; > > @@ -271,7 +274,6 @@ cgraph_process_new_functions (void) > gcc_unreachable (); > break; > } > - cgraph_call_function_insertion_hooks (node); > varpool_analyze_pending_decls (); > } > return output; >