This is the mail archive of the 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: incremental compiler project

On Fri, 2015-09-04 at 09:44 -0600, Jeff Law wrote:
> On 09/04/2015 09:40 AM, David Kunsman wrote:
> > what do you think about the sub project in the wiki:
> >
> > Parallel Compilation:
> >
> > One approach is to make the front end multi-threaded. (I've pretty
> > much abandoned this idea. There are too many mutable tree fields,
> > making this a difficult project. Also, threads do not interact well
> > with fork, which is currently needed by the code generation approach.)
> You should get in contact with David Malcolm as these issues are 
> directly related to his JIT work.
> >
> > This will entail removing most global variables, marking some with
> > __thread, and wrapping a few with locks.
> Yes, but that's work that is already in progress.  Right now David's got 
> a big log and context switch in place, but we really want to drive down 
> the amount of stuff in that context switch.

FWIW, grep for "ACQUIRE MUTEX" and "RELEASE MUTEX" within:

I probably should better document what state is guarded by jit_mutex:
basically it's anything within libbackend.a, including anything that
interacts with GTY/ggc.  (in fact, it's basically every source file,
apart from libgccjit.c, jit-recording.c, and parts of jit-playback.c).

You may or may not want to read this doc I wrote in 2013:
(Re-reading it now, it's very out-of-date and I no longer agree with
much of what I wrote in that doc, so I don't know if it's useful).

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