[c++/cgraph] use cgraph in expand_or_defer_fn

Jan Hubicka hubicka@ucw.cz
Wed Sep 10 23:26:00 GMT 2003


> [ Sorry this accidentially got committed with the previous patch,
>   but I had meant to commit it next anyway, so no harm done.  ]
> 
> One other effect of not calling cgraph_finalize_function all 
> the time is that the cgraph code doesn't have visibility into
> the function at all.  If we are to let cgraph handle more of
> the compilation process, we mustn't double queue.
> 
> I have a cleanup to global constructor/destructor maintainence
> that is blocked on cgraph not being able to trigger function
> emission when necessary.
> 
> There are two final callers to defer_fn; I think they can be
> substituted for cgraph_finalize_function as well, but I was
> timid and wanted to try these one at a time.
> 
> This part, anyway, caused no regressions on i686-linux.
Interesting,
I have essentially the same patch in my tree now I wanted to send for
review, but I did run into problems with explicit instantiations where
declaration is changed from DECL_EXTERNAL to not DECL_EXTERNAL after
calling cgraph_finalize.  Did you solved this problem somehow?

Thanks for for the work!  It was my TODO for a while (together with
avoiding the walk in lower_function now when it don't deal with other
stuff it did originally)

Honza



More information about the Gcc-patches mailing list