http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55102



--- Comment #4 from rguenther at suse dot de <rguenther at suse dot de> 
2013-03-27 13:09:18 UTC ---

On Wed, 27 Mar 2013, hubicka at gcc dot gnu.org wrote:



> 

> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55102

> 

> --- Comment #3 from Jan Hubicka <hubicka at gcc dot gnu.org> 2013-03-27 
> 12:47:04 UTC ---

> Doing IPA analysis at -O0 for LTO streaming won't really solve the fact that

> functions are not early optimized.  I would vote for at least issuing a waning

> when LTOing -O0 objects into -On, n>=1 LTO binary or simply declaring -O0 to 
> be

> non-LTO only.

> 

> But indeed, we probably should make analysis/summary streaming of all IPA

> passes so -fno-ipa-cp and such works as expected all the time.  I have patch

> fot that somewhere already.

> 

> We probably should lean the route of streaming the options used and honoring

> them rather than taking whatever is passed to linker...



Well, we _do_ stream them.  The issue is that we need to formally

define how to merge N sets of options from the N input files

at WPA stage to M sets of options for the M LTRANS units

(with eventually, but not necessarily, M == 1).



Oh, and implement it, of course.



At the moment the LTO driver (lto-wrapper.c) has a brief look at

options because it creates options for the WPA stage (which

shouldn't really care about the options passed ... in which

case it could do the option processing from the TUs and eventually

simply partition them into sets of TUs that have the same options).



So - Honza, what about first making WPA "ignore" all flags?

(all optimization and target flags)  IPA pass processing should

just unconditionally run and handle inputs which have the IPA

sections present.

Reply via email to