This is the mail archive of the gcc@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: First cut on outputing gimple for LTO using DWARF3. Discussion invited!!!!


Mark Mitchell wrote:
> Kenneth Zadeck wrote:
>
>> I am not so concerned with running out of virtual address space than I
>> am about being able to break this up so that it can be done in parallel,
>> on a farm of machines.  Otherwise, lto can never be part of anyone's
>> compile/test loop. 
>
> I think we just expanded the scope of work by an order of magnitude. :-)
>
> If you had just said that you wanted to support multi-threaded LTO,
> that would have been a big deal.  But multiple machines with multiple
> address spaces trying to do LTO on one program is a really big deal. 
> (Of course, there is a "cheap hack" way of doing what you want: run
> LTO on clumps of object files in parallel, and then just link the
> pre-optimized files together in the ordinary way.)
>
> I'd really like to see us inline a function before we even begin to
> have this conversation. :-)
I have no intention in expanding the scope of the work.  I just am not
going to do anything that precludes doing this.  As long as the function
bodies are in a form that can be easily accessed without reading and
processing the entire file, I am fine. 


>
>> I have no idea how "stable" all the types and decls are over a
>> compilation.  I write my info pretty early, and I assume the types and
>> decls are written pretty late in the compilation (otherwise you would
>> not have address expressions for the debugger).  If there has been any
>> "processing" on these between when I write my stuff and when the types
>> and decls get written, things may not match up. 
>
> I don't think that this is an issue.  The important information about
> types and declaration is stable.  Things like "is this declaration
> used?" change over the course of the compilation, but that's not
> useful for DWARF anyhow -- and, in general, we don't write out
> information about types/declarations that are entirely unused.  The
> key aspects (sizes/layouts/etc.) are fixed.
>
You are either right, or we will fix it.  Those are the only two
options.  My only point was that there is a lot of compiler in between
where someone could have done something silly.



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