This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [lto] PATCH: fill in code to merge declarations


Sandra Loosemore wrote:
> Here I've cleaned up the code for merging VAR_DECLs and implemented
> the rules for comparing whether two types are the same, as well as
> filling in the FUNCTION_DECL merge function to do something useful.
>
> I haven't figured out how to test this yet -- when I try to run more
> than one file through the driver with -x lto -c, it seems to want to
> compile them separately instead of merging them.  Do I need some other
> switch, or has this not been implemented yet?
>
> -Sandra
>
>
> ------------------------------------------------------------------------
>
>   
Sandra,

You are a few days ahead of me.  If I was where you were I would be
asking the same set of questions.  I have just started playing on the
lto side and have not figured out how to call it yet or in fact do
anything. 

What it should be doing is reading all of the *.o files and doing the
merge before it starts down the path with the pass manager.  Mark's plan
was the lto.c was going to behave like a gcc front end and do it's
merging on all of the *.o it was given so that when the you got to the
logical point where the front end was finished, you fooled the back end
into believing that it had only seen ONE BIG FILE.    However, it will
need to be starting the   pass stack right after the pass named
pass_ipa_lto_out so that it starts exactly where the lto was dumped out
rather than calling some gimplifier as the rest of the front ends do. 
Mark and I never discussed this detail, most likely because we never
thought of it, and so this is likely to mean that there is a bad answer
here.

I have not looked at lto.c to see how much of this is vapor or what
still needs to be hacked.  My guess is that it may still be vapor.  I am
at the point where I just got the lto reader to compile and plan to
spend this weekend debugging it so that it gets out what it put in on
the gcc side. 

If you have not figured this out by next week, I will dive in and help
you.  But as it is, once this gets working, everyone will immediately be
waiting on me so I need to focus getting real gimple pumped out. 

I am sorry I do not have any good news here. 

Kenny


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]